#include<stdio.h>
#include<stdlib.h>
#include<time.h>
int main()
{
int a[20],z;
int i,j,x=0;
srand(time(NULL));//播种一次可生成多个数
for(i=0;i<20;i++)
{
a[i]=rand()%100+10;// 生成20个两位整数的随机数
//printf("%d “,a[i]);
}
for(i=0;i<20;i++)//冒泡排序:将第i+1个数依次与后面的数比较,若比后面的数大则与其交换;//控制第i+1个数
{
for(j=0;j<20-i;j++)//控制与第i+1个数比较的数
{
if(a[j]>a[j+1]) //大时交换
{
x=a[j];
a[j]=a[j+1];
a[j+1]=x;
}
}
}
//for(i=0;i<20;i++)
//printf(”%d",a[20]);// 1 4 7 8 10
printf(“请输入一个2位整数:”);
scanf("%d",&z);
for(i=0;i<20;i++) //循环比较插入数与数组元素的大小
{
if(z>a[i])//大时则确认插入插入位置
continue;
j=20-1; //j是下标值
while(j>=i) //将i之后的数据都往后移
{
a[j+1]=a[j]; //将下标为j的元素赋值给下标为j+1的元素
j–; //从j开始后移至i
}
a[i]=z; //插入数据
break;
}
for(i=0;i<21;i++) //输出数组
printf("%d ",a[i]);
return 1;
}
生成随机数并赋值给数据中的元素+冒泡排序
最新推荐文章于 2020-12-28 22:15:41 发布