要求:
先显示原来生成的这组数据;
然后显示排序后的结果(每行10个);
根据输入确定其中的第i个数据。 我做了这个,但是不知道怎么改成每行10个,能不能教我改下,谢谢!
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
int main()
{
int nums[301],num[301];
int x,t,i,j;
srand(time(NULL));
for (i=1;i<=300;i++)
{
nums[i] = rand();
num[i]=nums[i];
}
for (i=1;i<=300;i++)
{
x=i;
for (j=i+1;j<=300;j++)
if (nums[x]>nums[j]) x=j;
if (x!=i)
{
t=nums[x];
nums[x]=nums[i];
nums[i]=t;
}
}
for (i=1;i<=300;i++)
printf("%d\t%d\n",num[i],nums[i]);
return 0;
}
C语言 随机生成一组数据(300个数,<1000),对这组数据按从大到小顺序进行排序。
答案:3 悬赏:20 手机版
解决时间 2021-03-21 17:47
- 提问者网友:蓝莓格格巫
- 2021-03-21 02:32
最佳答案
- 五星知识达人网友:洒脱疯子
- 2021-03-21 03:27
工具/数据分析/随机数发生器,在对话框中,变量个数,1,表示产生一列数据;随机数个数,根据你的需要输入;分布,选择你要的分布,比如“正态”分布;参数,分别输入,平均值0.026,标准差2;随机数基数,0;输出选项,输出区域,选一个单元格就可以了;确定。得到一组数据。
工具菜单没有,数据分析,应该采用工具/加载宏,进行加载,就可以用。
工具菜单没有,数据分析,应该采用工具/加载宏,进行加载,就可以用。
全部回答
- 1楼网友:我住北渡口
- 2021-03-21 05:55
int j=0;
for (i=1;i<=300;i++){
printf("%d\t%d\n",num[i],nums[i]);
j++;
if(j%10==0){
printf("\n");
}
}
- 2楼网友:持酒劝斜阳
- 2021-03-21 04:20
double 类生成随即比较麻烦 你可以这样 用rand()随即生成一个整数 在除以你要的小数位数 例如除以100就是两位小数 int ran() { double i=0.0; int temp=0; temp=rand()%1000+1; i=temp/100.0; } int main() { srand((int)time(null)); ran(); return 0; }
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