c语言编程: 将一组数按从大到小的顺序排序
发布网友
发布时间:2022-04-23 14:46
我来回答
共4个回答
热心网友
时间:2023-09-23 03:59
#include <stdio.h>
main()
{
int x;
printf("请输入要排序数字个数:");
scanf("%d",&x);
int i,j,k,a,b,num[x];
printf("输入数据:");
for(i=0;i<x;i++)
scanf("%d",&num[i]);
for(j=0;j<x;j++)
{
for(k=j+1;k<x;k++)
if(num[k]>num[j])
{
a=num[j];
num[j]=num[k];
num[k]=a;
}
}
for(b=0;b<x;b++)
printf("%d ",num[b]);
return 0;
}
扩展资料:
include用法:
#include命令预处理命令的一种,预处理命令可以将别的源代码内容插入到所指定的位置;可以标识出只有在特定条件下才会被编译的某一段程序代码;可以定义类似标识符功能的宏,在编译时,预处理器会用别的文本取代该宏。
插入头文件的内容
#include命令告诉预处理器将指定头文件的内容插入到预处理器命令的相应位置。有两种方式可以指定插入头文件:
1、#include<文件名>
2、#include"文件名"
如果需要包含标准库头文件或者实现版本所提供的头文件,应该使用第一种格式。如下例所示:
#include<math.h>//一些数学函数的原型,以及相关的类型和宏
如果需要包含针对程序所开发的源文件,则应该使用第二种格式。
采用#include命令所插入的文件,通常文件扩展名是.h,文件包括函数原型、宏定义和类型定义。只要使用#include命令,这些定义就可被任何源文件使用。
热心网友
时间:2023-09-23 03:59
#include<stdio.h>
void main(){
int num[100],i,temp;
//输入数组,也就是最多100个数
for(i=0;i<100;i++){
//当输入0的时候结束输入
if(num[i]==0){
break;
}
printf("请输入第%d个数:",(i+1));
scanf("%d",&num[i]);
}
//冒泡排序实现数组元素从大到小排序
for(i=0;i<100;i++){
for(j=0;i<100-i;j++){
if(num[j]<num[j+1]){
temp=num[j];
num[j]=num[j+1];
num[j+1]=temp;
}
}
//输出元素不等于0的数组
printf("从大到小的顺序为:");
for(i=0;i<100;i++){
if(num[i]>0){
printf("%d ",num[i]);
}
}
}
}
热心网友
时间:2023-09-23 04:00
参考:
void sort(int *a,int n)//n代表数组个数,a代表要排序的数组
{
int i,j,m;
for(i=0;i<n-1;i++)
for(j=0;j<9-i;j++)
if(a[i]<a[i+1])
{m=a[i];
a[i]=a[i+1];
a[i+1]=m;
}
}//end function
main()
{
int a[10],i;
for(i=0;i<=9;i++)//输入10个数据
{printf("input %d :",i+1);
scanf("%d",a[i]);
}
sort(a,10);//将数组排序
/*以下是输出部分*/
for(i=0;i<=9;i++)
prinft("%d",a[i]);
}
热心网友
时间:2023-09-23 04:00
#include<stdio.h>
int main()
{int a[100],i,j,n,t;
printf("请输入一组数,以负数结束:\n");
for(n=0;;n++)
{scanf("%d",&a[n]);
if(a[n]<0)break;
}
printf("\n");
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;
}
for(i=0;i<n;i++)
printf("%d ",a[i]);
printf("\n");
return 0;
}
c语言编程: 将一组数按从大到小的顺序排序
include <stdio.h> main(){ int x;printf("请输入要排序数字个数:");scanf("%d",&x);int i,j,k,a,b,num[x];printf("输入数据:");for(i=0;i<x;i++)scanf("%d",&num[i]);for(j=0;j<x;j++){ for(k=j+1;k<x;k++)if(num[k]>num[j]){ a=num[j];num[j]=num...
...<1000),对这组数据按从大到小顺序进行排序。
a[i] = getRandNum()%899 +101; //先产生0-899然后加上101就可以得到100到1000 printf("%d,",a[i]);} for(int i=0;i<20;i++) //冒泡排序法 { for(int j=19;j>i;--j){ if(a[j]<a[j-1]){ int temp = a[j];a[j] = a[j-1];a[j-1] = temp;} } } print...
如何用c语言实现输入一些数字,按照从大到小排序输出?
用选择排序法编写c语言,实现从键盘上输入10个数,按从大到小的顺序排序输出。代码如下:include<stdio.h> int main(){ int i,j,a[10],t;printf("输入数");for (i = 0; i < 10; i++)scanf("%d",&a[i]);for (i = 0; i < 10; i++){ for (j = i + 1; j < 10;j...
C语言,输入一组数进行排序,由大到小排列,用自定义函数实现
void InsertSort(int a[], int left, int right) {//对数组a从下标为left到right区域进行直接插入排序 int i, j, tmp;for(i = left + 1; i <= right; i++) { for(j = i - 1, tmp = a[i]; j >= left && tmp > a[j]; j++)a[j + 1] = a[j];a[j + 1] ...
编写C语言程序,把一个数组按从小到大的次序排列起来
number[j] = number[j + 1];//将相对较小的元素送达前面一个位置 number[j + 1] = k;//将中间变量元素送给后面一个位置 } if (New_number[j] < New_number[j + 1])//比较大小并将大的赋给前面的数组 { k = New_number[j + 1];//将相对较小的元素赋值给中间元素 New_number[...
c语言怎么写一个程序,从大到小排序。
C语言程序如下:include<stdio.h> intmain(){ inta,b,c,t;printf("请输入三个数:");scanf("%d%d%d",&a,&b,&c);if(a>b){ t=a;a=b;b=t;} if(a>c){ t=a;a=c;c=t;} if(b>c){ t=b;b=c;c=t;} printf("从小到大的顺序是:%d %d %d\n",a,b,c);return0;} ...
C语言怎样给一个数组中的数从大到小排序
//前十个数的排序 for(i=1; i<=10; ++i)printf("%d ",a[i]);printf("\n");printf("Input a new number: ");scanf("%d",&a[11]);for(i=10; i>0; --i)if(a[i+1]>a[i]){ int t=a[i];a[i]=a[i+1];a[i+1]=t;} else break;//11个数的排序 for(i=1...
C语言题目 输入一组数字。 数字个数不确定。然后将其从大到小排序...
int main(int argc ,char *argv[]){ int i;int b=0;float *ptr;char *endptr;if(argc == 1){ printf("请输入要排序的数字\n");exit(1);} if( (ptr = malloc(sizeof(float) * (argc-1)) ) == NULL){ perror("malloc \n");exit(1);} /*将字符串 转变为数字*/ for...
C语言编程 1 2 3 4 5 6 7 8 9 10 由大到小排序
include<conio.h> void bubble_sort(int[], int);void main() { int arr[30]={0,1,2,3,4,5,6,7,8,9,10};bubble_sort(arr, num);getch();} void bubble_sort(int iarr[], int num) { int i, j, k, temp;printf("\nUnsorted Data:");for (k = 0; k < num; k++...
C语言如何输入十个数,按从大到小顺序排列!
printf("请输入十个数:");for (i = 0; i < 10; i++)scanf("%d",&a[i]);for (i = 0; i < 10; i++){ for (j = i + 1; j < 10;j++) //循环 if (a[i] < a[j]){ t = a[i];a[i] = a[j];a[j] = t;} } printf("从大到小排序后:");for (i ...