大佬求教c语言
编写函数,使其能统计主调函数通过实参传过来的字符串,对其中的字母、数字、空格分别计数。(要求在count函数中输入字符串及输出统计结果)(参考函数原型:voidcount...
编写函数,使其能统计主调函数通过实参传过来的字符串,对其中的字母、数字、空格分别计数。
(要求在count函数中输入字符串及输出统计结果)(参考函数原型:void count(char* str))
输入输出格式要求:
字母,数字,空格
例如:
str为12asddCSDA sds23244354
输出为11,10,2 展开
(要求在count函数中输入字符串及输出统计结果)(参考函数原型:void count(char* str))
输入输出格式要求:
字母,数字,空格
例如:
str为12asddCSDA sds23244354
输出为11,10,2 展开
4个回答
展开全部
遍历字符串,简单写个字符比较判断然后用变量累加就可以了。
#include <stdio.h>
#include <string.h>
void count(char* str);
int isNCK(char c);
int main()
{
char str[100];
while(1)
{
memset(str,0,100);
printf("\n输入字符串:");
gets(str);
count(str);
}
return 0;
}
void count(char* str)
{
int i,len=strlen(str),n=0,c=0,k=0;
for(i=0;i<len;i++)
if(isNCK(str[i])==1)
n++;
else if(isNCK(str[i])==2)
c++;
else if(isNCK(str[i])==3)
k++;
printf("字符串中字母、数字及空格的个数分别为:%d,%d,%d\n",c,n,k);
}
int isNCK(char c)//判断字符是数字还是字母还是空格,数字返回1,字母返回2,空格返回3
{
if(c>='0' && c<='9')
return 1;
if((c>='a' && c<='z')||(c>='A' && c<='Z'))
return 2;
if(c==' ')
return 3;
return -1;
}
展开全部
不免费
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询