c语言编程: 将一组数按从大到小的顺序排序
以下是输入10个整数按从大到小排序后再插入一个整数的程序。
#include int main(void){int i,j,temp,sz[50];for(i=0;i=0;i--)if(temp>sz[i])j--;if(10-j>0)for(i=9;i>j-1;i--)sz[i+1]=sz[i];sz[j]=temp;printf(" 插入整数 %d 后的数组:",temp);for(i=0;i<11;i++)printf(" %d",sz[i]);return 0;}
#include
main()
{
int i,j,temp;
int a[10];
for(i=0;i<10;i++)
scanf ("%d",&a[i]);
for(j=0;j<=9;j++)
{
for (i=0;i<10-j;i++)
if (a[i]<a[i+1])
{ temp=a[i];
a[i]=a[i+1];
a[i+1]=temp;}
}
for(i=1;i<11;i++)
printf("%d
",a[i] );
}
#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命令,这些定义就可被任何源文件使用。
#include<stdio.h>
int main()
{int a[100],i,j,n,t;
printf("请输入一组数,以负数结束:
");
for(n=0;;n++)
{scanf("%d",&a[n]);
if(a[n]<0)break;
}
printf("
");
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("
");
return 0;
}
参考:
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]);
}
#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]);
}
}
}
}
鄢欢夏枯: #include<stdio.h> int main() {int a[100],n,i,j,t; scanf("%d",&n); for(i=0;i<n;i++) scanf("%d",&a[i]); 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; }
衢州市18688344117: c语言 编写一个程序,完成以下功能.从键盘输入一组数字,然后按照由大到小的顺序输出 - ?
鄢欢夏枯: #include<stdio.h> #include<stdlib.h> int main() { int n,i,j,temp; printf("请输入数字的个数:\n"); int num[n]; scanf("%d",&n); printf("请输入一串数字,每输入一个数字后按回车确认:\n"); for(i=0;i<n;i++) scanf("%d",&num[i]); //...
衢州市18688344117: 用C语言编写程序使一个一维数组内的数从大到小排列 - ?
鄢欢夏枯: #include#include using namespace std;#define maxn 1000 int a[maxn]; bool cmp ( int a, int b ) { return a > b; }int main() { int i, n; printf ( "请输入要排序的元素个数:" ); scanf ( "%d", &n ); printf ( "请依次输入%d个数:", n ); for ( i = ...
衢州市18688344117: C语言怎样给一个数组中的数从大到小排序 - ?
鄢欢夏枯: 学一学冒泡排序.这个算是最简单的排序方法,以后有机会再接触接触其他的排序方法
衢州市18688344117: c语言编程...输入一数组,按从大到小的顺序排列(提示:可用选择排序、冒泡排序或插入排序的任意一种).?
鄢欢夏枯: 可以申请一个临时变量来帮助排序. int a[5] = {5,9,21,4,3}; int temp; //临时变量 int i,j; for(i=0;i<5;i++) for(j=0;j<4;j++) { temp = a[j]; if(a[j] > a[j+1]) { a[j] = a[j+1]; a[j+1] = temp; } }
衢州市18688344117: c语言用数组的简单排序将数从大到小排列 - ?
鄢欢夏枯: #include#define N 10 void main() { // const int N=10; int a[N],max,min,temp,i,j; for(i=0;i<10;i++) scanf("%d",&a[i]); for(j=0;j<9;j++) for(i=0;i<9-j;i++) if(a[i]>a[i+1]) { temp=a[i]; a[i]=a[i+1]; a[i+1]=temp; } min=a[0]; max=a[9]; for(i=0;i<10;i++) printf("%d ",a[i]); printf("max=%d",max); printf("min=%d",min); }
衢州市18688344117: C语言编写程序,将任意3个数按照从小到大的顺序排序. - ?
鄢欢夏枯: #include<stdio.h> int main() {int i,j,m;double temp;double a[3];for(m=0;m<3;m++) //输入三个数{scanf("%lf",&a[m]);}for(i=0;i<3;i++) //完成排序{for(j=i;j<3;j++){if(a[j]<a[i]){temp=a[i];a[i]=a[j];a[j]=temp;}}printf("%lf\t",a[i]);//打印结果}printf("\n");return 0; }
衢州市18688344117: 用C语言编写一个程序,输入4个整数,按从大到小顺序输出! - ?
鄢欢夏枯: PROGRAM 程序名(input,output); Var a,b,c,d,t: Real; Begin Write('Input a, b,c='); Readln(a,b,c,d); if a>b then begin {复合语句} t:=a; a:=b; b:=t {交换a,b} end; if a>c then begin {复合语句} t:=a; a:=c; c:=t {交换a,c} end; if a>d then begin {复合语句} ...
衢州市18688344117: c语言:写一个程序,将4个从键盘输入的数按照从小到大的顺序输出 - ?
鄢欢夏枯: #include "stdio.h"void select_sort(int *x, int n) {int i, j, min, t; for (i=0; i<n-1; i++) /*要选择的次数:0~n-2共n-1次*/{min = i; /*假设当前下标为i的数最小,比较后再调整*/for (j=i+1; j<n; j++)/*循环找出最小的数的下标是哪个*/{if (*(x+j) < *(...
衢州市18688344117: c语言编写程序,任意三个数,由大小到排序,源代码如何写! - ?
鄢欢夏枯: 思路:任意三个数按从大到小顺序输出,可以先求出三个数中的最大值和最小值,三个数的和减去最大值和最小值的差就是中间数,接着依次输出. 参考代码: #include "stdio.h" int main() {int a,b,c,max,min;scanf("%d%d%d",&a,&b,&c);max=a>b?a:b;min=a<b?a:b;if(c>max) max=c;if(min>c) min=c;printf("从大到小排序:%d %d %d\n",max,a+b+c-max-min,min); } /* 运行结果: 2 1 3 从大到小排序:3 2 1 */