c语言选择排序法降序
答:include<stdio.h>void Sort(int *a,int n) {int *p,*q,*v,t;for(p = a;p < a + n - 1;++p) {v = p;for(q = p + 1; q < a + n; ++q)if(*v > *q) v = q;if(*p != *v) {t = *p;*p = *v;*v = t;}}}void Show(int *a,int n) {int i;for(...
答:1、选择排序法 要求输入10个整数,从大到小排序输出 输入:2 0 3 -4 8 9 5 1 7 6 输出:9 8 7 6 5 3 2 1 0 -4 代码:include<stdio.h> int main(int argc,const char*argv[]){ int num[10],i,j,k,l,temp;//用一个数组保存输入的数据 for(i=0;i<=9;i++){ scanf(...
答:2、接下来用scanf函数输入的10个数,将输入的数存入到变量a中,接着进行比较排序,如果后一个数比前一个数大则利用中间变量t实现俩值互换,最后输出排序的结果: 3、编译运行程序,输入任意的10个数,回车后即可看到排序后的结果。以上就是c语言中选择排序的用法: 抢首赞 已赞过 已踩过< 你对这个回答的评价是?
答:for(i=0;i<n-1;i++)//选择排序 { min=i;for(j=i+1;j<n;j++)if(a[j]<a[min])min=j;if(i!=min){ t=a[i];a[i]=a[min];a[min]=t;} } printf ("排好序的数据为:\n");for (i=0;i<n;i++){ printf ("%2d ",a[i]);if (k%5==0)printf ("\n");k++...
答:include <stdio.h>void sort(int*arr,int n);int main(int argc, char *argv[]){int i;int arr[8] = {12,67,122,0,-12,675,100,11};sort(arr,8);for(i=0;i<8;++i)printf("%d ",arr[i]);return 0;}//冒泡排序 :降序//arr:待排序的数组//n:数组的长度 void sort(...
答:include<stdio.h>#include<stdlib.h>#includeint sort1(int *d,int n){int i,j,temp;for(i=0;i<n;i++){for(j=0;j<n-i-1;j++){if(d[j+1]>d[j]){temp=d[j+1];d[j+1]=d[j];d[j]=temp;}}}return 0;}int sort2(int *d,int n){int i,j,temp;for(i=0;i<...
答:有两处错误:1:s[i]-->s[max]2:第二段代码,应该是在第二重循环执行完之后。不理解可以追问
答:include <stdio.h> include <stdlib.h> include int main(){ float a[40],t;int i,j,k;srand(time(0));for(i=0; i<40; i++){ a[i]=rand()%1001/10.0;printf("%8g",a[i]);} printf("排序以后:\n");for(i=0; i<39; i++){ k=i;for(j=i+1; j<40; j++)i...
答:算法特点:每趟是选出一个最值确定其在结果序列中的位置,确定元素的位置是从前往后,而每趟最多进行一次交换,其余元素的相对位置不变。可进行降序排序或升序排序。三、插入法 算法要求:用插入排序法对10个整数进行降序排序。算法分析:将序列分为有序序列和无序列,依次从无序序列中取出元素值插入到...
答://思路:直接生成随机浮点数并排序有点麻烦。所以,先生随机整数,排序,再将每个数同//时除以100,形成浮点数。当然,也可以除以10,1000之类的。自己喜欢.#include <iostream>#include <ctime>#define N 10 //数组预定义大小,请自行更改using namespace std;void Bubble(int *a, int n){ //...
网友评论:
喻蔡18663221948:
用C语言 任选一种排序法,将20个数降序(排序)输出 -
42490须嵇
: #include<stdio.h> void main() { int i,j; int k,a[20]={0},*p=a; printf("please input a[20]:"); for(i=0;i<20;i++)scanf("%d",&a[i]); for(i=0;i<20;i++) for(j=i;j<20;j++) if(*(p+i)<*(p+j)) { k=*(p+i); *(p+i)=*(p+j); *(p+j)=k; } printf("the result is:"); for(i=0;i<20;i++) ...
喻蔡18663221948:
c语言中按单科降序(选择)排序 -
42490须嵇
: void Sort_sub(Student *s,int n) //按单科降序(选择)排序 {int i,j;char t[10];s=head;for(i=0;i<n-1;i++){for(j=0;j<n-1-i;j++){if(strcmp(s->num,s->next->num)>0){strcpy(t,s->next->cgrade);strcpy(s->next->cgrade,s->cgrade);strcpy(s->cgrade,t); ...
喻蔡18663221948:
用C语言编写程序,输入一个正整数n(1<n<=10),再输入n个整数,将这n个数降序排列后输出(请用选择排序法 -
42490须嵇
: #include "stdio.h"int main() {int i,j,n;int a[12];int min,mx;scanf("%d",&n);for(i=0;i<n;i++){scanf("%d",&a[i]);}for(i=0;i<n;i++){min=a[i];mx=i;for(j=i+1;j<n;j++){if(a[j]>min){min=a[j];mx=j;}}j=a[i];a[i]=a[mx];a[mx]=j;}for(i=0;...
喻蔡18663221948:
c语言 选择法对10个整数降序排列 -
42490须嵇
: #include "stdio.h"// #include <stdlib.h>// #include <time.h>// void Selectsort(int *p){int i,j,k;for(i=0;i<10;i++){k=i;for(j=k+1;j<10;j++)if(*(p+k)<*(p+j)) k=j;j=*(p+i);*(p+i)=*(p+k);*(p+k)=j;} }void main(void){int a[10],i;srand((unsigned)time(...
喻蔡18663221948:
用C语言编个程序:写一函数,用“选择法”对8个整数进行排序(降序) ,怎么编?哪个高手可以帮下啊 -
42490须嵇
: #include "stdio.h" void select_sort(int a[],int n) { int i,j,k,temp; for(i=0;i<n-1;i++) { k=i; for(j=i+1;j<n;j++) { if(a[j]>a[k])//将这里改成a[j]<a[k]就是按升序排序 { k=j; temp=a[i]; a[i]=a[k]; a[k]=temp; } } } }//定义选择排序函数 int main() {int i; int a[8]; printf...
喻蔡18663221948:
用c语言编写给定10个元素,用选择法对中间8个元素进行降序排列 -
42490须嵇
: #include <stdio.h> void SelectionSort(int *a, int n) { int i,j; int max; int t; for(i = 1; i < n-2; i ++) { int max = i; for(j = i+1; j < n-1; j ++) if(a[max] < a[j]) { max = j; } t = a[max]; a[max] = a[i]; a[i] = t; } } int main(void) { int i; int a[10] = {-9,8,7,6,-5,4,3,2,-1,0}; ...
喻蔡18663221948:
C语言编程,选择排序,输入n个整数,对其进行降序排序,n由键盘输入 -
42490须嵇
: #include void main() { int *a, i,j,n; scanf("%d",&n); a = (int*)malloc(sizeof(int)); for(i = 0; i{ int t; scanf("%d",&t); for(j = i-1; j>=0; j ++) if(t else a[j+1] = a[j]; a[j+1] = t; } for(i = 0; iprintf("%d ",a[i]); }
喻蔡18663221948:
c语言 选择法排序 -
42490须嵇
: void sa(int array[],int n) {int i,j,k,temp;for(i=0;i<10;i++){k=i; //保存i的值,用k来进行循环排序for(j=i+1;j<n;j++) //将第i个元素后面的元素与第i个元素进行比较if(array[j]<array[k]) //如果第k=i个元素后面的元素小于i号元素,交换两个元素的标号...
喻蔡18663221948:
关于C语言进行降序排列 -
42490须嵇
: #include "stdio.h" void sort(int *p) {int i,j,k;for (i=0;i<9;i++)for (j=i+1;j<10;j++)if (p[i]<p[j]) {k=p[i];p[i]=p[j];p[j]=k;} }main() {int a[10],i;for (i=0;i<10;i++)scanf("%d",&a[i]);sort(a); }
喻蔡18663221948:
C语言编程:使用选择排序法对一维数组(63,12,4,48,23,81,5,45)按降序进行排序 -
42490须嵇
: #include <stdio.h> void main() { int a[8] = {63, 12, 4, 48, 23, 81, 5, 45}; int i, j, max, t; for (i = 0; i < 7; i++) { max = i; for (j = i + 1; j < 8; j++) { if (a[max] < a[j]) max = j; if (max != i) { t = a[max]; a[max] = a[i]; a[i] = t; } } } for (i = 0; i < 8; i++) { printf("%d \n", a[i]); } }