标题:编写程序,要求用随机函数产生n个数(n由键盘输入的值决定),并用选择法排序 ...
只看楼主
蝴蝶扣
Rank: 2
等 级:论坛游民
威 望:1
帖 子:52
专家分:76
注 册:2016-7-18
结帖率:83.33%
 问题点数:0 回复次数:4 
编写程序,要求用随机函数产生n个数(n由键盘输入的值决定),并用选择法排序,输出排序前后的结果,要求每行打印10个数。
#include<stdio.h>
#include <time.h>
#include <stdlib.h>
void main()
{
    int i,j,n;
    int temp;
    int a[]={0};
    srand(time(NULL));
    printf("请输入n 的值:");
    scanf("%d",&n);
    for(i=0;i<n;i++)
    {
        a[i] = rand()%100;
    }
    //进行选择排序
    for(i=0;i<n-1;i++)
    {
        
        for(j=i+1;j<n;j++)
        {
            if(a[j]<a[i])
            {
                temp=a[i];
                a[i]=a[j];
                a[j]=temp;
            }
        }
        
    }
    printf("选择排序后:\n");
    for(i=0;i<n;i++)
        printf("%d ",a[i]);
    printf("\n");

}
运行结果是错的,求帮忙!
搜索更多相关主题的帖子: 编写程序 include 键盘 
2016-07-20 17:58
grmmylbs
Rank: 14Rank: 14Rank: 14Rank: 14
等 级:贵宾
威 望:54
帖 子:1409
专家分:5845
注 册:2016-2-14
得分:0 
  int a[]={0};这样定义数组,a只有1位
2016-07-20 18:03
蝴蝶扣
Rank: 2
等 级:论坛游民
威 望:1
帖 子:52
专家分:76
注 册:2016-7-18
得分:0 
回复 2楼 grmmylbs
那应该怎么定义这个数组呢?我是一个初学者,期待您的指教!
2016-07-20 18:40
大肥狗
Rank: 2
等 级:论坛游民
帖 子:3
专家分:20
注 册:2016-7-20
得分:0 
你把int a[]={0};改写成int a[100];就可以了,不需要设初始值,100也可以换别的数,但要保证比n大。
2016-07-20 19:42
蝴蝶扣
Rank: 2
等 级:论坛游民
威 望:1
帖 子:52
专家分:76
注 册:2016-7-18
得分:0 
回复 4楼 大肥狗
非常感谢你,我试过了,运行没有问题了,这种定义数组的方法我记下了。谢谢你~
2016-07-20 21:19



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




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

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