输入一行字符(假定字符数不超过100),分别统计出其中字母'M',空格、数字9所出现的次数。(C语言)
代码文本:
#include "stdio.h"
int main(int argc,char *argv[]){
char a[101],sp,d9,lm,n;
printf("Enter a string...\n");
for(sp=d9=lm=n=0;n<100;n++){
if((a[n]=getchar())=='\n'){
a[n]='\0';
break;
}
lm+=a[n]=='M';
d9+=a[n]=='9';
sp+=a[n]==' ';
}
printf("M:\t%d\n9:\t%d\nspace:\t%d\n",lm,d9,sp);
return 0;
}
温馨提示:答案为网友推荐,仅供参考
第1个回答 2019-12-19
这样的程序是非常简单的。
因为程序中规定了要先输入一行字符。所以可以采用字符数组。再加上一个循环,遍历字符串中每一字符,统计出其中字母'M',空格、数字9所出现的次数。
调试好的程序源代码如下:
#include<stdio.h>
int main()
{char s[105];
int i,a,b,c;
gets(s);
for(i=0;s[i]!='\0';i++)
if(s[i]=='M')a++;
else if(s[i]==' ')b++;
else if(s[i]=='9')c++;
printf("M:%d\n空格:%d\n9:%d\n",a,b,c);
}本回答被网友采纳
因为程序中规定了要先输入一行字符。所以可以采用字符数组。再加上一个循环,遍历字符串中每一字符,统计出其中字母'M',空格、数字9所出现的次数。
调试好的程序源代码如下:
#include<stdio.h>
int main()
{char s[105];
int i,a,b,c;
gets(s);
for(i=0;s[i]!='\0';i++)
if(s[i]=='M')a++;
else if(s[i]==' ')b++;
else if(s[i]=='9')c++;
printf("M:%d\n空格:%d\n9:%d\n",a,b,c);
}本回答被网友采纳