
正文
c语言降序函数怎么写 c语言升降序排序数据
提示:扫一扫查出行【扫一扫了解最新限行尾号】
复制提示
关于C语言进行降序排列
#include "stdio.h"
#define MAX 10
void sort(int *p,int n)
{int i,j;
int temp; //记录每一轮比较中最大值
int maxindex; //记录每一轮比较中最大值的下标
for (i=0;in;i++)
{
temp=p[i];
maxindex=i;
for (j=i+1;jn;j++)
if (tempp[j]) {temp=p[j];maxindex=j;}
if(maxindex!=i){p[maxindex]=p[i];p[i]=temp;}
}
}
/*
void sort(int *p)
{int i,j,k;
for (i=0;i9;i++)
for (j=i+1;j10;j++)
if (p[i]p[j]) {k=p[i];p[i]=p[j];p[j]=k;}
这个是简单选择排序,但是执行效率没有上面的高。不过对于比较小的基数,还是看不出来效率的优劣,如果在基数上百万时,效率高的执行时间将节省不少。
*/
main()
{
int a[MAX],i;
for (i=0;iMAX;i++)
scanf("%d",a[i]);
sort(a,MAX);
for(i=0;iMAX;i++)
printf("%d ,",a[i]);
}
相关问答
Q1: C语言数组七个数升序排列和降序排列怎么编程?
1、打开visual C++ 6.0-文件-新建-文件-C++ Source File。
2、定义数组和变量:#includestdio.hmain(){char a[100], b[100], c[200], *p;int i = 0, j = 0, k = 0;。
3、输入字符串: printf("please input string a:\n");scanf("%s", a); /*输入字符串1放入a数组中*/。
4、输入字符串:printf("please input string b:\n");scanf("%s", b); /*输入字符串2放入b数组中*/。
5、给字符串进行排序。
6、链接字符串并输出:if (a[i] == '\0') /*判断a中字符是否全都复制到c中*/
p = b + j; /*p指向数组b中未复制到c的位置*/。
7、输出最后的结果。
Q2: 用C语言编写,输入10个数按降序排列
源程序代码如下:
#define _CRT_SECURE_NO_WARNINGS//VS环境下需要c语言降序函数怎么写,VC不需要
#includestdio.h//头文件c语言降序函数怎么写;
int main()
{
int i = 0;
int j = 0;
double temp = 0;
double a[10] = { 0 };//定义三个变量和一个长度为10的数组;
printf("请输入十个数:\n");//显示“请输入十个数”
for (i = 0; i 10; i++)
{
scanf("%lf", a[i]);//从键盘上输入十个数送到数组;
}
for (i = 1; i 10; i++)//for循环c语言降序函数怎么写,进行9次循环;
{
for (j = i - 1; j = 0; j--)//for循环,在每次大的循环中,a[i]从a[1]依次与它前面的数比较;
{
if (a[j + 1] a[j])
{
temp = a[j + 1];
a[j + 1] = a[j];
a[j] = temp;//如果a[j + 1]a[j],则把这两个数组元素互换,目的把最大的数放到前边;
}
else
{
break;
}
}
}
for (i = 0; i 10; i++)
{
printf("% lf\n", a[i]);//输出排好顺序的十个数;
}
return 0;//返回值为0;
}
程序运行结果如下:
扩展资料:
其c语言降序函数怎么写他实现方法如下:
#includestdio.h
int mysort(int *a, int n)
{
int i, j, temp;
for (i = 0; i n - 1; i++)
{
for (j = 0; j n - 1 - i; j++)
{
if (a[j] a[j + 1])
{
temp = a[j + 1];
a[j + 1] = a[j];
a[j] = temp;
}
}
}
return 0;
}
int main()
{
int a[10];
int i, j;
printf("input 10 numbers:\n");
for (i = 0; i 10; i++)
{
printf("the number%d is:", i + 1);
scanf("%d", a + i);
fflush(stdin);
}
mysort(a, 10);
for (i = 9; i = 0; i--)
printf("%3d", a[i]);
printf("\n");
return 0;
}
关于c语言降序函数怎么写和c语言升降序排序数据的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。








