C语言,程序设计 输入4个整数,要求按由小到大的顺序输出 怎么做啊?? 用循环做的? 谢谢(^

C语言,程序设计
输入4个整数,要求按由小到大的顺序输出 怎么做啊??
用循环做的?
谢谢(^_^) 能写下来吗??

//本实例采用冒泡排序法对整数型数组元素进行排序。
//冒泡排序法的基本思想:(以升序为例)含有n个元素的数组原则上要进行n-1次排序。对于每一躺的排序,从第一个数开始,依次比较前一个数与后一个数的大小。如果前一个数比后一个数大,则进行交换。这样一轮过后,最大的数将会出现称为最末位的数组元素。第二轮则去掉最后一个数,对前n-1个数再按照上面的步骤找出最大数,该数将称为倒数第二的数组元素......n-1轮过后,就完成了排序。
//若要以降序顺序排列,则只需将 if(array[j]>array[j+1])语句中的大于号改为小于号即可。
//程序如下:
#include<stdio.h>
#define N 15
void BubbleSort(int array[],int n)
{
 int i,j,temp;
//外循环控制循环趟数
 for(i=0; i<n-1; i++)
 {
//内循环选择要进行比较的数
  for(j=0; j<n-1-i; j++)
  {
   if(array[j]>array[j+1])
   {
    temp=array[j];
    array[j]=array[j+1];
    array[j+1]=temp;
   }
  }
 }
 printf("\nThe sorted numbers are:");
 for(i=0; i<n; i++)
 {
  printf("}",array[i]);
 }
 printf("\n\n");
}
void main()
{
 int i,n,a[N];
 do{
  printf("Input n[1-12]:");
  scanf("%d",&n);
 }while(!(n>=1&&n<=12));
 printf("Please input %d numbers:",n);
 for(i=0; i<n; i++)
 {
  scanf("%d",&a[i]);
 }
 printf("\nThe original numbers are:");
 for(i=0; i<n; i++)
 {
  printf("}",a[i]);
 }
 BubbleSort(a,n);
 return;
}

温馨提示:答案为网友推荐,仅供参考
第1个回答  2014-11-22
建立一个可存储8个数字的数组,将输入的数分别存进,数组的前4位,然后做一个循环,将4个数依次从数组里取出和其它的数比较,最小的就存入数组的第5位,第二小的的就存入第6位,然后输出数组的第5到8位
第2个回答  2014-11-22
#include <stdio.h>
main()
{
 int a[4];//定义含有四个整数的数组
 int temp;
 for(int i=0;i<4;i++)//输入整数
 {
  scanf("%d",&a[i]);
 }
 for(int j=0;j<3;j++)//用冒泡法排列
 {
  for(int k=0;k<3;k++)
  {
   if(a[k]>a[k+1])
   {
    temp=a[k];
    a[k]=a[k+1];
    a[k+1]=temp;
   }
  }
 }
 for(i=0;i<4;i++)
 {
  printf("%d",a[i]);
 }
}

第3个回答  2014-11-22
#include<stdio.h>

int main(void)
{
int a[5]={3,2,6,5,4};
int i,j,k,max;
for(i=0;i<5;i++)
{
for(j=0;j<4-i;j++)
{
if(a[j] > a[j+1])
{
max = a[j+1];
a[j+1]=a[j];
a[j]=max;
}
}
}
for(k=0;k<5;k++)
printf("%d\n",a[k]);

return 0;
}本回答被网友采纳