| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 842 人关注过本帖
标题:我这个程序能输出正确答案,但是提示程序运行出错。什么原因啊??
只看楼主 加入收藏
踩不扁小强
Rank: 2
等 级:论坛游民
帖 子:46
专家分:39
注 册:2013-4-6
结帖率:91.67%
收藏
已结贴  问题点数:20 回复次数:10 
我这个程序能输出正确答案,但是提示程序运行出错。什么原因啊??
\*程序的要求是输入十个数,输出它们的最小值*\
#include <stdio.h>
main()
{
    int a[10],i=1,j=1;
    for(;i<=10;i++)
    {
        scanf("%d",&a[i]);
    }
    for(;j<10;j++)
    {
        if(a[j]<=a[j+1])
            a[j+1]=a[j];        
    }
    printf("%d",a[10]);
}
图片附件: 游客没有浏览图片的权限,请 登录注册
搜索更多相关主题的帖子: 正确答案 include 
2013-04-06 20:15
韶志
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
来 自:斗气大陆
等 级:贵宾
威 望:44
帖 子:2223
专家分:13592
注 册:2013-3-22
收藏
得分:5 
#include <stdio.h>
main()
{
    int a[10],i=1,j=1;
    for(;i<=10;i++)
    {
        scanf("%d",&a[i]);
    }
    for(;j<10;j++)
    {
        if(a[j]<=a[j+1])
            a[j+1]=a[j];        
    }
    printf("%d",a[10]);
}

a[10]表示的是含有十个元素的数组,是从a[0]~a[9],不是a[1]~a[10]

三十年河东,三十年河西,莫欺少年穷!
2013-04-06 20:23
a76962934
Rank: 2
等 级:论坛游民
帖 子:39
专家分:53
注 册:2012-5-30
收藏
得分:5 
数组下标越界,printf("%d",a[10]). 最后个数应该是a[9]
2013-04-06 20:34
邓士林
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
来 自:淮河河畔
等 级:贵宾
威 望:61
帖 子:2392
专家分:13384
注 册:2013-3-3
收藏
得分:5 
for(;i<=10;i++)
     {
         scanf("%d",&a[i]);
     }
你循环十次进行赋值没有问题,但是数组的大小是int a[10],但是没有a[10],所以在你赋值的时候有a[10]会报错

Maybe
2013-04-06 20:34
踩不扁小强
Rank: 2
等 级:论坛游民
帖 子:46
专家分:39
注 册:2013-4-6
收藏
得分:0 
改了,但是还是不行啊,其实我最想知道的是它提示说出错,但是输出的答案还是正确的,这是为什么呢??
2013-04-06 20:37
踩不扁小强
Rank: 2
等 级:论坛游民
帖 子:46
专家分:39
注 册:2013-4-6
收藏
得分:0 
我现在改成这样了。麻烦你们帮我看看了
#include <stdio.h>
main()
{
    int a[10],i=0,j=0;
    for(;i<=9;i++)
    {
        scanf("%d",&a[i]);
    }
    for(;j<10;j++)
    {
        if(a[j]<=a[j+1])
            a[j+1]=a[j];        
    }
    printf("%d",a[9]);
}
2013-04-06 20:43
YJ_Hao
Rank: 7Rank: 7Rank: 7
等 级:黑侠
威 望:1
帖 子:215
专家分:609
注 册:2013-3-22
收藏
得分:5 
你把j<10改成j<9就不会弹窗了!!!!(前面的下标越界一样得改)
2013-04-06 20:48
第二周杰伦
Rank: 2
等 级:论坛游民
帖 子:55
专家分:20
注 册:2013-3-23
收藏
得分:0 
当j=9时,是a[9]与a[10]进行比较。
而a[10]在内存中的位置是不确定的,你可以将循环体的判断条件改为j<=8或j<9也许就可以了。
我是新手,互相学习
2013-04-06 21:57
q13678986740
Rank: 4
等 级:业余侠客
帖 子:114
专家分:245
注 册:2012-7-7
收藏
得分:0 
楼上都是正解
2013-04-07 07:56
皎月残影
Rank: 1
等 级:新手上路
帖 子:5
专家分:2
注 册:2012-12-14
收藏
得分:0 
杰伦正解。。。。
2013-04-07 14:42
快速回复:我这个程序能输出正确答案,但是提示程序运行出错。什么原因啊??
数据加载中...
 
   



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

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