标题:求助:程序输出结果疑问
只看楼主
jay_jou
Rank: 1
等 级:新手上路
帖 子:3
专家分:0
注 册:2014-10-25
结帖率:0
已结贴  问题点数:20 回复次数:4 
求助:程序输出结果疑问
#include<stdio.h>
#include<string.h>
int main()
{
    char a[80]="AB",b[80]="LMNP";
    int i=0;
    strcat(a,b);
    while(a[i++]!='\0')b[i]=a[i];
    puts(b);
    return 0;
}

程序输出是LBLMNP,为什么会是这个结果?不是ABLMNP?
搜索更多相关主题的帖子: return include 
2014-10-25 10:12
小玲子zhl
Rank: 2
等 级:论坛游民
帖 子:15
专家分:30
注 册:2014-10-23
得分:10 
你把while语句改成这样看看!!while(a[i]!='\0'){b[i]=a[i];i++;}
2014-10-25 10:26
jay_jou
Rank: 1
等 级:新手上路
帖 子:3
专家分:0
注 册:2014-10-25
得分:0 
回复 2 楼 小玲子 zhl
嗯,但是我想知道,现在这个代码为什么会是这样的结果?怎么运行的?
2014-10-25 10:29
dcl2014
Rank: 4
等 级:业余侠客
威 望:1
帖 子:58
专家分:273
注 册:2014-9-20
得分:10 
同意楼上 i++,在第一次whlie语句里面执行之后 i已经为1了,so。。。
2014-10-25 10:32
jay_jou
Rank: 1
等 级:新手上路
帖 子:3
专家分:0
注 册:2014-10-25
得分:0 
哦对,忽略了i++后,值变了,感谢以上两位。
2014-10-25 11:03



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-437674-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 1.339429 second(s), 8 queries.
Copyright©2004-2025, BCCN.NET, All Rights Reserved