编写程序:随机产生10个整数并存入数组中,用"选择排序法"对数组中的随机数进行升序排序.怎么做?

随机产生10个整数并存入数组中,用“选择排序法”对数组中的随机数进行升序排序。(产生随机数的函数为rand(),srand(),头文件为stdlib.h。用法:for(int i=0;i<10;i++){srand(i);a[i]=rand();})

#include<stdio.h>
void main()
{
 int a[10],i,j,t,k;
 
 for(int i=0;i<10;i++)
 {srand(i);a[i]=rand();}
 
 for(i=0;i<10-1;i++)
 {
  for(k=i,j=i+1;j<10;j++)
   if(a[k]<a[j])
    k=j;
   if(i!=k)
   {
    t=a[i];
    a[i]=a[k];
    a[k]=t;
   }
 }
   for(i=0;i<10;i++)
    printf("%d ",a[i]);
}

追问

有点问题,说“i”没有申明?
C:\Documents and Settings\Administrator\桌面\HCY\2222.cpp(6) : error C2086: 'i' : redefinition 说的就是这个

追答 for(int i=0;i<10;i++) // 去掉int

追问

C:\11111111111.cpp(7) : error C2065: 'srand' : undeclared identifier
C:\11111111111.cpp(8) : error C2065: 'rand' : undeclared identifier
改了之后又是这个说明?怎么解决?

追答{srand(i);a[i]=rand();} // 改成{a[i]=rand();}试试

追问

C:\Documents and Settings\Administrator\桌面\HCY\11111111111.cpp(8) : error C2065: 'rand' : undeclared identifier
还是这个问题?

追答

#include
头文件没有包含

追问

ok了,太感谢了

温馨提示:内容为网友见解,仅供参考
无其他回答

编写程序:随机产生10个整数并存入数组中,用"选择排序法"对数组中的随机...
include<stdio.h>void main(){ int a[10],i,j,t,k; for(int i=0;i<10;i++) {srand(i);a[i]=rand();} for(i=0;i<10-1;i++) { for(k=i,j=i+1;j<10;j++) if(a[k]<a[j]) k=j; if(i!=k) { t=a[i]; a[i]=a[k]; a[k]...

VB中“随机产生10个数,用选择法对10个数进行从小到大排序”要怎么做啊...
Dim arr(0 To 9) As Integer Private Sub Form_Load()Dim i, j, k Randomize For i = 0 To 9 arr(i) = Int(Rnd * 100)Debug.Print arr(i);Next i Debug.Print For i = 0 To 9 k = i For j = i + 1 To 9 If arr(k) > arr(j) Then k = j Next j If k <> ...

自动生成10个整数(1~100),求出生成数组中的最大值和最小值,以及显示排...
srand((unsigned)time(NULL));for(i=0;i<10;a[i++]=rand()%100+1);\/\/生成10个随机数保存于数组 for(i=0;i<10;i++)\/\/冒泡升序排序并求最大最小值 for(j=0;j<9;j++)if(a[j]>a[j+1])k=a[j],a[j]=a[j+1],a[j+1]=k;printf("The MAX is %d\\nThe MIN is %d\\...

用随机数函数产生10个40内的整数,使用快速选择排序法从小到大排序
Option Explicit Dim 数值(0 To 9) As IntegerPrivate Sub Command1_Click()Dim i As Integer Cls For i = 0 To 9 数值(i) = Rnd * 40 Print 数值(i)Next i End SubPrivate Sub Form_Load()Randomize End SubPrivate Sub Command2_Click()Dim i As Integer, j As Integer, tmp As ...

随机产生十个10-100的整数,用选择排序法按值从小到大顺序排序,我是学VB...
Dim su(1 To 10) As Integer '定义数组 '产生随机数 For i = 1 To 10 su(i) = Rnd * 90 + 10 '产生10-100的数 Print su(i);Next Print '排序 '这样好像是选择排序吧,先选一个最小的数放在前面 For i = 1 To 9 For j = i To 10 If su(i) > su(j) Then t = su(...

...用多重循环做随机产生10个数,用冒泡,选择,插入三种方法按从小到大...
end 选择排序 a[1]~a[10]:10个随机数 b[1]~b[10]:空数列 for i= 10 downto 1 do {x=1 for j= 1 to i do [if a[j]>a[x] then x=j ]b[i]=a[x]} 插入排序 用指针很方便,数组麻烦。a[1]~a[10]:10个随机数 b:空链表 b=a[1]for i =2 to 10 do { while (...

...20]的随机整数,将其放入到数组中,用选择排序法将数组按从小到大的...
include \/\/随机数用到srand函数,我们用当前时钟生成种子来用,所以要这个头文件 define N 9 \/\/定义数据个数,下面程序都用这个定义来做 void main(){ int a[N],i,j,k; srand((unsigned int)time(NULL)); \/\/给随机数一个种子,使每次生成的都不同 for ( i=0;i<N;i++ ) a[i]=...

C语言 编一个程序,产生0-100随机数,然后用选择排序法,从小到大排列
int main(void){ int nDec[100],i,j,k;srand((unsigned)time(NULL));for(i=0;i<100;nDec[i++]=rand());for(i=0;i<100;i++){ for(k=i,j=k+1;j<100;j++)if(nDec[k]>nDec[j]) k=j;if(i!=k){ j=nDec[i];nDec[i]=nDec[k];nDec[k]=j;} printf("%d ",nDec[...

随机生成十个1到50这个区间范围内不相同的整数,分别运用选择排序法和冒...
冒泡排序法:include<stdio.h> include<stdlib.h> include int main(){ srand((unsigned)time(NULL));int i,j,t,a[10];for(i = 0; i < 10; ++i){ a[i]=rand() % 50 + 1;} for(i=0;i<9;i++){ for(j=0;j<9-i;j++){ if(a[j]>a[j+1]){ t=a[j];a[j]=a...

VB程序设计习题:用选择排序法,利用随机数产生20个1~100的整数,并按照...
arr(i) = Int(Rnd * 101)Next fc arr Print Join(arr, vbNewLine) '自己修改,我是直接打印的可以分开 End Sub Function fc(arr)Dim i, j, t For i = LBound(arr) To UBound(arr) - 1 For j = i + 1 To UBound(arr)If Val(arr(i)) < Val(arr(j)) Then t = arr(i): ...

相似回答