L1-058改变句子

张开发
2026/4/20 8:26:29 15 分钟阅读

分享文章

L1-058改变句子
#includestdio.h #includestring.h int main() { char s[1000]; fgets(s,sizeof(s),stdin); int lenstrlen(s); //注意要去掉fgets读取的换行符 if(len0s[len-1]\n) { s[len-1]\0; len--; } int i0,count0; while(ilen) { if(s[i]6)//判断有多个6的字符串的情况 { while(s[i]6ilen) { count; i; } //注意要先判断是不是大于九再判断是不是大于4否则27会变成9 if(count9) printf(27); else if(count4) printf(9); else//count的其他情况 { for(int j0;jcount;j) { printf(6); } } } else//非‘6’的情况,就正常输出 { printf(%c,s[i]); i; } } printf(\n); return 0; }【题目L1-058——改变句子】输入原句但输出时“改变”这句话---key从键盘输入存储再用printf达到“改变”输出的效果如it is so 666 really 6666 what else can I say 6666666666输出it is so 666 really 9 what else can I say 27[常见问题]1、直接 读入/读取 一句话/整行输入包含空格——fgets(字符数组名sizeof(字符数组名)stdin)char s[1001]; // 读取整行输入包含空格 fgets(s, sizeof(s), stdin); int len strlen(s);2、不是修改原数组是 “重新输出”跳过原来的 6输出新内容。这就是字符串处理最常用的技巧遍历 条件输出。stdin→ 代表从键盘读取或者文件指针 → 代表从文件读现在是从键盘输入一行字符串所以必须写stdin。3、为什么要用fgets不用scanfscanf(%s)遇到空格就停输入it is soscanf只能读到it后面全丢了fgets能读一整行包括空格

更多文章