C语言简单程序:输入四个数,按从小到大顺序输出

作者&投稿:淫厕 (若有异议请与网页底部的电邮联系)
用c语言程序输入四个整数,按大小顺序~

按照上面所给的一段,判断交换就好了。

#include
main()
{
int a,b,c,d,t;
scanf("%d,%d,%d,%d",&a,&b,&c,&d);
if(a>b)
{
t=a;
a=b;
b=t;
}
if(a>c)
{
t=a;
a=c;
c=t;
}
if(a>d)
{
t=a;
a=d;
d=t;
}
if(b>c)
{
t=b;
b=c;
c=t;
}
if(b>d)
{
t=b;
b=d;
d=t;
}
if(c>d)
{
t=c;
c=d;
d=t;
}
printf("%d,%d,%d,%d",a,b,c,d);
}

#include
void main()
{

int i,j,a[4],t;
for(i = 0 ;i < 4; i++)
scanf("%d",&a[i]);

for(i =0 ;i<3;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]);
}

你好,你的代码有两处错误:首先定义数组时长度过小,你要对4个数排序所以数组的长度至少要为4。
其次你对四个整数排序的算法错误,建议用冒泡法进行排序。下面是我在你的代码基础上改进过后的代码,在改动处我已作了注释,希望对你有帮助!
#include"stdio.h"
void main()
{int a[4],i,j,t; //数组长度为4!//
printf("输入四个整数:");
for(i=0;i<4;i++)
scanf("%d",&a[i]);
for(i=0;i<4;i++)
printf("%d ",a[i]);
printf("\n");
for(i=0;i<3;i++)
{for(j=i+1;j<4;j++) //注意此处的排序算法//
if(a[i]>a[j])
{t=a[j];
a[j]=a[i];
a[i]=t;

}

}

for(i=0;i<4;i++)
printf("%d ",a[i]);
printf("\n");
}

首先你要输入四个数,所以是a[4];是粗心了吧?...
第二你的比较的那两个for循环有问题。自己看下边吧。。。

#include"stdio.h"
void main()
{int a[4],i,j,t;
printf("输入四个整数:");
for(i=0;i<4;i++)
{scanf("%d",&a[i]);}
for(i=0;i<4;i++)
printf("%d",a[i]);
for(j=4;j>0;j--)
{for(i=0;i<4;i++)
if(a[i]>a[i+1])
{t=a[i+1];
a[i+1]=a[i];
a[i]=t;
}
}
for(i=0;i<4;i++)
{printf("%d",a[i]);}

}

#include"stdio.h"
void main(){
int a[3],i,j,t;
printf("输入四个整数:");
for(i=0;i<4;i++)
scanf("%d",&a[i]);
for(i=0;i<4;i++)
printf("%d",a[i]);
for(i=0;i<4;i++){
for(j=1;j<4;j++){ //这里少个{
if(a[i]>a[j]){
t=a[j];
a[j]=a[i];
a[i]=t;
}
}
} //这里又少个{
for(i=0;i<4;i++)
printf("%d",a[i]);
}

新手学习程序时一定要使用缩进程式.切记.切记.

既然是输入4个数,怎么能int a[3]呢。。。应该是int a[4]啊。 int a[N],表示a的下标是从0到N-1,共N的元素


