题目:输入一行字符,分别统计出其中英文字母、空格、数字和其它字符的个数。
1.程序分析:
利用 while 语句,条件为输入的字符不为'\n'.
2.程序源代码:
#include<stdio.h>
int main()
{
char c;
int letters=0,space=0,digit,others=0;
printf("please input some characters\n");
while((c=getchar())!='\n')
{
if(c>='a'&&c<='z'||c>='A'&&c<='Z')
letters++;
else if(c==' ')
space++;
else if(c>='0'&&c<='9')
digit++;
else
others++;
}
printf("all in all:char=%d space=%d digit=%d others=%d\n",letters, space,digit,others);
}
3.代码及编译结果截图:
4.知识点:
char定义字符型,字符必须在' '之中,例如:'A' 'a'
&&是与;||是或;!是非;先后级排列是!>&&>||
getchar()的作用是从键盘上读入一个字符,并带回显。getchar()函数等待输入直到按回车才结束,回车前的所有输入字符都会逐个显示在屏幕上,但只有第一个字符作为函数的返回值。
while(表达式)
{
循环语句体;
}
说明:①while循环的表达式是循环进行的条件,用作循环条件的表达式中一般至少包括一个能够改变表达式的变量,这个变量称为循环变量
②当表达式的值为真(非零)时,执行循环体;为假(0)时,则循环结束
③当循环体不需要实现任何功能时,可以用空语句作为循环体
④对于循环变量的初始化应在while语句之前进行,可以通过适当方式给循环变量赋初值
注:此文章用于个人学习,若有侵权请联系删除。