利用函数的模块化设计。
1、完成整体函数格局,输入、排序、输出。
2、输入函数代码如下:
3、排序函数代码如下:
4、输出函数代码如下:
5、执行结果:
扩展资料:
利用数组和循环结构实现排序功能,具体代码如下:
执行结果同上。
#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;
}
本回答被网友采纳一、冒泡排序,代码和运行结果如图所示。
重复地走访过要排序的元素列,依次比较两个相邻的元素,如果他们的顺序(如从大到小、首字母从A到Z)错误就把他们交换过来。走访元素的工作是重复地进行直到没有相邻元素需要交换,也就是说该元素已经排序完成。
二、选择排序,代码和运行结果如图所示。
思想:选择排序,让数组中的每一个数,依次与后面的数进行比较,如果前面的数大于后面的数,就进行位置的交换。换个说法,选择排序:第一个数依次与后面的数比较,第一次比较完之后最小的数在最前面 。
扩展资料:
冒泡排序算法的原理如下:
1、比较相邻的元素。如果第一个比第二个大,就交换他们两个。
2、对每一对相邻元素做同样的工作,从开始第一对到结尾的最后一对。在这一点,最后的元素应该会是最大的数。
3、针对所有的元素重复以上的步骤,除了最后一个。
4、持续每次对越来越少的元素重复上面的步骤,直到没有任何一对数字需要比较。
参考资料:百度百科——冒泡排序
使用冒泡排序法进行编程:
解释:
1.第一个for循环:利用数组循环输入4个变量。
2.第二个for循环:该循环的意思是如果a[0]>a[1]的话,两个变量的值交换,利用循环依次比较。要注意的是i<3,因为其中有i+1,i最大取到2,也就是i+1最大取到3才正确。
3.第三个for循环:利用循环依次输出排序后的数组,每输出一个加一个空格以便于区分。
扩展资料:
冒泡排序法,从数组头部开始,不断比较相邻的两个元素的大小,通过交换两个元素的值使较大的元素逐渐往后移动,直到数组的末尾。
经过第一轮的比较,就可以找到最大的元素,并将它移动到最后一个位置。第一轮结束后,继续第二轮。仍然从数组头部开始比较,让较大的元素逐渐往后移动,直到数组的倒数第二个元素为止。
经过第二轮的比较,就可以找到次大的元素,并将它放到倒数第二个位置。
以此类推,进行 n-1(n 为数组长度)轮“冒泡”后,就可以将所有的元素都排列好。
将四个数存到数组中,然后排序即可。
排序后,再利用循环输出。
代码:
#include <stdio.h>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 其实你仔细想想,如果第一...