7.13 编写一个程序,将两个字符串连接起来,不要用strcat函数。

来源:互联网 发布:深圳淘宝化妆品销售 编辑:程序博客网 时间:2024/04/30 12:04

今天不知道是怎么回事,完全提不起来兴趣。其实这段时间都是这样,每天只能写一段小程序,白天忙是一方面,其实和前些日子比起来已经轻松多了。就是烦躁,可能是自己又坚持不下去了吧?

今天看了如鹏网的公开课:Oracle放弃Java,我们怎么办? 。真羡慕扬中科老师渊博的知识。

#include<stdio.h>//7.13 编写一个程序,将两个字符串连接起来,不要用strcat函数。int main(){char c1[80],c2[80];int i,j;printf("Input string1:");gets(c1);printf("Input string2:");gets(c2);for(i=0;c1[i]!='\0';i++){}for(j=0;c2[j]!='\0';i++,j++){c1[i]=c2[j];}puts(c1);return 0;}
比书上的简单,第一次运行失败的原因是  c1[i+1]=c2[j];  。本来第一个for结束后i就移动到了第一字符串的最后一个位置了,已经是'\0'了。比如第一字符串是country,长度是7,0~6,第一个for运行后就i就已经是7了。c1[i+1]是c[8],c1[8]=c2[0],c[7]的数值没有改变还是'\0',所以最后puts(c1) 输出到c[7]遇到了字符串结束标志就输出结束了。

0 0
原创粉丝点击