复制
收藏
提问
简洁
#include <stdio.h> int main (void) { char ch, str[100]; int j=0; while(1) { ch=getcher(); if(ch=='\n') { break; } if(ch!=' ') { str[j++]=ch; } } printf("%s\n",str); return 0; }
2个月前
全网
文档
学术
百科
知识库
回答简洁模式
深入研究一些
这段代码的功能是读取用户输入的字符,直到用户按下回车键为止,并将输入的字符(不包括空格)存储到字符串数组str
中,然后输出这个字符串。1457910
下面是对代码的逐行解释:
#include <stdio.h>
:包含标准输入输出库的头文件。int main (void)
:定义主函数,不需要参数。char ch, str[100];
:定义字符变量ch
和字符数组str
,str
的大小为100,用于存储输入的字符。int j=0;
:定义整数变量j
,用作字符数组str
的索引。while(1)
:开始一个无限循环。ch=getcher();
:这里应该是ch=getchar();
,从标准输入读取一个字符到变量ch
。13456if(ch=='\n')
:如果读取的字符是换行符(即用户按下回车键),则执行下一条语句。{ break; }
:跳出循环,结束输入。if(ch!=' ')
:如果读取的字符不是空格,执行下一条语句。{ str[j++]=ch; }
:将读取的字符存储到str
数组中,并将索引j
加1。printf("%s\n",str);
:输出存储在str
数组中的字符串,后面跟一个换行符。return 0;
:程序正常结束。
你觉得结果怎么样?