随机产生20个正整数存入数组a中,且每个数均在1000-9999之间(包含1000和9999)。对数组进行排序,要求按每个数的后三位的大小进行升序排列,然后取出满足此条件的前10个数放入数组b中,如果
2014-08-01 13:11
831 查看
int a[20]={0}; int b[10] = {0}; printf("随机数为:"); for (int i = 0; i < 20; i++) { a[i] =arc4random() % (9999 - 1000 + 1) + 1000; printf("%d ",a[i]); } //对数组a进行冒泡排序 for (int i = 0 ; i < 20 - 1; i ++) { for (int j = 0 ; j < 20 - 1 -i; j++) { if (a[j] % 1000 > a[j + 1] % 1000) { int temp = a[j]; a[j] = a[j +1]; a[j + 1] = temp; } } } int count =0; for (int i = 0;i < 20; i++) { for (int j = 0; j < 20; j ++) { if (a[i] %1000 ==a[i +j]%1000) { count++;//记录后三位相等时的个数 } } //对后三位相等的数在进行一次冒泡排序 for (int k = 0; k < count -1 ; k ++) { for (int m = i; m < i + count -1-k; m++) { if (a[m] < a[m+1]) { int temp = a[m]; a[m] = a[m +1]; a[m + 1] =temp; } } } count=0;//将其值赋为0 } for (int i = 0 ; i < 10; i++) { b[i] = a[i];//将a的前10个数赋值给b } printf("\n"); printf("排序后为:"); for (int i = 0 ; i < 10; i ++) { printf("%d ",b[i]); }
相关文章推荐
- 随机产生20个正整数存入数组a中,且每个数均在1000-9999之间(包含1000和9999)。对数组进行排序,要求按每个数的后三位的大小进行升序排列,然后取出满足此条件的前10个数放入数组b中,如果
- 随机产生20个正整数存入数组a中,且每个数均在1000-9999之间(包含1000和9999)。对数组进行排序,要求按每个数的后三位的大小进行升序排列,然后取出满足此条件的前10个数放入数组b中,如果
- 随机产生20个正整数存入数组a中,且每个数均在1000-9999之间(包含1000和9999)。对数组进行排序,要求按每个数的后三位的大小进行升序排列,然后取出满足此条件的前10个数放入数组b中,如果
- C语随机产生20个正整数存入数组a中,且每个数均在1000-9999之间(包含1000和9999)。对数组进行排序,要求按每个数的后三位的大小进行升序排列,然后取出满足此条件的前10个数放入数组b中,
- 随机产生20个正整数存入数组a中,且每个数均在1000-9999之间(包含1000和9999)。对数组进行排序,要求按每个数的后三位的大小进行升序排列,然后取出满足此条件的前10个数放入数组b中,如
- 编写程序实现以下功能: 随机产生20个正整数存入数组a中,且每个数均在1000-9999之间(包含1000和9999)。对数组进行排序,要求按每个数的后三位的大小进行升序排列,然后取出满足此条
- 用3位以内的随机整数填充长度为20的整型数组,然后使用冒泡排序法按升序进行排序,输出排序后的数组元素(每行输出10个元素)。
- 求出所有这些四位数是素数的个数cnt,再把所有满足此条件的四位数依次存入数组b中,然后对数组b中的四位数按从小到大的顺序进行排序
- 求出千位数上的数加百位数上的数等于十位数上的数加个位数上的数的个数cnt,再把所有满足条件的四位数依次存入数组b中,然后对数组b中的四位数按从大到小的顺序进行排序。
- 设计一个类,该类中有一个方法,该方法使用Random类随机产生10个三位数字(如636)的随机数,并把产生的10个随机数存入数组中。然后在另一个类中输出这10个数
- 1.给出一个Person类里面包含姓名、年龄、成绩,声明5个Person对象数组,要求对数组中的内容进行排序,排序规则如下:按成绩由高到低排序,如果成绩一样,按年龄由高到低排序。
- 定义一个有10个空间的整型数组,数组中的每个位置存放8-98之间的随机偶数, 输出这个数组中的每个数,再排序,排序后再输出。
- flash中随机产生20-100之间10个不同的数字,然后不能重复地随机取出这十个数字
- 定义一个int型的一维数组,包含40个元素,用来存储每个学员的成绩,循环产生40个 0~100之间的随机整数,将它们存储到一维数组中,
- 编写程序,生成一个包含20个随机整数的列表,然后对其中偶数下标的元素进行降序排列,基数下标的元素不变
- 随机产生12个5~15之间的整数放入一位数组中,然后输出这些数,每行输出四个数
- 有一个数组,包含10个整数,编写代码对前5个数进行升序排序,后5个数进行降序排序。
- 随机10个100到200之间的整数,将这些数放入数组中,打印数组,再使用 3种排序。
- c语言实现二维数组排序,一个4*5的数组,要求每行都进行升序排列,并求出每行的平均值。
- 随机产生12个5到15之间的整数放入一维数组中,然后将这些数输出,每行输出4个数