首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C语言 >

求大牛帮助!

2013-02-25 
求大牛相助!!!#includestdio.hint main(){int letter0,digit0,space0,others0,ichar a[100]for(i

求大牛相助!!!
#include<stdio.h>
int main()
{
int letter=0,digit=0,space=0,others=0,i;
char a[100];
for(i=0;scanf("%c",&a[i])!='\n';i++)
{
if(((a[i]>='a')&&(a[i]<='z'))||((a[i]>='A')&&(a[i]<='Z')))
letter++;
else if((a[i]>=0)&&(a[i]<=9))
digit++;
else if(a[i]=='')
space++;
else 
others++;
}
printf("%d %d %d %d\n",letter,digit,space,others);
}

这个代码为什么过不了。。。
[解决办法]
#include<stdio.h>
int main()
{
int letter=0,digit=0,space=0,others=0,i;
char a[100];
for(i=0;scanf("%c",&a[i]) && a[i]!='\n';i++)
{
if(((a[i]>='a')&&(a[i]<='z'))
[解决办法]
((a[i]>='A')&&(a[i]<='Z')))
letter++;
else if((a[i]>='0')&&(a[i]<='9'))
digit++;
else if(a[i]==' ')
space++;
else 
others++;
}
printf("%d %d %d %d\n",letter,digit,space,others);
}
[解决办法]
lz 看看 ctype.h

for(i=0;scanf("%c",&a[i])!='\n';i++) 很特别的用法



[解决办法]
else if(a[i]=='')//此处的''内没有空格,应该为' ';
 space++;
[解决办法]
统计字母,数字,空格,其他


#include<stdio.h>
#include <string.h>
int main()
{
int letter=0,digit=0,space=0,others=0,i;
char a[100];
gets(a);
//for(i=0;scanf("%c",&a[i])!='\n';i++)   //Returns the number of fields successfully converted and assigned
for(i=0;i<strlen(a);i++)
{
if(((a[i]>='a')&&(a[i]<='z'))
[解决办法]
((a[i]>='A')&&(a[i]<='Z')))
letter++;
else if((a[i]>='0')&&(a[i]<='9'))       //a[i]是5,但是他是个char啊~~
digit++;
else if(a[i]==' ')                              //这里是空格,是 ‘ ’不是‘’
space++;
else 
others++;
}
printf("%d %d %d %d\n",letter,digit,space,others);
}


[解决办法]

#include<stdio.h>
#include <string.h>
int main()
{
int letter=0,digit=0,space=0,others=0,i;
char a[100];
gets(a);
//for(i=0;scanf("%c",&a[i])!='\n';i++)   //Returns the number of fields successfully converted and assigned
for(i=0;i<strlen(a);i++)
{
if(((a[i]>='a')&&(a[i]<='z'))
[解决办法]
((a[i]>='A')&&(a[i]<='Z')))
letter++;
else if((a[i]>='0')&&(a[i]<='9')) //(掉了两字)假设a[i]是5,但是他是个char啊
digit++;
else if(a[i]==' ')                              //这里是空格,是 ‘ ’不是‘’


space++;
else 
others++;
}
printf("%d %d %d %d\n",letter,digit,space,others);
}


[解决办法]
我运行你的程序, 显示这个错误error C2137: empty character constant,英文意思不懂,百度了下,有这个意思《 这个单引号要有个空格 这个英文的意思就是提示空字符》,然后在你错误显示的地方
else if(a[i]=='')中间加多一个空格,问题就解决了。程序有错误提示的话,试着先自己解决

热点排行