C语言 编写一个程序,输入一个正整数,求出它是几位数。
求一个正整数n的位数可以先定义一个变量num,并初始化为0,依次把该整数n除以10,直到其为0为止,并且每除一次10,变量num的个数就自加1,最后num的值就是该整数n的位数。include <stdio.h> int main(){ int n,num=0;scanf("%d",&n);while(n){ num++;n\/=10;} printf("%d\\n",num)...

【高悬赏】写两道C语言程序: 1.输入10个学生的信息,输出最高分学生的...
\\n");exit(0);}printf("请输入%d个学生的学号,姓名,成绩,用空格分割!\\n",count);for(i=0;i<count;i++)scanf("%d %s %f",&student[i].id,student[i].name,&student[i].score);return student;};void clearinfo(Student *student){if(NULL==student)return ;free(student);student=...

编写一个c语言程序,实现录入学生学号和姓名信息的功能
include<stdio.h> include<stdlib.h> intmain(void){ chars[10];\/\/姓名 intnum;\/\/学号 printf("请输入姓名:\\n");gets(s);printf("请输学号:\\n");scanf("%d",&num);printf("姓名是:%s\\n学号是:%d\\n",s,num);system("pause");return0;} ...

用c语言编写一个程序,从键盘上输入两个字符给字符变量a,b,并输出变...
程序代码如下:\\x0d\\x0a#include \/\/编译预处理命令\\x0d\\x0aint main(int argc, char *argv[]) \/\/主函数,字符的声明\\x0d\\x0a{\\x0d\\x0achar a,b; \/\/定义字符a,b\\x0d\\x0a\\x0d\\x0ascanf("%c %c",&a,&b); \/\/输入字符a,b\\x0d\\x0a\\x0d\\x0aprintf("...

C语言,编写一个程序 用户输入运算符和四则运算符,输出计算结果_百度...
include<stdio.h> int main(){ int a=1,b,c;char op;while(a||b){ printf("请输入一个算式(二数都为0时结束):");scanf("%d%c%d",&a,&op,&b);if(a==0&&b==0)break;if(op=='+')c=a+b;if(op=='-')c=a-b;if(op=='*')c=a*b;if(op=='\/')c=a\/b;if(op=...

C语言:编写程序从键盘输入不定数量的正整数?
不考虑数据的存储,直接循环累计即可。想要数据存储:方法一:定义一个非常大的数组,循环输入并检测输入值,累计求平均。方法二:动态数组,根据有效输入,实时扩展数组地址长度。方法三:把每个数字创建成结构体,构建链表,实现自由扩展和删除。下面我的代码是用方法二写的:include <stdio.h> include <...

简单c语言程序
1、★编写程序,输入两个整数:1500和350,求出它们的商和余数并输出。main(){int a;int b;scanf("%d%d",a,b)printf("商:%d\\n余数:%d",a\/b,a%b);} 2、★编写程序,读入三个整数给a,b,c,然后交换它们中的数,把a中原来的值给b,b中原来的值给c, c中原来的值给a,且输出改变后...

求助:c语言程序设计 输入一个2-9之间任意一个数,然后利用循环嵌套,输出...
这个可以这样实现先读入一个数n,然后设计一个二重循环,外层循环从1一直到n,也就是一共输出有n行。然后内循环是从1开始,一直到本行的行数为止进行循环,每次执行内循环体就输出一个乘法等式,当内循环结束的时候进行换行。整个程序就实现了题目所规定的要求。main(){int i,j,n;scanf (“%d”,...

C语言(简单的)编写程序输入一维整形数组a[10],将其按由小到大排序后输 ...
这个应该用起泡法排序算法。include<stdio.h> int main(){ int a[10];int i,j,k;printf("input 10 numbers:\\n");for(i=0;i<10;i++){\/\/输入十个数,一次循环输入10次 scanf("%d",&a[i]);printf("\\n");\/\/换行 for(j=0;j<9;j++)\/\/从小到大换行经典方法四行 for(i=0;i<...

c语言程序编写:输入10个整数存入a数组,要求逆序重新放入后再输出_百度...
include<stdio.h>int main(){ int a[10]; int i,j,k; for(i=0;i<10;i++)scanf("%d",&a[i-1]); for(i=0;i<9;i++) { for(j=i;j<10;j++) { if(a[i]

卢龙县18043701015: 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) < *(...

卢龙县18043701015: 用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++上运行了 没有问题.有什么不懂的地方可以再问我 希望采纳=-=

卢龙县18043701015: 输入4个整数,按从小到大输出这四个数 用c语言 -
端木聂卵磷: int main() { int i,j,temp; int a[4]; for(i=0;i<4;i++) scanf("%d",&a[i]); for(i=0;i<4;i++) for(j=i+1;j<4;j++) {if(a[i]>a[j]){temp=a[i];a[i]=a[j];a[j]=temp;} }for(i=0;i<4;i++) printf("%d\t",a[i]);return 0;}

卢龙县18043701015: 用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 {复合语句} ...

卢龙县18043701015: C语言 输入4个整数 按从小到大 排列 -
端木聂卵磷: #include int main() { int t,a,b,c,d; printf("请输入4个整数:"); scanf("%d,%d,%d,%d",&a,&b,&c,&d); printf("\n a=%d,b=%d,c=%d,d=%d \n",a,b,c,d); if(a>b) {t=a; a=b; b=t;} if(a>c) {t=a; a=c; c=t;} if(a>d) {t=a; a=d; d=t;} if(b>c) {t=b; b=c; c=t;} ...

卢龙县18043701015: 用计算机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++运行过了,没错!如有问题请联系!

卢龙县18043701015: 输入4个整数,从小到大排序.c语言编程 -
端木聂卵磷: #define _CRT_SECURE_NO_WARNINGS #include<cstdio>#define SIZE 4 void selection(int a[],int n); void swap(int *x,int *y);int main() {int a[SIZE];for(int i=0;i<4;i++)scanf("%d",a+i);selection(a,sizeof a/sizeof*a);for(int i=0;i<4;i++)printf(...

卢龙县18043701015: C语言简单程序:输入四个数,按从小到大顺序输出
端木聂卵磷: 你好,你的代码有两处错误:首先定义数组时长度过小,你要对4个数排序所以数组的长度至少要为4. 其次你对四个整数排序的算法错误,建议用冒泡法进行排序.下面是我在你的代码基础上改进过后的代码,在改动处我已作了注释,希望对...

卢龙县18043701015: 任意输入4个整数,从大到小排列输出.c语言程序怎么写 -
端木聂卵磷: 任意输入4个整数,从大到小排列输出.c语言程序写法:main() {int a,b,c,d,m; scanf("%d %d %d %d",&a,&b,&c,&d); if(b>a) {m=a;a=b;b=m;} if(d>c) {m=c;c=d;d=m;} if(c>a) {m=a;a=c;c=m;} if(c>b); {m=b;b=c;c=m;}printf("\n%d %d %d %d\n",a,...

卢龙县18043701015: 求高手用C语言帮写个程序:输入4个整数,要求按由大到小的顺序输出.先谢谢拉! -
端木聂卵磷: /* 输入4个整数(逗号隔开) : 23 45 80 9 排序后 : 80 45 23 9 请按任意键继续. . . */ #include <stdio.h>const int N = 4;void SelectSort(int a[], int n) {int i,j,k,t;for(i = 0; i < n - 1; ++i) {k = i;for(j = i + 1; j < n; ++j) {if(a[j] > a[k]) k = j;}if(i != k) {t =...

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