1、首先打开编辑软件,新建一个c程序空文件,引入标准库和主函数,定义一个QuickSort函数用来排序,下面首先编写排序函数的:
2、此处用到快速排序思想,通过一趟排序将要排序的数据分割成独立的两部分,即这里用i和j两个变量分割数据,然后一部分的所有数据都比另外一部分的所有数据都要小,接着对这两部分数据分别进行比较排序,整个排序过程可以递归进行,以此达到整个数据变成有序序列:
3、接着编写主函数,主函数中定义一个数组,然后用scanf接受数组,用户输入10个数以后,会将数存在数组array中,然后调用上面处理排序的函数,函数的输入就是刚才输入的数,最后在把排序的结果输出即可:
4、最后编译运行,输入10个数,最后控制台输出了排序的结果,证明程序的逻辑是没有问题的。以上就是C语言输入10个数排序的演示:
以两种方法为例,分别是冒泡法和选择法。
【一】冒泡法
冒泡法的基本思路:每次将相邻的两个数相比较,将小的调到前头。
如果有n个数,则要进行n-1趟比较。在第一趟中要进行n-1次两两比较,在第j趟比较中要进行n-j次两两比较。
#include<stdio.h>【二】选择法
选择法的基本思路:将前边的数依次和后边的每个数比较,每次挑出最小的放在前面。
如果有n个数、一共用进行n-1轮比较a[1]~a[n]就已按从小到大的顺序存放了。
#include<stdio.h>C语言 从键盘随机输入10个整数,将他们从小到大排序后输出
include<stdio.h> int main (){ int i,n,k,a[10];for (i=0;i<10;i++)scanf("%d",&a[i]);for (i=0;i<9;i++)for (n=0;n<9-i;n++)if(a[n]>a[n+1]){ k=a[n];a[n]=a[n+1];a[n+1]=k;} for (i=0;i<10;i++)printf("\\n%d",a[i]);printf("\\n...
C语言选择法排序任意输入十个数:(从大到小;从小到大)
main(void){ int i,j,a[10],p=0,t=0,temp;printf("请输入原数组:\\n");for(j=0;j<10;j++)scanf("%d",&a[j]);temp=a[0];for(j=0;j<9;j++){ t=j;temp=a[j];for(i=j+1;i<10;i++)if(temp>a[i]) \/\/这是由小到大排序 如果是大到小则改为 if(temp<a[i])...
C语言~十个数字从小到大怎么排列~从大到小呢~
用数组来存放十个数字,使用“冒泡排序”来实现排序。10个数字需进行9轮扫描,每次扫描时比较相邻的二个数,如它们不符合要求的大小关系,就交换它们的位置。第一轮扫描结束时,最大的数就“沉”到最后。于是第二的范围就少了一个数。再进行第二两栖型、第三轮,…——直到第9轮就完成了。最后输出...
C语言 从键盘输入10个整数,将这10个整数按从小到大的顺序输出。
1、打开软件进入页面,点击文件-新建-文件-C++ Source File。2、输入预处理命令和主函数:#include<stdio.h>\/*输入输出头文件*\/void main()\/*空类型:主函数*\/。3、定义变量和数组的数据输入10个数:int a[10],i,t;\/*定义变量和数组数据类型为整型*\/printf("输入10个整数:");\/*输出文字提...
...从用户输入10个整数,对其按照从小到大的顺序排序,并输出结果。_百度...
include<stdio.h>int main(void){int arr[10];int i,j;for(i = 0;i < 10;i++){scanf(" %d",&arr[i]);}for(i = 0;i < 10;i++){int mini = i;int min = arr[i];int c;for(j=i;j < 10;j++){if(arr[j] < min){min = arr[j];mini = j;}}c = arr[i];...
C语言数组问题:对输入的10个整数按从小到大的顺序排列。麻烦哪位高手...
1,数组定义时,其大小必须是固定值,n应该是一个常数,或者定义一个常数的宏。但绝对不可以是一个变量,哪怕你在前面给n赋值为10.请采纳,如有问题请联络 int main(){ int n,m,p,method;int a[n];
C语言如何输入十个数,按从大到小顺序排列!
printf("请输入十个数:");for (i = 0; i < 10; i++)scanf("%d",&a[i]);for (i = 0; i < 10; i++){ for (j = i + 1; j < 10;j++) \/\/循环 if (a[i] < a[j]){ t = a[i];a[i] = a[j];a[j] = t;} } printf("从大到小排序后:");for (i ...
C语言:采用冒泡排序方法,对10个数按由小到大的的顺序排序
代码如下(对10个整数进行升序排序):include<stdio.h> int main(){ int i,j,t,a[10]={5,4,8,3,6,9,7,222,64,88};\/\/排序 for(i=1;i<10;i++)\/\/外循环控制排序趟数,n个数排n-1趟 { for(j=0;j<10-1;j++)\/\/内循环每趟比较的次数,第j趟比较n-i次 { if(a[j]>a...
...输入10个整数。用选择法或冒泡法将它们从小到大的顺序排序,并以此顺 ...
int s[10],t,i,j,x;printf("input 10 numbers:\\n");for(t=0;t<10;t++)scanf("%d",&s[t]);for(i=0;i<9;i++)for(j=0;j<9-i;j++)if(s[j]>s[j+1]){t=s[j];s[j]=s[j+1];s[j+1]=t;} printf("the result is:\\n ");for(j=0;j<10;j++)printf("%d...
C语言问题:从键盘输入十个数,用冒泡对输入的数据从小到大的顺序进行排序...
include "stdio.h"int main(){int a[10],b;int i,j;for (i = 0; i < 10; i++){printf("输入第%d个数字:",i+1);scanf("%d", &a[i]);getchar();}\/\/冒泡排序for (i = 0; i < 10 - 1; i++){for (j = 0; j < 10-i - 1; j++){if (a[j]>a[j + 1])...