百韵网 >>  正文

C语言:写一函数,用“冒泡法”对输入的10个字符按由小到大顺序排列 用C语言写一个函数,用冒泡法对输入的10个字符按由小到大的顺...

来源:www.baiyundou.net   日期:较早时间

1、打开Visual stdio 2019软件新建空白c文件,在源文件处右击鼠标,选择添加下面的新建项,此时会弹出窗口:

2、弹出的窗口选择C++文件,将文件扩展名改为“.c”点击添加完成新建c文件,之后就可以编写程序了:

3、接下来就可以编写程序了,首先最前面的部分为输入数字的部分,之后的程序会对用户输入的数字就行排序,最后则是将结果打印出来。冒泡排序需要用到两层循环,第一层循环遍历数组中的元素,第二层则进行两两比较,如果顺序不对就要对其进行换位,直到排序完成:

4、最后执行程序观察结果,按下crtl+F5弹出程序,随意输入10个数,按下回车键执行结果,此时就可以看到排序后的结果了。以上就是c语言冒泡排序程序的演示:



#include<stdio.h>
#include<string.h>
void maopaofa(char x[],int y)
{
int i;
int j;
char t;
for(i=0;i<y;i++)
for(j=0;j<y-1;j++)
{
if(x[j]>x[j+1])
{
t=x[j];
x[j]=x[j+1];
x[j+1]=t;
}
}
}
int main()
{
char a[100];
int i;
gets(a);
int l=strlen(a);
maopaofa(a,l);
for(i=0;i<l;i++)
{
printf("%c",a[i]);
}
return 0;
}

#include "stdio.h"
main()
{
int a[10],i,j,t;
for (i=0;i<10;i++)
scanf("%d",&a[i]);

for (j=1;j<10;j++)
for (i=0;i<10-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]);

}

char a[] = "6931280457", c;
int i, j;
for(i = 0; i < 10; ++i)
for(j = 9; j > i; --j)
if(a[j] < a[i])
{c = a[i]; a[i] = a[j]; a[j] = c;}
还不错,希望你采纳。

#include "stdio.h"
void sort(char *d,int n)
{
int i,j;
char temp;
for(i=0;i<n-1;i++)
{
for(j=n-1;j>i;j--)
{
if(d[j]<d[j-1])
{
temp=d[j];d[j]=d[j-1];d[j-1]=temp;
}
}
}
}
int main()
{
char d[100];
int i;
for(i=0;i<10;i++)
scanf("%c",&d[i]);
sort(d,10);
for(i=0;i<10;i++)
printf("%c",d[i]);
}

用C语言写一个函数,用冒泡法对输入的10个字符按由小到大的顺序排列~

maopao(int a[],int num)
{
int i,j,temp;
printf("
mao pao pai xu
");
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;
}
}
其接受的实参为一个数组和这个数组元素个数。


