马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
# include <stdio.h>
int main()
{
char s1[100], s2[100], s3[200];
int i, j;
gets(s1);
gets(s2);
for(i = j = 0; s1[i];)
s3[j++] = s1[i++];
for(i = 0; s2[i];)
s3[j++] = s2[i++];
s3[j] = '\0';
puts(s3);
getchar ();
return 0;
}
这段代码并不是我打出来的,求大神指导一下
关于 for(i = j = 0; s1[i];)这里是什么意思
谢谢呃。。。
循环三大要素!
1. 初始化计数器
2.循环条件
3.更新计数器
现在接着看循环
i = j = 0; 是不是初始化计数器
s1[i] ; 是不是循环条件
没有更新计数器? 别急 往下看
s3[j++] = s1[i++] 这里的i和j是不是自增了
有了这些 接着看循环
假定输入 aaa :
s1数组开始向s3数组赋值,
第一次 赋值一个a
第二次 赋值一个a
第三次 赋值一个a
第四次,数组元素没有被初始化的元素 会被c语言初始化为0,
现在再看 s1[3] == 0 零为假!循环条件不成立!循环退出!
下面的循环同理
|