c语言如何输入一个正整数N,再输入N个整数,按从小到大的顺序输出?

如题所述

第1个回答  2022-10-25

c语言如何输入一个正整数N,再输入N个整数,按从小到大的顺序输出?

#include<stdio.h>
void main()
{
int n,i,j,t,a[10000];
printf("请输入正整数N:");
scanf("%d",&n);
printf("请依次输入%d个数",n);
for(i=0;i<n;i++)
{
printf("请输入第%d个数",i+1);
scanf("%d",&a[i]);
}
for(j=0;j<n-1;j++)
for(i=0;i<n-1-j;i++)
if(a[i]>a[i+1])
{
t=a[i];
a[i]=a[i+1];
a[i+1]=t;
}
printf("排序后阵列为");
for(i=0;i<n;i++)
printf("%d ",a[i]);

}

从键盘输入一个整数N(N>=0),然后再输入N个整数, 按从小到大的顺序输出。 正在学C语言程式设计,求教

#include<stdio.h>
int main(void)
{
int n,i,j,t;
printf("please enter anumber:\n");
scanf("%d",&n);
int a[n];
printf("please enter %d number:\n",n);
for(i=0;i<n;i++)
{
printf("enter %dth number:",i+1);
scanf("%d",&a[i]);
}
for(i=0;i<n-1;i++)
for(j=0;j<n-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\t",a[i]);
printf("\n");
return 0;
}已经给出程式啦,希望采纳

用C语言输入3个整数,怎么按从小到大的顺序输出?

#include <stdio.h>
void f(int* x,int* y,int* z)

{

int sum=*x+*y+*z;  三个数之和

求最大数

int tmp=(*x>*y)?*x:*y;

int max=(tmp>*z)?tmp:*z;

求最小数

tmp=(*x<*y)?*x:*y;

int min=(tmp<*z)?tmp:*z;

中间的数为sum减去最大数和最小数

int mid=sum-max-min

按从小到大重新赋值

*x=min;

*y=mid;

*z=max

}
int main()

{
int a=10,b=-50,c=20;
f(&a,&b,&c);
printf("%d %d %d\n",a,b,c);
return 0;

}

c语言程式设计:阵列:输入一个正整数n,再输入n个正整数并从大到小排序输出。

采用冒泡法,C语言书上应该有这样的例子的。原理其实很简单,就是将每个数依次比较,每次取最大的数,全部比较完成,就输出来,然后再比较剩下的。

C语言 从键盘输入10个整数,将这10个整数按从小到大的顺序输出。

#include<stdio.h>
void main(void)
{
int a[10];
int i,j,temp;
for(i=0;i<10;i++)
{
printf("请输入第%d个数的具体值",i+1);
scanf("%d",&a[i]);
}
for(i=0;i<10;i++)
{

for(j=i+1;j<10;j++)
{
if (a[i]>a[j])
{
temp=a[i];
a[i]=a[j];
a[j]=temp;
}
}
}
printf("从小到大的顺序为:\n");
for(i=0;i<10;i++)
{
printf("%8d",a[i]);
}
putchar('\n');
}

c语言作业:输入三个整数,要求按从小到大的顺序输出

输入三个整数,要求按从小到大的顺序输出。
解题思路:此题采用依次比较的方法排出其大小顺序。
main( )
{ int a , b , c ,t;
scanf(“%d , %d , %d” , &a , &b ,&c) ;
printf(“\n\n a=%d , b=%d , c=%d \n” ,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(“\n\n a=%d , b=%d , c=%d \n” ,a , b , c) ; }
即可

c语言 输入4个整数/字串,按从小到大的顺序输出

#include<stdio.h>
int main()
{
char a[5];
int i,j,t;
for(i=0;i<4;i++)scanf("%c",&a[i]);
for(i=0;i<4;i++)
for(j=1;j<4;j++)
if(a[j-1]>a[j])
{
t=a[j-1];
a[j-1]=a[j];
a[j]=t;
}
for(i=0;i<4;i++)printf("%c ",a[i]);
return 0;
}

输入三个整数,按从小到大的顺序输出。

#include "stdio.h"
main()
{
int x,y,z,t;
scanf("%d%d%d",&x,&y,&z);
if (x>y)
{t=x;x=y;y=t;} /*交换x,y的值*/
if(x>z)
{t=z;z=x;x=t;}/*交换x,z的值*/
if(y>z)
{t=y;y=z;z=t;}/*交换z,y的值*/
printf(" *** all to big: %d %d %d\n",x,y,z);
}

输入n个整数 按照从小到大的顺序排列 然后输出排好序的整数

#include "stdio.h"
main()
{
int a,b,c,d,temp;
printf("Input four number!\n");
scanf("%d,%d,%d,%d",&a,&b,&c,&d);
if (a>=b) {temp=a;a=b;b=temp;}
if (a>=c) {temp=a;a=c;c=temp;}
if (a>=d) {temp=a;a=d;d=temp;}
if (b>=c) {temp=b;b=c;c=temp;}
if (b>=d) {temp=b;b=d;d=temp;}
if (c>=d) {temp=c;c=d;d=temp;}
printf("Min=%d Mid1=%d Mid2=%d Max=%d\n",a,b,c,d);
}
这是4个数的,供你参考。自己可推出其他的吧?

相似回答