全过程
#include
void main()
{
char c;int x; int a[100];
int i=0,j,num,temp;
clrscr();
printf("please some integers:
");
scanf("%d", &x);
c=getchar();
while(c!='#')
{ a[i]=x;
scanf("%d", &x);
c=getchar();
i++;
num=i-1;
}
if(num==0)
{
printf("
You should give at least two integers!");
exit(0);
}
printf("The integers you input:
");
for(i=0;i<=num;i++)
{printf("%-5d",a[i]);
if(i%5==4) printf("
");}
printf("
mao pao pai xu
");
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("
");}
printf("
xuan ze pai xu
");
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("
");}
getch();
}


不过这是冒泡和选择都有的,你把选择那段程序删了就行了。这是可以通过TC的。

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

2、定义变量类型。

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

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

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

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

7、定义变量类型。

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

9、编译,执行即可。

相关要点总结:

18648365847:C语言:写一函数,用“冒泡法”对输入的10个字符按由小到大顺序排列_百度...
敖桑答:1、打开Visual stdio 2019软件新建空白c文件,在源文件处右击鼠标,选择添加下面的新建项,此时会弹出窗口:2、弹出的窗口选择C++文件,将文件扩展名改为“.c”点击添加完成新建c文件,之后就可以编写程序了:3、接下来就可以编写程序了,首先最前面的部分为输入数字的部分,之后的程序会对用户输入的数字...

18648365847:c语言。使用冒泡法,对输入的20个整数从小到大进行排序。20个整数用s...
敖桑答:include "stdio.h"main(){ int i,j,w[20];printf("请分别输入20个学生的成绩");for(i=0;i<20;i++) scanf("%d",&w[i]);for (i=0;i<20;i++)for (j=i;j<20;j++)if (w[i]>w[j]){int temp=w[j]; w[j]=w[i]; w[i]=temp; } for(i=0;i<20;i++) prin...

18648365847:c语言,写一个函数,用起泡法对输入的10个字符按从小到大顺序排列_百度知 ...
敖桑答:void sort(char s[], int n); //定义排序函数 int main(){ char str[11];printf("Please enter 10 charactor: "); //输入10个字符 gets(str);sort(str, 10); //调用排序函数 system("pause");return 0;} //排序函数(起泡法)void sort(char s[], int n){ for (int ...

18648365847:C语言:有二维数组a[N][M],用冒泡排序法对二维数组中的每一行数据进行由...
敖桑答:void px( int *a, int n ) //冒泡排序函数 { int i,j,t;for( i=0;i<n-1;i++)for( j=0;j<n-1-i;j++)if ( a[j] > a[j+1] ){ t=a[j];a[j]=a[j+1];a[j+1]=t;} } void main(){ int a[N][M];int i,j;for( i=0;i<N;i++ ){ px( a[i], ...

18648365847:c语言编程题:分别用冒泡法和选择法对输入的10个整数由大到小排序_百度...
敖桑答:void maopao(int *a){ int temp=0;for(int i=0;i<10-1;++i)//只需要冒泡9个数最后一个就已经有序了 for(int j=0;j<10-i-1;++j)//j的取值需<10-i-1;为何-1,if(a[j]<a[j+1]){ temp=a[j];a[j]=a[j+1];a[j+1]=temp;} } void xuanze(int *a){ for(int...

18648365847:写一个函数,用“起泡法”对输入的10个字符按由小到大顺序排列。_百度知 ...
敖桑答:include<stdio.h> int main(){ int a[10],i,j,temp;for(i=0;i<10;i++){ printf("请输入a[%d]=",i);scanf("%d",&a);fflush(stdin);} printf("排序前:");for(i=0;i<10;i++){ printf("a[%d]=%d",i,a);} printf("\n");for(i=9;i>=0;i--){ for(j=0;j<=...

18648365847:C语言从键盘输入10个数,使用冒泡法对这10个数进行排序。要求使用指针...
敖桑答:voidBubbleSort(inta[],intn){ int i,j,temp,flag=1;for(i=0;i<n-1&&flag;i++)//比较的趟数 { flag=0;//未进行比较,将flag置0 for(j=0;j<n-1-i;j++)//每趟比较的次数 if(a[j]>a[j+1])//由小到大排序 { temp=a[j];a...

18648365847:用冒泡排序法对输入的10个数进行升序排序 并存入数组中
敖桑答:C语言程序如下;include <stdio.h> define ARR_LEN 255 /*数组长度上限*/ define elemType int /*元素类型*//* 冒泡排序 */ /* 1. 从当前元素起,向后依次比较每一对相邻元素,若逆序则交换 */ /* 2. 对所有元素均重复以上步骤,直至最后一个元素 */ /* elemType arr[]: 排序目标数组;...

18648365847:C语言题目: 用冒泡法对任意输入的10个整数由小到大的顺序排序
敖桑答:1、新建一个工程和.c文件。2、定义变量类型。3、用一个for语句遍历整个数组。4、引入一个子函数,该子函数的作用是调整数组元素的顺序,使之由小到大排列。5、最后通过for函数一次输出调整后的数组元素。6、介绍一下子函数的实现语句,首先定义子函数。7、定义变量类型。8、该子函数实现顺序的调整。...

18648365847:在C语言中如何用冒泡法,输入10个人的序号和成绩,对成绩从大到小进行...
敖桑答:int main(){int a[10];int b[10];int i,j,t;printf("num score\n");for(i=0;i<10;i++){scanf("%d%d",&b[i],&a[i]);//输入值 printf("\n");} 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;t=b...

(编辑:本站网友)
相关推荐
关于我们 | 客户服务 | 服务条款 | 联系我们 | 免责声明 | 网站地图
@ 百韵网