| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 2210 人关注过本帖
标题:麻烦能够各位指点一下错误,调试一上午,无奈ing
取消只看楼主 加入收藏
miyaya
Rank: 2
等 级:论坛游民
帖 子:15
专家分:35
注 册:2017-11-10
结帖率:100%
收藏
已结贴  问题点数:20 回复次数:9 
麻烦能够各位指点一下错误,调试一上午,无奈ing
题目要求 :在主函数中定义一个有10个元素的整型一维数组,用户输入9个数据,调用函数,对数组元素进行从小到大排序后,在函数中输入一个数,插入到数组中正确的位置,并输出。整个程序本身没错,但运行不出想要的。
#include<stdio.h>
#define N 10
int fun(int a[N])
{
    int m,n,i;
    for(m=0;m<N-1;m++)
        for(n=0;n<N-1-m;m++)
        {
            if(a[0]>a[n])
            {
                i=a[n];
                a[n]=a[0];
                a[0]=i;
            }
        }
        return a[N];
}
void main()
{
    int t,k,l,a[N];
    printf("请输入9个数字:\n");
    for(t=0;t<9;t++)
    scanf("%d",a[t]);
    fun(a);
    printf("please imput a nuber;\n");
    scanf("%d",&k);
    for(t=0;t<N;t++)
    {
        if(k>a[t])
        {
            a[t+1]=a[t];
            a[t]=k;
        }
        continue;
    }
    for(t=0;t<N;t++)
        printf("%d",a[N]);
}
搜索更多相关主题的帖子: 错误 输入 int for printf 
2017-12-01 13:00
miyaya
Rank: 2
等 级:论坛游民
帖 子:15
专家分:35
注 册:2017-11-10
收藏
得分:0 
回复 2楼 吹水佬
我去试试看,谢谢!
2017-12-01 14:40
miyaya
Rank: 2
等 级:论坛游民
帖 子:15
专家分:35
注 册:2017-11-10
收藏
得分:0 
回复 3楼 虫眼
噢噢
2017-12-01 14:42
miyaya
Rank: 2
等 级:论坛游民
帖 子:15
专家分:35
注 册:2017-11-10
收藏
得分:0 
回复 3楼 虫眼
不好意思,弄错了,想输出数组来着,谢谢
2017-12-01 14:44
miyaya
Rank: 2
等 级:论坛游民
帖 子:15
专家分:35
注 册:2017-11-10
收藏
得分:0 
回复 7楼 虫眼
不好意思,我太笨拙了,我想把k插入进去后,后面的往后挪一位,要怎么实现啊,麻烦指点一下
2017-12-01 14:53
miyaya
Rank: 2
等 级:论坛游民
帖 子:15
专家分:35
注 册:2017-11-10
收藏
得分:0 
回复 9楼 虫眼
是k和数组元素比较,当k比a[n]大比a[n+1]小时,放中间

[此贴子已经被作者于2017-12-1 15:16编辑过]

2017-12-01 15:14
miyaya
Rank: 2
等 级:论坛游民
帖 子:15
专家分:35
注 册:2017-11-10
收藏
得分:0 
回复 楼主 miyaya
我改完之后程序可以出结果了,但是那些数字都是负数不知道有问题,麻烦大家能告诉一下吗?
#include<stdio.h>
#define N 10
int fun(int a[N])
{
    int m,n,i;
    for(m=0;m<N-1;m++)
        for(n=0;n<N-1-m;m++)
        {
            if(a[n]>a[n+1])
            {
                i=a[n];
                a[n]=a[n+1];
                a[n+1]=i;
            }
        }
        return a[N];
}
void main()
{
    int t,k,l,m,a[N];
    printf("请输入9个数字:\n");
    for(t=0;t<9;t++)
    scanf("%d",&a[t]);
    fun(a);
    printf("please imput a nuber;\n");
    scanf("%d",&k);
    for(t=0;t<N;t++)
    {
        if(k>a[t])
        {
            for(m=t+1;m<N;m++)
            {
                l=a[m];
                a[m]=k;
                k=l;
            }
        }
        a[t+1]=k;
        continue;
    }
    for(t=0;t<N;t++)
        printf("%d",a[t]);
}
2017-12-01 16:09
miyaya
Rank: 2
等 级:论坛游民
帖 子:15
专家分:35
注 册:2017-11-10
收藏
得分:0 
回复 13楼 虫眼
不会不会,你愿意帮助我我已经很感谢了
2017-12-01 20:26
miyaya
Rank: 2
等 级:论坛游民
帖 子:15
专家分:35
注 册:2017-11-10
收藏
得分:0 
回复 15楼 炎天
谢谢!
2017-12-03 09:39
miyaya
Rank: 2
等 级:论坛游民
帖 子:15
专家分:35
注 册:2017-11-10
收藏
得分:0 
回复 16楼 墨点
谢谢
2017-12-03 09:40
快速回复:麻烦能够各位指点一下错误,调试一上午,无奈ing
数据加载中...
 
   



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

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