第八周编程题相关:
题目内容:
从键盘读取用户输入直到遇到#字符,编写程序统计读取的空格数目、读取的换行符数目以及读取的所有其他字符数目。(要求用getchar()输入字符)
程序运行结果示例1:
Please input a string end by #:
abc def↙
jklm op↙
zkm #↙
space: 3,newline: 2,others: 15
程序运行结果示例2:
Please input a string end by #:
hello friend!#↙
space: 1,newline: 0,others: 12
输入提示信息:"Please input a string end by #:\n"
输入格式: getchar()
输出格式: "space: %d,newline: %d,others: %d\n"
注意:为避免出现格式错误,请直接拷贝粘贴上面给出的输入、输出提示信息和格式控制字符串!
#include<stdio.h>
int main()
{
int others=0, space=0, newline=0;
printf("Please input a string end by #:\n");
do
{
if ((getchar() != ' ')&& (getchar() != '\n'))
others++;
else if (getchar() == '\n')
newline++;
else
space++;
}while(getchar() != '#');
printf("space: %d,newline: %d,others: %d\n",space, newline, others);
return 0;
}
(2)修改后:不能在if语句里再插getchar()。关于理由:...
#include<stdio.h>
int main()
{
int others=0, space=0, newline=0;
char ch;
printf("Please input a string end by #:\n");
while((ch = getchar()) != '#')
{
if (ch != ' '&& ch != '\n')
others++;
else if (ch != ' ')
newline++;
else
space++;
}
printf("space: %d,newline: %d,others: %d\n",space, newline, others);
return 0;
}