#include<stdio.h>
#include<string.h>
int main(){
char str[100],p;
int input(char p);
int count(char p);
p=str;
input(p);
count(p);
}
int input(char p){
int i=0;
for(;(p+i)=getchar()!='\n';i++);
}
int count(char p){
int a,b,c,d,i;
a=b=c=d=0;
for(i=0;(p+i)!='\n';i++){
if((p+i)=='\0')a=a+1;
else if((p+i)>='A'&&(p+i)<='Z')b=b+1;
else if((p+i)>='a'&&(p+i)<='z')c=c+1;
else d=d+1;
}
printf("大写字母个数:%d\n",b );
printf("小写字母个数:%d\n",c);
printf("空格个数: %d\n",a);
printf("其他字符个数:%d\n",d);
}
为什么输出不了?求解答
- 写回答
- 好问题 0 提建议
- 关注问题
- 邀请回答
-
2条回答 默认 最新
南七灵 2021-12-13 14:12关注#include <stdio.h> #include <string.h> int main() { char str[100], *p; int input(char *p); int count(char *p); p = str; input(p); count(p); } int input(char *p) { gets(p); } int count(char *p) { int a, b, c, d, i; a = b = c = d = 0; for (i = 0; *(p + i) != '\0'; i++) { if (*(p + i) == ' ') a = a + 1; else if (*(p + i) >= 'A' && *(p + i) <= 'Z') b = b + 1; else if (*(p + i) >= 'a' && *(p + i) <= 'z') c = c + 1; else d = d + 1; } printf("大写字母个数:%d\n", b); printf("小写字母个数:%d\n", c); printf("空格个数: %d\n", a); printf("其他字符个数:%d\n", d); }本回答被题主选为最佳回答 , 对您是否有帮助呢?评论 打赏 举报解决 1无用