C语言编程题:输入4个整数,要求按由小到大顺序输出怎么编啊?

谁来帮帮我啊???

利用函数的模块化设计。

1、完成整体函数格局,输入、排序、输出。

2、输入函数代码如下:

3、排序函数代码如下:

4、输出函数代码如下:

5、执行结果:

扩展资料:

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

执行结果同上。

温馨提示:内容为网友见解,仅供参考
第1个回答  推荐于2019-10-09

#include<stdio.h>

int main()

{

int t,a,b,c,d;

printf("请输入4个数:");

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\n",a,b,c,d);

return 0;

}

本回答被网友采纳
第2个回答  推荐于2019-10-25

一、冒泡排序,代码和运行结果如图所示。

重复地走访过要排序的元素列,依次比较两个相邻的元素,如果他们的顺序(如从大到小、首字母从A到Z)错误就把他们交换过来。走访元素的工作是重复地进行直到没有相邻元素需要交换,也就是说该元素已经排序完成。

二、选择排序,代码和运行结果如图所示。

思想:选择排序,让数组中的每一个数,依次与后面的数进行比较,如果前面的数大于后面的数,就进行位置的交换。换个说法,选择排序:第一个数依次与后面的数比较,第一次比较完之后最小的数在最前面 。

扩展资料:

冒泡排序算法的原理如下:

1、比较相邻的元素。如果第一个比第二个大,就交换他们两个。

2、对每一对相邻元素做同样的工作,从开始第一对到结尾的最后一对。在这一点,最后的元素应该会是最大的数。

3、针对所有的元素重复以上的步骤,除了最后一个。

4、持续每次对越来越少的元素重复上面的步骤,直到没有任何一对数字需要比较。

参考资料:百度百科——冒泡排序

本回答被网友采纳
第3个回答  推荐于2019-10-15

使用冒泡排序法进行编程:

解释:

1.第一个for循环:利用数组循环输入4个变量。

2.第二个for循环:该循环的意思是如果a[0]>a[1]的话,两个变量的值交换,利用循环依次比较。要注意的是i<3,因为其中有i+1,i最大取到2,也就是i+1最大取到3才正确。

3.第三个for循环:利用循环依次输出排序后的数组,每输出一个加一个空格以便于区分。

扩展资料:

冒泡排序法,从数组头部开始,不断比较相邻的两个元素的大小,通过交换两个元素的值使较大的元素逐渐往后移动,直到数组的末尾。

经过第一轮的比较,就可以找到最大的元素,并将它移动到最后一个位置。第一轮结束后,继续第二轮。仍然从数组头部开始比较,让较大的元素逐渐往后移动,直到数组的倒数第二个元素为止。

经过第二轮的比较,就可以找到次大的元素,并将它放到倒数第二个位置。

以此类推,进行 n-1(n 为数组长度)轮“冒泡”后,就可以将所有的元素都排列好。

本回答被网友采纳
第4个回答  推荐于2017-09-04

将四个数存到数组中,然后排序即可。

排序后,再利用循环输出。

代码:

#include <stdio.h>
int main()
{
    int a[4],i,j;
    for(i = 0; i < 4; i ++)
        scanf("%d",&a[i]);
    for(i = 0; i < 3; i ++)
        for(j = i+1; j < 4; j ++)
        {
            int t;
            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]);
}

C语言编程题:输入4个整数,要求按由小到大顺序输出怎么编啊?_百度知 ...
1、完成整体函数格局,输入、排序、输出。2、输入函数代码如下:3、排序函数代码如下:4、输出函数代码如下:5、执行结果:

C语言编程题:输入4个整数,要求按由小到大顺序输出怎么编啊?(要用sw...
int i,j,temp;int a[4];printf("Please you input the four number you want to campare!\\n");for(i=0;i<4;i++) \/*输入要比较的四个数字*\/ scanf ("%d,",&a[i]);for(j=0;j<4;j++)\/*采用冒泡排序法排序*\/ { for (i=0;i<4-j;i++)if (a[i]>a[i+1]){ temp=...

C语言,程序设计 输入4个整数,要求按由小到大的顺序输出 怎么做啊...
\/\/若要以降序顺序排列,则只需将 if(array[j]>array[j+1])语句中的大于号改为小于号即可。\/\/程序如下:#include<stdio.h>#define N 15void BubbleSort(int array[],int n){ int i,j,temp;\/\/外循环控制循环趟数 for(i=0; i<n-1; i++) {\/\/内循环选择要进行比较的数 for(j=0...

输入4个整数,要求按由小到大的顺序输出,用C语言怎么编程呀?求高人指点...
void main (){ int a[MAX], i, j, tmp;printf ("input %d numbers:\\n", MAX);for (i = 0; i < MAX; i++) { scanf ("%d", a+i);for (j = 0; j < i; j++) \/\/从第一个数开始与这个输入的数比较 if (a[i] < a[j]) { \/\/如果输入的数比前面的数小就和...

编写C语言程序题:输入四个整数,要求按由小到大的顺序输出。
int a=9,b=2,c=5,d=8;int[]temp=new int[]{a,b,c,d};for(int i=0;i<3;i++){ int count=0;for(int j=0;j<3;j++){ if(temp[j]>temp[j+1]){ count=temp[j];temp[j]=temp[j+1];temp[j+1]=count;} } } for(int i=0;i<4;i++){ pringtf(temp[i]);} ...

用C语言 输入四个整数,要求按从小到大的顺序输出 先谢了!
\/\/冒泡排序,貌似是这样的 没编译器,没调试过,可能有问题,自己再试试看 \/\/直接在这里打字真麻烦,尤其是打代码,晕 include <stdio.h> int main(void){ int a[4];int i;int j;printf("请输入4个数字:\\n");for (i=0; i<4; i++){ scanf("%d", a[i]);} for (i=0; i<4...

输入4个整数,要求从大到小按顺序输出。。。c语言编程.xiexie
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]<a[j+1]) \/* 比较相邻的两个数,da的调前面。*\/ { ...

C语言写出 ,输入4个整数,要求按由大到小的顺序输出?
4)函数指针:指向我们定义的一个比较两个元素大小的函数 若是要 qsort( ) 做由小到大的排序,我们定义的函数的返回值和相应的条件必须是:返回值条件 === < 0*a<*b 0*a == *b > 0*a>*b 要达到以上的要求其实就只需写 “*a - *b” 。而若是要 qsort( ) 做由大到小的排序,把...

C语言简单程序:输入四个数,按从小到大顺序输出
其次你对四个整数排序的算法错误,建议用冒泡法进行排序。下面是我在你的代码基础上改进过后的代码,在改动处我已作了注释,希望对你有帮助!include"stdio.h"void main(){int a[4],i,j,t; \/\/数组长度为4!\/\/ printf("输入四个整数:");for(i=0;i<4;i++)scanf("%d",&a[i]);for...

C语言 输入4个整数,要求按由小到大的顺序输出
1不大于4,第二个if不执行,目前顺序为1,3,4,2 1不大于2,第三个if不执行,目前顺序为1,3,4,2 3不大于4,第四个if不执行,目前顺序为1,3,4,2 3大于2,第五个if执行,实现交换,目前顺序为1,2,4,3 4大于3,第六个if执行,实现交换,最后顺序为1,2,3,4 其实你仔细想想,如果第一...

相似回答