| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1045 人关注过本帖
标题:求教啊!这个程序要怎么写呢?
只看楼主 加入收藏
阳沉
Rank: 1
等 级:新手上路
帖 子:1
专家分:0
注 册:2012-7-2
结帖率:0
收藏
已结贴  问题点数:20 回复次数:11 
求教啊!这个程序要怎么写呢?
1、用数组实现如下程序
循环从键盘接收整数(共10个),每接收到一个数就将其插入数组中,保证每次插入后数组中的整数都按从小到大的次序排列。
搜索更多相关主题的帖子: 键盘 
2012-07-02 11:13
jokerskill
Rank: 7Rank: 7Rank: 7
等 级:黑侠
帖 子:392
专家分:554
注 册:2012-3-4
收藏
得分:3 
#include <stdio.h>
int main(void)
{
int a[10],b;
for( b = 0; b < 10; b += 1 )
a[b] = b;
for( b = 0; b < 10; ++b )
printf("%d",a[b]);
return 0;
}
2012-07-02 11:26
jokerskill
Rank: 7Rank: 7Rank: 7
等 级:黑侠
帖 子:392
专家分:554
注 册:2012-3-4
收藏
得分:0 
用冒泡排序法(我以前看过书上的现在不记的了)我现在去百度中找
2012-07-02 12:18
jokerskill
Rank: 7Rank: 7Rank: 7
等 级:黑侠
帖 子:392
专家分:554
注 册:2012-3-4
收藏
得分:0 
这是我在百度上找到的大家一起学习啊
#include <stdio.h>
#include <stdlib.h>

int main()
{
int i,j,t,a[10];
printf("Please input 10 integers:\n");
for(i=0;i<10;i++)
scanf("%d",&a[i]);
for(i=0;i<9;i++) /* 冒泡法排序 */
for(j=0;j<10-i-1;j++)
if(a[j]>a[j+1])
{t=a[j];/* 交换a[i]和a[j] */
a[j]=a[j+1];
a[j+1]=t;
}
printf("The sequence after sort is:\n");
for(i=0;i<10;i++)
printf("%-5d",a[i]);
printf("\n");
system("pause");
return 0;
}
2012-07-02 12:23
q7408695
Rank: 2
等 级:论坛游民
帖 子:22
专家分:50
注 册:2011-8-2
收藏
得分:3 
保证每次插入后数组中的整数都按从小到大的次序排列,貌似需要插入排序。
2012-07-02 17:26
embed_xuel
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
等 级:贵宾
威 望:58
帖 子:3845
专家分:11385
注 册:2011-9-13
收藏
得分:3 
每接收一个数按大小排好,比如第一个数是5,放在数组下标0,a[0]=5,第二个数是3,那么a[0]=3,a[1]=5,第三个数是4,那么a[0]=3,a[1]=4,a[2]=5,以此类推,不用那些排序算法

[ 本帖最后由 embed_xuel 于 2012-7-2 17:38 编辑 ]

总有那身价贱的人给作业贴回复完整的代码
2012-07-02 17:36
姻脂梦
Rank: 6Rank: 6
等 级:侠之大者
帖 子:264
专家分:424
注 册:2012-7-3
收藏
得分:3 
学习了!
2012-07-03 20:34
netlin
Rank: 13Rank: 13Rank: 13Rank: 13
等 级:贵宾
威 望:24
帖 子:544
专家分:4308
注 册:2012-4-9
收藏
得分:3 
这道题采用插入法排序比较好。
每次从键盘输入一个数,就把这个数插入到已经从小到大排好序的数组中去。
当然,4楼的冒泡法排序也是可以的。
以下是修改4楼的内容而成:
#include <stdio.h>
#include <stdlib.h>
int main(){
int i,j,t,a[10];
printf("Please input 10 integers:\n");
for(i=0;i<10;i++){
    scanf("%d",&t);
    for(j=i;j>0;j--) /* 插值法排序 */
        if(t<a[j-1])a[j]=a[j-1];
        else break;
    a[j]=t;
}
printf("The sequence after sort is:\n");
for(i=0;i<10;i++)
printf("%-5d",a[i]);
printf("\n");
system("pause");
return 0;
}

由于手边没有调试环境,请楼主调试一下!


[ 本帖最后由 netlin 于 2012-7-4 00:37 编辑 ]

做自己喜欢的事!
2012-07-04 00:29
cain0203
Rank: 2
等 级:论坛游民
帖 子:8
专家分:17
注 册:2012-3-19
收藏
得分:3 
学习力,这种算法很经典
2012-07-04 07:42
青春舞台
Rank: 1
等 级:新手上路
帖 子:2
专家分:2
注 册:2012-7-4
收藏
得分:3 
学习了,很好
2012-07-04 10:39
快速回复:求教啊!这个程序要怎么写呢?
数据加载中...
 
   



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

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