C语言请大神帮忙找BUG

#include
#define MAXIMUM 1000 //这段代码是要实现将一个字符串中的连续的空格用数
int getline(char line[]); //较少的指标符和空格代替,请指点,如其中有什么低等
main(){ //错误也请大神们指点,本人新手只懂皮毛,谢谢。
int len;
char line[MAXIMUM];
char newline[MAXIMUM];
int j;
int k = 0;
int ecount;
int n;
while((len = getline(line) > 0)){
for(j = 0;j < len;j++){
if(line[j] != ' ')
newline[k++] = line[j];
else if(line[j] == ' '){
while(line[j++] == ' '){
ecount++;
}
if(ecount == 1){
newline[k++] = ' ';
}else if(ecount == 2){
newline[k++] = ' ';
newline[k++] = ' ';
}else if(ecount >= 3){
for(n = 0;n <(ecount - (ecount%3))/3;n++){
newline[k++] = '\t';
}
for(n = 0;n < (ecount%3);n++){
newline[k++] = ' ';
}
}
newline[k++] = line[j];

}
}
}
printf("%s\n",newline);
return 0;
}
int getline(char line[]){
int i;
int c;
for(i = 0;(c = getchar()) != EOF&&c != '\n';i++)
line[i] = c;
if(c = '\n'){
line[i] = c;
i++;
}
line[i] = '\0';
return i;
}

查看全部
weixin_34433129
KingintheNorth
2016/04/30 08:13
  • c
  • c语言
  • 点赞
  • 收藏
  • 回答
    私信
满意答案
查看全部

3个回复