编程序,输入一行文字,单词间以一个或多个空格分隔,然后分离其中的单词,并按每行一个单词依次输出各单词。
#include <stdio.h>
void main( )
{ char s[81];
int i,j;
gets(s);
for(i=0;s[i];i++)
if(s[i]!=' ')
{ for(;s[i]&&s[i]!=' ';i++)
printf("%c",s[i]);
printf("\n");
i--;
}
}
从{ for(;s[i]&&s[i]!=' ';i++)开始就不懂了 高人帮忙指点一下后面几句什么意思 谢谢
{ for(;s[i]&&s[i]!=' ';i++)
printf("%c",s[i]);
printf("\n");
以上几句懂了 可是最后为什么要i--呢 这里又不懂了。。。
{ for(;s[i]&&s[i]!=' ';i++)使用循环逐个字母输出每一个空格后的单词,即:字符不为空格或结束符
遇到空格后就 printf("\n");换行,从新执行
for(i=0;s[i];i++)
if(s[i]!=' ')
{ for(;s[i]&&s[i]!=' ';i++)
printf("%c",s[i]);
printf("\n");
i--;}
直到结束
扩展资料
与C++、Java等面向对象编程语言有所不同。C语言的设计目标是提供一种能以简易的方式编译、处理低级存储器、仅产生少量的机器码以及不需要任何运行环境支持便能运行的编程语言。
C语言描述问题比汇编语言迅速、工作量小、可读性好、易于调试、修改和移植,而代码质量与汇编语言相当。C语言一般只比汇编语言代码生成的目标程序效率低10%~20%。因此,C语言可以编写系统软件。
参考资料来源:百度百科:c语言
遇到空格后就 printf("\n");换行,从新执行
for(i=0;s[i];i++)
if(s[i]!=' ')
{ for(;s[i]&&s[i]!=' ';i++)
printf("%c",s[i]);
printf("\n");
i--;
}
知道结束