谁帮帮忙啊,,,用while语句做一个题目。。。
输入一行字符,然后输出字符中空格,数字,字母,其他的个数
[此贴子已经被作者于2006-11-7 17:42:01编辑过]
#include<stdio.h>
main()
{
int i=0,j=0,l=0,k=0,m=0;
char c[100];
gets(c);
while(c[m]!=0)
{
if('a'<=c[m]&&c[m]<='z'||'A'<=c[m]&&c[m]<='Z')
i++;
else
if('0'<=c[m]&&c[m]<='9')
j++;
else
if(c[m]==' ')
l++;
else
k++;
m++;
}
printf("字母:%d 数字:%d 空格:%d 其它:%d",i,j,l,k);
getch();
return 0;
}
#include<stdio.h> /* stdio.h标准输出输入,这个可以调用函数printf,gets等等*/
main() /*为主函数*/
{
int i=0,j=0,l=0,k=0,m=0;/*各个变量赋值为0,目的统计个数*/
char c[100]; /*定义字符数组,定义前一定是常量,分配C100个空间*/
gets(c); /*输入字符串,按回车结束*/
while(c[m]!=0) /*开始的时候为c[0],数组下标从0开始*/
{
if('a'<=c[m]&&c[m]<='z'||'A'<=c[m]&&c[m]<='Z') /*注意if else搭配和什么时候用{},当两个以上语句就用{},一条语句不需要,如果你是初学者加也不防,本人支持*/
i++;
else
if('0'<=c[m]&&c[m]<='9') /*if()里如果为真,执行if所含语句,否则执行else所含语句*/
j++; /* 用于变量,先使用,后+1*/
else
if(c[m]==' ')
l++;
else
k++;
m++;
}
printf("字母:%d 数字:%d 空格:%d 其它:%d",i,j,l,k);
getch();
return 0;
}
上述有不正确之处,请指正.