| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 953 人关注过本帖
标题:求高人指点,编译通过结果错误。
只看楼主 加入收藏
liqingyang
Rank: 2
等 级:论坛游民
帖 子:47
专家分:39
注 册:2010-2-24
结帖率:100%
收藏
已结贴  问题点数:20 回复次数:14 
求高人指点,编译通过结果错误。
#include"stdio.h"
main()
{
    int        i,j,p,q,s,num,num2;
    int        a[10]={1,5,9,14,22,31,47,55,63};
   
    for(i=0;i<10;i++)
    {
        p=i;
        q=a[i];
        for(j=i+1;j<10;j++)
            if(q<a[j])
            {
                p=j;
                q=a[j];
            }
            
        if(p!=i)
        {
            num=a[i];
            a[i]=a[p];
            a[p]=num;
        }
        printf("%d\t",a[i]);
    }
   
    printf("input number:\n");
    scanf("%d",&num2);
   
    for(i=0;i<10;i++)        
        if(num2>a[i])
        {
            for(s=9;s>=i;s--)
                a[s+1]=a[s];
            break;
        }
        a[i]=num2;
        
    for(i=0;i<=10;i++)
        printf("%d\t",a[i]);
        
    return;

}

最后不输出a[i]=num2的值。。。。
搜索更多相关主题的帖子: 高人 编译 结果 
2010-09-03 14:53
A13433758072
Rank: 11Rank: 11Rank: 11Rank: 11
来 自:广东潮州
等 级:小飞侠
威 望:1
帖 子:1182
专家分:2784
注 册:2010-7-22
收藏
得分:0 
a[q]是什么

一步一个脚印...............................默默地前进.....
诚邀乐于解答c菜鸟问题,的热心网友加入,  QQ群38490319
2010-09-03 15:09
A13433758072
Rank: 11Rank: 11Rank: 11Rank: 11
来 自:广东潮州
等 级:小飞侠
威 望:1
帖 子:1182
专家分:2784
注 册:2010-7-22
收藏
得分:0 
看错了,是不是,是\t

一步一个脚印...............................默默地前进.....
诚邀乐于解答c菜鸟问题,的热心网友加入,  QQ群38490319
2010-09-03 15:16
liqingyang
Rank: 2
等 级:论坛游民
帖 子:47
专家分:39
注 册:2010-2-24
收藏
得分:0 
错在哪呀
2010-09-03 15:40
liqinm
Rank: 2
等 级:论坛游民
帖 子:13
专家分:39
注 册:2010-8-31
收藏
得分:0 
for(i=0;i<10;i++)        
        if(num2>a[i])
        {
            for(s=9;s>=i;s--)
                a[s+1]=a[s];
            break;
        }
        a[i]=num2;

你在这个for后面加一对大括号明确一下循环的范围试试看

my name is liqin
2010-09-03 15:52
az9841682
Rank: 7Rank: 7Rank: 7
等 级:黑侠
威 望:5
帖 子:312
专家分:596
注 册:2009-9-11
收藏
得分:0 
我发现我错了
所以我就删了

[ 本帖最后由 az9841682 于 2010-9-3 16:00 编辑 ]
2010-09-03 15:57
liqingyang
Rank: 2
等 级:论坛游民
帖 子:47
专家分:39
注 册:2010-2-24
收藏
得分:0 
没有高手路过指点一下吗?郁闷中。。。。。。。。。
2010-09-03 16:12
liqinm
Rank: 2
等 级:论坛游民
帖 子:13
专家分:39
注 册:2010-8-31
收藏
得分:0 
为什么总有人选择性失明啊

my name is liqin
2010-09-03 16:39
gl1029aaa
Rank: 1
等 级:新手上路
帖 子:2
专家分:2
注 册:2009-6-24
收藏
得分:0 
额,8楼悲剧!!!
for(i=0;i<10;i++)  {      
        if(num2>a[i])
        {
            for(s=9;s>=i;s--)
                a[s+1]=a[s];
            break;
        }
        a[i]=num2;
}
2010-09-03 16:54
erikyo
Rank: 9Rank: 9Rank: 9
等 级:蜘蛛侠
威 望:2
帖 子:270
专家分:1154
注 册:2010-6-10
收藏
得分:20 
#include <stdio.h>

int main()
{
    int i,j,p,q,s,num,num2;
    int a[10]={1,5,9,14,22,31,47,55,63};                //只有9个数,后面的问题都是这个引起的
   
    for(i=0;i<9;i++)
    {
        p=i;
        q=a[i];
        for(j=i+1;j<9;j++)                           
            if(q<a[j])
            {
                p=j;
                q=a[j];
            }
            
        if(p!=i)
        {
            num=a[i];
            a[i]=a[p];
            a[p]=num;
        }
        printf("%d\t",a[i]);
    }
   
    printf("\ninput number:\n");
    scanf("%d",&num2);
   
    for(i=0;i<9;i++)        
        if(num2>a[i])
        {
            for(s=8;s>=i;s--)
                a[s+1]=a[s];
            break;
        }
        a[i]=num2;
        
    for(i=0;i<10;i++)
        printf("%d\t",a[i]);
        
    return 0;

}
2010-09-03 17:01
快速回复:求高人指点,编译通过结果错误。
数据加载中...
 
   



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

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