C语言中,从键盘输入10个数,从小到大排列输出,怎么写啊,最好注明语句的意思?
来源:学生作业帮助网 编辑:六六作业网 时间:2025/02/07 09:31:49
C语言中,从键盘输入10个数,从小到大排列输出,怎么写啊,最好注明语句的意思?
C语言中,从键盘输入10个数,从小到大排列输出,怎么写啊,最好注明语句的意思?
C语言中,从键盘输入10个数,从小到大排列输出,怎么写啊,最好注明语句的意思?
#include<stdio.h>
void swap(int *a,int *b)
{
int tmp;
tmp = *a;
*a = *b;
*b = tmp;
}
void bubblesort(int k[],int n)
{ /*冒泡排序*/
int i,j,temp;
int cont = 0;
for(i=0;i<n-1;i++) //控制每趟往前推一个,即少比较一次
{
//flag = 0; //加上flag
for(j=0;j<n-i-1;j++) //从第一个开始,不断与相邻的值比较,并交换最值,一直推到最后,形如冒泡
{
cont++;
if(k[j]>k[j+1])
{
temp = k[j];
k[j] = k[j+1];
k[j+1] = temp;
}
}
}
}
int main()
{
int i,a[10] = {0};
printf("请输入10个数字\n");
for(i = 0; i<10; i++)
{
scanf("%d",&a[i]);
}
printf("The data array is\n") ;
for(i=0;i<10;i++) /*显示原序列之中的元素*/
printf("%d ",a[i]);
bubblesort(a,10); /*执行冒泡排序*/
printf("\nThe result of bubble sorting for the array is\n");
for(i=0;i<10;i++)
printf("%d ",a[i]); /*输出排序后的结果*/
printf("\n");
return 0;
}
亲测