您的位置:首页 > 其它

不使用for完成一段有空格间隔的字符串,分辨长度大于等于4的单词(求各位高人修改,我表示我是菜鸟,这个算法实在太长了)

2011-11-11 23:51 351 查看
#include <stdio.h>

#include <string.h>

void main()

{

char a[100];

int count,i,j,sum,f=0;

while(1)

{

memset(a, '\0' ,sizeof(a));

printf("请输入\n");

gets(a);

i = count = sum = 0;

while(a[i]!='\0')

{

if (f ==1)

{

count = 0;

f = 0;

}

if (a[i] == ' ')

{

i++;

continue;

}

if (a[i+1] != ' ' &&a[i+1] != '\0')

{

i++;

count++;

}

else

{

if(a[i+1] == ' '||a[i+1] =='\0')

{

count++;

if (count < 4)

{

i = i + 2;

count = 0;

continue;

}

else

{

j = i -(count -1);

while(j <= i)

{

printf("%c",a[j]);

j++;

}

f = 1;

printf(" ");

i++;

sum++;

}

}

}

}

if (sum == 0)

{

printf("没有长度大于等于4的单词!\n");

}

else

{

printf("长度大于等于4的单词有%d个\n",sum);

}

}

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