c语言冒泡排序自定义函数,冒泡排序c语言函数调用

兰州大学C语言程序通过定义函数实现冒泡排序过程?

这个问题我大学考试的时候也遇到过:

创新互联建站是专业的城关网站建设公司,城关接单;提供做网站、成都网站设计,网页设计,网站设计,建网站,PHP网站建设等专业做网站服务;采用PHP框架,可快速的进行城关网站开发网页制作和功能扩展;专业做搜索引擎喜爱的网站,专业的做网站团队,希望更多企业前来合作!

关于将冒泡排序过程单独写成一个函数,再在主函数中通过调用该函数实现对任意输入的多个数据(数据个数不超过100个)进行排序,并输出排序结果。

答案如下:

#include  stdio.h

//冒泡排序

void bubble_sort(int a[],int n);

//输出排序

void output(int a[], int n);

int main()

{

int number[100],count=0;

char y;

printf("请输入任意个数,按回车键结束\n");

do

{

scanf("%d",number[count++]);

}while((y=getchar()) != '\n');// 这里用来判断是否输入了回车

bubble_sort(number,count);

output(number,count);

return 0;

}

答案过程太多了,我只写了一半,剩余的一半在这里!

兰州大学C语言程序通过定义函数实现冒泡排序过程

C语言课程作业,通过定义函数实现冒泡排序过程。

void sortMaopao(int *arr,int n)

{

int i,j,tmp;

if(n100)

return ;

for(i=0;in-1;i++)

{

for(j=i+1;jn;j++)

{

if(*(arr+i)*(arr+j))

{

tmp=*(arr+i);

*(arr+i)=*(arr+j);

*(arr+j)=tmp;

}

}

}

}

这个函数可以帮你实现由大到小排序,如果由小到大的话只需把if(*(arr+i)*(arr+j))这一句里面的 改成 就行了,输出的话可以在主函数调用之后再打印输出就行。

c语言怎么用自定义函数排序

#include stdio.h

#include string.h#define NUM 3

struct student

{

char name[20]; /*姓名*/

long num; /*12位学号*/

double sum; /*总分*/

};

void Create_Students(struct student stu[NUM])

{

struct student *p;

printf("请输入学生姓名 学号(12位) 总分:\n");

for( p = stu; p stu+NUM; p++)

{

scanf("%s %d %lf",p-name,p-num,p-sum); }

}

void Order_Students(struct student stu[NUM])//起泡法

{

int i,j;

struct student temp;

for(i=NUM-1;i=0;i--)

for(j=0;ji;j++)

if(stu[j].sumstu[j+1].sum)

{

temp = stu[j];

stu[j] = stu[j+1];

stu[j+1]=temp;

}

}

void main()

{

int i=1;

struct student *p;

struct student stu[NUM];

Create_Students(stu);

Order_Students(stu);

printf("%-20s %-13s %-6s %4s\n","姓名","学号(12位)","总成绩","名次");

for(p=stu;pstu+NUM;p++,i++)

{

printf("%-20s %-13.0d %-8.2f %2d\n",p-name,p-num,p-sum,i);

}

}//你参考参考,嘿


当前题目:c语言冒泡排序自定义函数,冒泡排序c语言函数调用
网页地址:http://myzitong.com/article/hdijhi.html