字符串应用gets()函数问题
#include<stdio.h>#include<string.h>
int main(void)
{
int i=0,j=0,m; //i是总字符串长度,j目前单词长度
int max =0;//保存最长的数值
int pos = 0;//保存该单词的尾点
char str;//="i am zhu";
printf("请输入一个英文句子:\n");
gets(str);
for(i=0;str!='\0';i++)
printf("%c\t",str);
m=strlen(str);
for( i=0 ; str!='\0';i++)
{
j = 0;
while(str!='\0'&& str!=' ')//i<m
{
j++;
i++;
}
if(j>max)
{
max = j;
pos = i;
}
}
for(i = 0 ; i<max;i++)
printf("%c\n",str);
return 0;
}
为什么while循环中用str!='\0'没法判断字符串是否结束,换成i<m就可以了
页:
[1]