C语言程序编写函数,统计一个字符串中大写字母、小写字母和标点符号的个数标点符号包括:逗号、句号、分号
#include<stdio.h>#include<string.h>char a(char b[]){ int a=0,bi=0,c=0,i=0,n; n=strlen(b); for(;i<n;i++) { if(b[i]>=65&&b[i]>=90) a=a++; else if(b[i]>=97&&b[i]>=122) bi=bi++; else if(b[i]==44&&b[i]==46&&b[i]==59) c=c++; printf("大写字母个数:%d\n小写字母个数:%d\n标点符号个数:%d\n",a,bi,c); return a,bi,c; }
}void main(){ char t[]; gets(t); a(t);
最佳答案
程序有多个错,改好的参考:
#include<stdio.h>
#include<string.h>
void aa(char b[]) //你不用返回值的,且不要将函数与变量同名
{
int a = 0, bi = 0, c = 0, i = 0, n;
n = strlen(b);
for(; i < n; i++)
{
if(b[i] >= 65 && b[i] <= 90) //后面是小于 ,下同
a++; //a=a++不会改变a的值的,下同
else if(b[i] >= 97 && b[i] <= 122)
bi++;
else if(b[i] == 44 || b[i] == 46 || b[i] == 59) //这个应该是||非&&
c++;
// return a,bi,c; 你这个不能返回三个值的
}
printf("大写字母个数:%d\n小写字母个数:%d\n标点符号个数:%d\n", a, bi, c); //这个要放在循环外面的
}
int main() //标准的写法,void main()是上世纪淘汰的古老写法
{
char t[1024]; //你要定义字符串且不能没有下标的
gets(t);
aa(t);
return 0;
}
其他回答
其它网友回答:
问什么,说清楚点