初入C语言!整数算法训练2:输入5个数(含负数、小数),将它们按由小到大的顺序排列起来。

来源:互联网 发布:淘宝修改折扣 编辑:程序博客网 时间:2024/05/19 14:20

 

选择排序:比如在一个长度为N的无序数组中,在第一趟遍历N个数据,找出其中最小的数值与第一个元素交换,第二趟遍历剩下的N-1个数据,找出其中最小的数值与第二个元素交换......第N-1趟遍历剩下的2个数据,找出其中最小的数值与第N-1个元素交换,至此选择排序完成。

程序如下:

#include <stdio.h>   int main(){    printf("Please input data:\n");        int i,j;    float temp,a[5];       for(i = 0; i < 5; i++)    scanf("%f",&a[i]);      for(i = 0; i < 5; i++)    {        for(j = i + 1; j < 5; j++)                    {            if(a[i]>a[j])            {                temp=a[i];                a[i]=a[j];                a[j]=temp;            }        }    }    printf("Result:\n");    for(i = 0; i < 5; i++)    printf("%g\n",a[i]);    return 0;  }



冒泡排序:

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

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

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

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


程序如下:

 #include <stdio.h>  int main() {     int i,j;     float a[5];     float temp;     printf("Please input data:\n");     for(i = 0; i < 5; i++)     scanf("%f",&a[i]);      for(i = 0; i < 4; i++)     {         for(j = 0; j < 4 - i; j++)                                {             if(a[j] > a[j+1])             {                 temp = a[j];                 a[j] = a[j + 1];                 a[j + 1] = temp;             }         }     }     printf("Result:\n");     for(i = 0; i < 5; i++)     printf("%g\n",a[i]);      return 0; }







阅读全文
1 0
原创粉丝点击
热门问题 老师的惩罚 人脸识别 我在镇武司摸鱼那些年 重生之率土为王 我在大康的咸鱼生活 盘龙之生命进化 天生仙种 凡人之先天五行 春回大明朝 姑娘不必设防,我是瞎子 苹果8plus耗电快怎么办 卡地亚戒指划痕怎么办 苹果手机玫瑰金掉色怎么办 14k玫瑰金掉色怎么办 卡地亚手镯掉色怎么办 手机掉油漆里了怎么办 黄金戴久了变黑怎么办 玫瑰金褪色不亮了怎么办 黄金带久了不亮怎么办 玉石带久了不亮怎么办 手表带久了不亮怎么办 蜜蜡带久了不亮怎么办 钛钢首饰不亮了怎么办 潘多拉玫瑰金戒指褪色了怎么办 金色手表漆掉了怎么办 玫瑰金表带褪色后怎么办 K金褪色或泛黄怎么办 钛钢玫瑰金变黑怎么办 玫瑰金手镯掉色了怎么办 彩金颜色不亮了怎么办 玫瑰金链子黑了怎么办 18k玫瑰金变黑了怎么办 玫瑰金戒指遇到火变黑怎么办 18k白金发黄了怎么办 18k金掉色后怎么办吗 dw手表金色掉漆怎么办 dw玫瑰金手表褪色怎么办 dw金色表带黑了怎么办 机械表机芯坏了怎么办 银镀玫瑰金褪色怎么办 苹果七p玫瑰金掉漆怎么办 美度镀金表掉色怎么办 吃了发黑的香菇怎么办 脸上的皮肤暗黄怎么办 吃了变黑的香菇怎么办 怀孕喝了玫瑰茶怎么办 孕妇爱喝茉莉茶怎么办 干菊花生虫了该怎么办 黑枸杞放了两年怎么办 来大姨妈喝茶了怎么办 干柠檬片过期了怎么办