C语言题目: 用冒泡法对任意输入的10个整数由小到大的顺序排序

如题所述

1、新建一个工程和.c文件。

2、定义变量类型。

3、用一个for语句遍历整个数组。

4、引入一个子函数,该子函数的作用是调整数组元素的顺序,使之由小到大排列。

5、最后通过for函数一次输出调整后的数组元素。

6、介绍一下子函数的实现语句,首先定义子函数。

7、定义变量类型。

8、该子函数实现顺序的调整。

9、编译,执行即可。

温馨提示:内容为网友见解,仅供参考
第1个回答  2019-11-13

#include<stdio.h>

voidmain()

{

charc;intx;inta[100];

inti=0,j,num,temp;

clrscr();

printf("pleasesomeintegers:\n");

scanf("%d",&x);

c=getchar();

while(c!='#')

{a[i]=x;

scanf("%d",&x);

c=getchar();

i++;

num=i-1;

}

if(num==0)

{

printf("\nYoushouldgiveatleasttwointegers!");

exit(0);

}

printf("Theintegersyouinput:\n");

for(i=0;i<=num;i++)

{printf("%-5d",a[i]);

if(i%5==4)printf("\n");}

printf("\nmaopaopaixu\n");

for(i=0;i<=num;i++)

for(j=0;j<=num-1;j++)

if(a[j]>a[j+1])

{

temp=a[j+1];

a[j+1]=a[j];

a[j]=temp;

}

for(i=0;i<=num;i++)

{printf("%-5d",a[i]);

if(i%5==4)printf("\n");}

printf("\nxuanzepaixu\n");

for(i=0;i<=num;i++)

for(j=i+1;j<=num;j++)

if(a[i]>a[j])

{

temp=a[i];

a[i]=a[j];

a[j]=temp;

}

for(i=0;i<=num;i++)

{printf("%-5d",a[i]);

if(i%5==4)printf("\n");}

getch();

}

扩展资料

用“起泡法”,对输入的10个字符由小到大排序。

#include<stdio.h>

#include<string.h>

intmain(void){

voidsort(chara[10]);//声明函数

chara[10];

inti;

printf("输入10个字符,中间不要有空格:\n");

for(i=0;i<10;i++){

scanf("%c",&a[i]);

}

sort(a);//调用函数

return0;

}

voidsort(chara[10]){

intj;//外循环,控制趟数

inti;//内循环,控制次数

chart;

for(j=0;j<9;j++){

for(i=0;i<9-j;i++){

if(a[i]>a[i+1]){

t=a[i];

a[i]=a[i+1];

a[i+1]=t;

}

}

}

for(i=0;i<10;i++){

printf("%c",a[i]);

}

}

本回答被网友采纳
第2个回答  2017-07-02

C语言程序:

#include <stdio.h>

/* 冒泡排序,非递减有序 */
void sort(int arr[], int n)
{
int i, j;
int temp;

for(i=0; i<n-1; i++)
{
for(j=0; j<n-1-i; j++)
if(arr[j] > arr[j+1])
{
temp = arr[j];
arr[j] = arr[j+1];
arr[j+1] = temp;
}
}
}

void main()
{
int arr[10];
int i, n = 10;

printf("请输入10个整数:");
for(i=0; i<n; i++)
scanf("%d", &arr[i]);

sort(arr, n);

printf("排序后:\n");
for(i=0; i<n; i++)
printf("%d ", arr[i]);
printf("\n");
}


运行测试:

请输入10个整数:4 5 6 7 1 2 3 0 9 8
排序后:
0 1 2 3 4 5 6 7 8 9

本回答被提问者和网友采纳

C语言:采用冒泡排序方法,对10个数按由小到大的的顺序排序
{ 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[j+1])\/\/相邻元素比较,逆序则交换 { t=a[j];a[j]=a[j+1...

用C语言,随机输入10个整数,用冒泡排序法对这些整数进行从小到大排序...
int a[10];int b[10]={9,10,11,12,1,2,3,4,0,1};int c[10]={1,2,3,4,13,14,15,16,2,3};int i;printf("请输入待排序的10个数:");for(i=0;i<10;i++){ scanf("%d",&a[i]);} fun(a);printf("\\n排序后的数列如下:\\n");for(i=0;i<10;i++){ printf("...

C语言:写一函数,用“冒泡法”对输入的10个字符按由小到大顺序排列
4、最后执行程序观察结果,按下crtl+F5弹出程序,随意输入10个数,按下回车键执行结果,此时就可以看到排序后的结果了。以上就是c语言冒泡排序程序的演示:

C语言冒泡法排序:任意输入十个数排序(从小到大;从大到小)
printf("排序后:\\n");for(i=0;i<N;i++)printf("%6.1f",a[i]);printf("\\n");} 从小到大:if(a[j]a[j+1])即 include<stdio.h> define N 10 void main(){ int i,j;float a[N],t;printf("排序前:\\n");for(i=0;i<N;i++){ scanf("%d",&a[i]);} for(i=0;...

在c语言编程中如何将1-10的数从小到大排列。
冒泡法:顾名思义,就是把小的数据向前排,也就是向上浮起,并因此进行排序。例:include "stdio.h" 包含头文件 void main() 主函数 { int a[10],t,i,j; 定义要用的数据和数祖 printf("input the ten number:\\n"); 显示输出 for(i=0;i<10;i++)scanf("%d",&a[i]); 利用循环...

用冒泡排序法对10个整数按照由小到大的顺序进行排序
{ t=a[i];a[i]=a[i+1];a[i+1]=t;} } for (i=0;i<10;i++)printf("%-3d",a[i]);printf("\\n");return 0; \/\/从小到大 } } 例如这样就行,当然你也可以不事先定义十个数,而是对输入的十个数排序,做小小改变for(i=0;i<10;i++)scanf("%d",&a[i]);

C语言从键盘输入10个数,使用冒泡法对这10个数进行排序。要求使用指针...
if(a[j]>a[j+1])//由小到大排序 { temp=a[j];a[j]=a[j+1];a[j+1]=temp;flag=1;//若进行了比较,则将flag置1 } } } void main(){ int a[10],i;printf("pleaseinput10numbers:\n");for(i=0;i<10;i++)scanf("%d",...

输入10个数,用冒泡排序法按由小到大顺序排序并输出??c语言的
冒泡排序的程序代码如下:include<stdio.h> int main(){ int a[10]={0};int i=0,j=0,t=0;for(i=0;i<10;i++){scanf("%d",&a[i]);} for(i=0;i<10;i++){for(j=0;j<10-i;j++){ if(a[j]>a[j+1]){ t=a[j];a[j]=a[j+1];a[j+1]=t;}}} for(i=0;i...

C语言:冒泡排序法将数组中10个元素从小到大排序,并找出最小值?
int main(){ int a[11],min=0,t;for(int i=0;i<10;i++)scanf("%d",&a[i]);min=a[0];for(int i=0;i<10;i++)if(a[i]<min)\/\/求最小值 min=a[i];for(int i=0;i<10;i++)\/\/冒泡排序 for(int j=0;j<9-i;j++)if(a[j]>a[j+1]){ t=a[j];a[j]=a[j...

c语言编写程序,对产生的10个随机数用冒泡排序法实现由小到大排序。
include <stdlib.h>#include void main(){int i,j,t,a[10];srand(time(NULL));for(i=0;i<10;i++)a[i]=rand();for(j=0;j<10;j++)for(i=0;i<9-j;i++)if(a[i]>a[i+1]){t=a[i];a[i]=a[i+1];a[i+1]=t;}for(i=0;i<10;i++)printf("%d ",a[i]);}...

相似回答