将一串英文字附中多余的空格删除还有找到最长的单词的长度这样做怎么错了呀

代码助手 毕业设计 1
1.
#include<stdio.h>
#include<stdlib.h>

int main(){
char str[20],str2[20];
int i,flag=0,j;
gets(str);
for(i=0;i<20;i++){
if(str[i]==' '){
if(flag==1){
str2[j]=str[i];
j++;}
flag=0;

   }
   else
            str2[i]=str[i];
            j++;
}
for (i=0;i<20;i++){
    printf("%c",str2[i]);
}
return 0;
}
2.
#include<stdio.h>
#include<stdlib.h>

int main(){
int length=0,t=0,i;
char str[20];
gets(str);
for(i=0;i<20;i++){
if(str[i]==' ')
length=0;
else
length++;
if(length>t)
t=length;
}
printf("%d",t);
return 0;
}

回复

共2条回复 我来回复
  • 毕设项目助手
    这个人很懒,什么都没有留下~
    评论

    第一个

    #include<stdio.h>
    #include<stdlib.h>
    #include<string.h>
    int main() {
        char str[20],str2[20];
        int i,flag=0,j;
        gets(str);
        for(i=0; i<20; i++)
        {
            if(str[i]!=' ')
            {
                    str2[j]=str[i];
                    j++;
            }
        }
        for (i=0; i<strlen(str2); i++)
        {
            printf("%c",str2[i]);
        }
        return 0;
    }
    
    0条评论
  • 源码码头网
    这个人很懒,什么都没有留下~
    评论

    第二个

    #include<stdio.h>
    #include<stdlib.h>
    int main()
    {
        int length=0,t=0,i;
        char str[20];
        gets(str);
        for(i=0; i<strlen(str); i++)
        {
            if(str[i]==' ')
                length=0;
            else
                length++;
            if(length>t)
                t=length;
        }
        printf("%d",t);
        return 0;
    }
    
    0条评论

发表回复

登录后才能评论