漫天花雨 发表于 2008-7-24 10:36

不明白怎么一回事,菜鸟提问

题目为,有一篇文章,共3行文字,每行有80个字符,要求分别统计出其中英文大写字母,小写字母,数字,空格以及其他字符数
小弟代码如下,为何运行不出,有错误啊。。。。。。求救。。。。
#include<stdio.h>
void main()
{
int i,j,cl,sl,num,space,others;
cl=0,sl=0,num=0,space=0,others=0;
char text[3][80];
printf("input any lines is\n");
for(i=0;i<3;i++)
{ gets(text[i]);
for(j=0;j<80&&text[i][j]!='\0';j++)
  {
   if(text[i][j]>='A'&&text[i][j]<='Z')
    cl+=1;
   else if(text[i][j]>='a'&&text[i][j]<='z')
    sl+=1;
   else if(text[i][j]>='0'&&text[i][j]<='9')
    num+=1;
   else if(text[i][j]==' ')
    space+=1;
    else
    others+=1;
    }
   }
   printf("the result is following\n");
   printf("%d",cl);
   printf("%d",sl);
   printf("%d",num);
   printf("%d",space);
   printf("%d",others);
   }

病书生 发表于 2008-7-24 10:44

我没报错.....[tk01]

blueboy82006 发表于 2008-7-24 10:46

int i,j,cl,sl,num,space,others;
cl=0,sl=0,num=0,space=0,others=0;
语法错误。。。
要么写成
int i,j,cl=0,sl=0,num=0,space=0,others=0;
要么写成
int i,j,cl,sl,num,space,others;
cl=0;sl=0;num=0;space=0;others=0;
赋值是单独的语句啊。。。

病书生 发表于 2008-7-24 10:47

cl=0,sl=0,num=0,space=0,others=0;
可能就是这一行了
我用的VC2008 默认的就是那个了 所以没报错

blueboy82006 发表于 2008-7-24 10:51

对了LZ 你最后输出时,要加回车啊,要不然你怎么区分那一行数字啊

漫天花雨 发表于 2008-7-24 10:57

回复 5# blueboy82006 的帖子

多谢哥们提醒!!![tk02]

漫天花雨 发表于 2008-7-24 10:58

回复 3# blueboy82006 的帖子

哦对对。。。。。。。。

鬼画符 发表于 2008-7-24 10:59

[quote][bo][un]blueboy82006[/un] 在 2008-7-24 10:46 的发言:[/bo]

int i,j,cl,sl,num,space,others;
cl=0,sl=0,num=0,space=0,others=0;
语法错误。。。
要么写成
int i,j,cl=0,sl=0,num=0,space=0,others=0;
要么写成
int i,j,cl,sl,num,space,others;
cl=0;sl=0;num=0;spac ... [/quote]
[size=6]正解~[/size][tk11]

页: [1]

编程论坛