题目:输入5个数(含负数、小数)将它们按由小到大的顺序排列起来 提示:需要排数的数字通过参数传递进来, 例如:输入:./a.out -1 2.1 -3 5 7 输出: -3 -1 2.1

来源:互联网 发布:东方财富网python面试 编辑:程序博客网 时间:2024/05/19 13:07
#include <stdio.h>
#include <stdlib.h>
#define MAX 999 //足够大的数使其正数参加排序


int main(int argc,char *argv[])
{
int i,j;
float a[100],temp = 0.0;


for(i = 0;i < argc;i++)
{
printf("%s ",argv[i]);


a[i]= atof(argv[i])+MAX;//字符串转换为浮点型数存入数组


}


printf("\n");


    //冒泡法排序
for(j = 0;j < argc-2;j++)
{
for(i = 1;i < argc-1-j;i++)
if(a[i] > a[i+1])
{
temp = a[i];
a[i] = a[i+1];
a[i+1] = temp;
}
}
printf("The sorted is\n");


for(i = 1;i < argc;i++)
{
printf("%.3f ",a[i]-MAX);
}


printf("\n");


    return 0;
}
0 0
原创粉丝点击