C语言从键盘上输入4个整数按降序(从大到小的顺序)输出

作者&投稿:宣哈 (若有异议请与网页底部的电邮联系)
C语言编程,从键盘输入四个整数,按照数值从小到大顺序输出~

源代码如下:
#include
int main( )
{
int num[4];
for(int i = 0 ; i < 4 ; i++){
scanf("%d", num+i);
}
for(int i = 0 ; i < 4 ; i++){
int k = i;
for(int j = i+1 ; j < 4 ; j++){
if(num[k] > num[j]){
k = j;
}
}
if(k != i){
int temp = num[k];
num[k] = num[i];
num[i] = temp;
}
for(int i = 0 ; i < 4 ; i++){
printf("%d ", num[i]);
}
return 0;
}

扩展资料
输入5个数,按从小到大顺序输出的源代码如下:
#include
void main()
{
int a[5];
int i,j,t;
printf("请输入5个数:");
for(i=0;i<5;i++)
scanf("%d",&a[i]);
printf("
");
for(j=0;j<4;j++)
for(i=0;i<4-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<5;i++)
printf("%d ",a[i]);
printf("
");
}

利用函数的模块化设计。
1、完成整体函数格局,输入、排序、输出。

2、输入函数代码如下:

3、排序函数代码如下:

4、输出函数代码如下:

5、执行结果:

扩展资料:
利用数组和循环结构实现排序功能,具体代码如下:

执行结果同上。

#include"stdio.h"
main()
{
int x,y,z,h,t;
scanf("%d%d%d%d",&x,&y,&z,&h);
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的值*/
if(z<h)
{t=z;z=h;h=t;}/*交换z,h的值*/

printf("small to big: %d %d %d%d\n",x,y,z,h);
}

这题很简单,利用排序就可以搞定,也可以用冒泡排序法。具体程序如下:
#include<stdio.h>
void main ()
{
int xx[4],i,j,leap;
printf("please input four numbers!\n");
for(i=0;i<4;i++)
scanf("%d",&xx[i]);
for(i=0;i<3;i++)
for(j=i;j<4;j++)
if(xx[i]<xx[j])
{
leap=xx[i];
xx[i]=xx[j];
xx[j]=leap;
}
for(i=0;i<4;i++)
printf("%d ",xx[i]) ;
printf("\n") ;
getch();
}

#include<stdio.h>
void main()
{
int i,j,a[4],temp;
for(i=0;i<4;i++)
scanf("%d",&a[i]);/*输入四个数*/
for(j=3;j>0;j--)/*比较循环*/
for(i = 0;i<j;i++)
{
if(a[i]<a[i+1])
{
temp = a[i];
a[i] = a[i+1];
a[i+1] = temp;
}
}
for(i = 0;i<4;i++)/*输出*/
printf("%d\n",a[i]);
}

for(i=(a*a+b*b+c*c+d*d);i>=-(a*a+b*b+c*c+d*d);i--)
再用四个if语句作为For的附属语句,比如if(a==i),就输出a;

当它循环完了就是降序~不好意思哈,用的手机不好写的…


c语言从键盘上输入一个4位整数,输出其个位、十位、百位、千位上的数字...
include<stdio.h>int main(){int x,a,b,c,d,s; scanf("%d",&x); a=x\/1000; b=x\/100%10; c=x\/10%10; d=x%10; s=a+b+c+d; printf("%d %d %d %d\\n%d",a,b,c,d,s); return 0;}

c语言程序设计:下面程序,若键盘输入的数字是6和4,则输出时什么?_百度...
分别是7和5 前者执行了if语句,因为6大于5是真的,同时x又自増变成7,所以输出7 后者不执行if语句,因为4大于5是假的,同时x也自増变成5(注意不要认为条件4>5不成立,x就不自増了,它自増和条件是否为真无关,无论真假x++都是执行了的),去执行else语句,x--整个表达式的值是5,所以输出...

请帮我做一道C语言的题:从键盘上输入四个整数,在程序中经过比较后,输出...
max = a; }else{ \/\/b>a,b比a大 max = b; }\/\/第二次比较 if(c > max){ max = c; } \/\/第三次比较 if(d > max){ max = d; }\/\/最后输出4个整数中最大的值 printf("The max = %d", max); return 0;} ...

编写一个程序,实现从键盘上输入4个数,求出它们的和及平均值,并显示在屏...
include<stdio.h> void main(){ int i;float a,average,sum=0;printf("请输入4个数:\\n");for(i=0;i<4;i++){ scanf("%f",&a);sum=sum+a;} average=sum\/4;printf("4个数的和为:%g 平均值为:%g\\n",sum,average); \/* 不知道数据类型,用%g可以避免输出多余的小数 *\/ } ...

用java语言从键盘输入三个数3、4、5,判断是否能构成直角三角形,能构成...
import java.util.Scanner; \/\/ 导入 Scanner 类 public class Main { public static void main(String[] args) { Scanner sc = new Scanner(System.in); \/\/ 创建 Scanner 对象 \/\/ 读入三条边长 System.out.print("请输入第一条边长:");int a = sc.nextInt();System.out.print("请输入...

c语言改错,题目是要从键盘输入4个整数存入数组,调用函数int min(int...
你这个代码错误好多 int x[3],i,P,*q;\/\/你要输入4个数,但数组却只申请了3个应该改为int x[4]q=x[3];\/\/你的指针之前没有初始化,这里却引用指针指向的地址,运行会出错,改为q = x;P=min(*q);\/\/min函数的参数是指针类型,这里却把int类型传给了函数,改为P=min(q);b=0;\/\/...

c语言(用最简单的,初学)从键盘输入四个整数,求平均值.数据输入,计算结果...
include <stdio.h>\/\/包含标准输入输出库 int main()\/\/主函数声明 { int a,b,c,d,sum;\/\/定义四个变量来接收四个整数,sum为四个数的和 float average;\/\/定义一个浮点型的平均数,即小数 scanf("%d%d%d",&a,&b,&c,&d);\/\/输入函数 sum = a + b + c + d;\/\/求和 average =...

用"if"语句编写这样一个C语言程序:从键盘上输入任意的四个数,把它们...
cout<<"请输入四个数"<<endl;cin>>x>>y>>z>>p;if(x<y){t=x;x=y;y=t;} if(x<z){t=x;x=z;z=t;} if(x<p){t=x;x=p;p=t;} if(y<z){t=y;y=z;z=t;} if(y<p){t=y;y=p;p=t;} if(z<p){t=z;z=p;p=t;} cout<<x<<y<<z<<p<<endl;这样应该...

从键盘输入数据3和4,则程序的输出结果是?scanf(″%d″, &a,&b);ab...
scanf("%d", &a,&b);\/\/ 如果是输入的是:34,a=34,b未知; 如果输入的是:3 4,a=3,b未知。scanf("%d %d", &a,&b);\/\/ 如果输入的是:3 4,a=3,b=4。b的值为0或负数,正数很少见。s为max(a,b)=3,所有结果为9=3^2。

C语言编程,从键盘输入四个整数,按照数值从小到大顺序输出
源代码如下:include<stdio.h> int main( ){ int num[4];for(int i = 0 ; i < 4 ; i++){ scanf("%d", num+i);} for(int i = 0 ; i < 4 ; i++){ int k = i;for(int j = i+1 ; j < 4 ; j++){ if(num[k] > num[j]){ k = j;} } if(k != i){...

岑溪市13758675698: C语言中输入4个数按降序输出 -
烛勉双骨: #include <stdio.h> void BubbleSortDown(int* nums, int count) {int* p = nums;int x = 0;int i = 0;int j = 0; for (; i < count; i++){for (j = 0; j < i; j++){if (*(p+i) > *(p+j)){x = *(p+i);*(p+i) = *(p+j);*(p+j) = x;}}} }void main() {int nums[4] = {0};int i...

岑溪市13758675698: 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) < *(...

岑溪市13758675698: 用计算机C语言程序设计 输入4个整数,要求按由小到大的顺序输出 -
烛勉双骨: #include"stdio.h" main() {int a[4],i,j; printf("请输入四个整数:\n"); //以空格分开// for(i=0;i<4;i++)scanf("%d",&a[i]); for(i=1;i<4;i++)for(j=0;j<=4-i;j++)if(a[j]>a[j+1]){t=a[j];a[j]=a[j+1];a[j+1]=t;}printf("排列后的顺序是:\n"); for(i=0;i<4;i++)printf("%5d",a[i]); } 用VC++运行过了,没错!如有问题请联系!

岑溪市13758675698: 输入四个整数要求由大到小顺序输出,用c语言编程,谢谢 -
烛勉双骨: #include<stdio.h> int main() {int n=4,i,j,t,a[4]; printf("请输入4个整数:"); 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; }

岑溪市13758675698: 用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 {复合语句} ...

岑溪市13758675698: C语言写出 ,输入4个整数,要求按由大到小的顺序输出? -
烛勉双骨: 用冒跑法写: main() { int a[4]; int i,j,t; printf("input 4 numbers:\n"); /*提示输入数据*/ for(i=1;i<5;i++) scanf("%d",&a[i]); /*输入四个整数*/ for(i=1;i<4;i++) for(j=0;j<4;j++) if(i>j) { t=i;i=j;j=t;} for(i=1;i<=4;i++) printf("%d",a[i]); /*输出从小到大的四个数*/ }

岑溪市13758675698: C语言程序设计输入4个数字,要求由小到大顺序输出 -
烛勉双骨: #include<stdio.h> void main() {int a[4],i,j,k;printf("please input four numbers:\n");for(i=0;i<4;i++)scanf("%d",&a[i]);printf("before Sorting the number is:\n");for(i=0;i<4;i++)printf("%d\t",a[i]);printf("\n");printf("after Sorting the ...

岑溪市13758675698: 用c语言,随机输入4个数,按从大到小的顺序输出 -
烛勉双骨: #include<stdio.h> void main() { int i,j,a[4],t; for(i=0;i<4;i++) scanf("%d",&a[i]); //用循环来输入4个数,for(i=0;i<4;i++) {for(j=i+1;j<4;j++)// 双重循环来顺序排列 if(a[i]<a[j]){t=a[i];a[i]=a[j];a[j]=t;}} for(i=0;i<4;i++)//循环输出 printf("%d",a[i]); } 我在VC++上运行了 没有问题.有什么不懂的地方可以再问我 希望采纳=-=

岑溪市13758675698: 输入4个整数,要求从大到小按顺序输出....c语言编程.xiexie -
烛勉双骨: # include int main() { int i,j,t,a[4];/* 定义一个数组用来存这4个数 */ for(i=0;i<4;i++) scanf("%d",&a[i]); /* 录入4个数 */ for(i=0;i<4;i++) /* 冒泡法 */ for(j=0;j<3-i;j++) { if(a[j]{ t=a[j+1]; a[j+1]=a[j]; a[j]=t; } } for(i=0;i<4;i++) /* 分别输出排完后的4个数 */ printf("%d ",a[i]); } return 0; }

岑溪市13758675698: 用C语言程序编写:输入一个四位整数(如1234),使其倒序输出(如4321),并求其各位之和. -
烛勉双骨: #include int main() {int n,s=0;scanf("%d",&n);while(n>0){printf("%d",n%10);s+=n%10;n/=10;}printf("\n各位之和=%d\n",s);return 0; }

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 星空见康网