标题:为什么在遍历显示数组时,会出现未知数?
只看楼主
凌灬轻扬
Rank: 1
等 级:新手上路
威 望:1
帖 子:28
专家分:0
注 册:2016-10-8
结帖率:80%
已结贴  问题点数:20 回复次数:14 
为什么在遍历显示数组时,会出现未知数?
#include <stdio.h>

void main()
{
    int a[10] = {1,2,3,4,5,6,7,8,9,10};
    int i=0;
    printf("数组初始值:");
    while(a[i]!='\0')
    {
        printf("\n%d",a[i]);
        i++;
    }
}
搜索更多相关主题的帖子: include 未知数 
2017-04-04 13:41
初学编程的人
Rank: 2
等 级:论坛游民
威 望:2
帖 子:90
专家分:84
注 册:2017-3-12
得分:4 
因为你的a数组并不存在一个'\0',所以你的循环会一直进行下去,直到它检测到一个数值0(注意不是字符0)就停下来。
所以你就看到了a[9]以外的一些数值,譬如a[10]、a[11]等等所存放的数值
2017-04-04 14:34
zmf876870302
Rank: 3Rank: 3
来 自:福建
等 级:论坛游侠
威 望:3
帖 子:50
专家分:199
注 册:2017-3-26
得分:4 
回复 楼主 凌灬轻扬
数组a不是字符串,不存在 '\0' 这个元素。所以循环不会终止,也就看到数组以外的数值!初学C语言,还望多多指教!

还在学习过程中,欢迎指教!
2017-04-04 16:01
wp231957
Rank: 16Rank: 16Rank: 16Rank: 16
来 自:神界
等 级:版主
威 望:422
帖 子:13681
专家分:53296
注 册:2012-10-18
得分:4 
int类型的数组 在遍历时 要传入数据有效长度

DO IT YOURSELF !
2017-04-04 16:54
凌灬轻扬
Rank: 1
等 级:新手上路
威 望:1
帖 子:28
专家分:0
注 册:2016-10-8
得分:0 
回复 2楼 初学编程的人
懂了,谢谢
2017-04-04 22:09
凌灬轻扬
Rank: 1
等 级:新手上路
威 望:1
帖 子:28
专家分:0
注 册:2016-10-8
得分:0 
回复 3楼 zmf876870302
同学,学的很好。谢了
2017-04-04 22:10
凌灬轻扬
Rank: 1
等 级:新手上路
威 望:1
帖 子:28
专家分:0
注 册:2016-10-8
得分:0 
回复 4楼 wp231957
嗯,我只是想试试能不通过数组长度来达到遍历效果。谢谢
2017-04-04 22:12
凌灬轻扬
Rank: 1
等 级:新手上路
威 望:1
帖 子:28
专家分:0
注 册:2016-10-8
得分:0 
回复 4楼 wp231957
嗯,我只是想试试能不通过数组长度来达到遍历效果。谢谢
2017-04-04 22:12
韶志
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
来 自:斗气大陆
等 级:贵宾
威 望:44
帖 子:2223
专家分:13592
注 册:2013-3-22
得分:4 

三十年河东,三十年河西,莫欺少年穷!
2017-04-05 10:26
zmf876870302
Rank: 3Rank: 3
来 自:福建
等 级:论坛游侠
威 望:3
帖 子:50
专家分:199
注 册:2017-3-26
得分:0 
回复 6楼 凌灬轻扬

还在学习过程中,欢迎指教!
2017-04-05 11:51



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




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

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