学习内容:
#include <stdio.h>
#include <string.h>
#include <stdlib.h>
void GetArray(char *a[], int length)
{
int i;
printf("Please input:\n");
for (i = 0; i < length; i++)
{
a[i] = (char *)malloc(sizeof(char) * 64);
scanf("%s", a[i]);
}
}
void sort(char *a[], int length)
{
int i, j;
char *tmp;
for (i = 1; i <= length - 1; i++)
{
for (j = 1; j <= length - i - 1; j++)
{
if ((atof(a[j + 1]) -atof(a[j])) < 0)
{
tmp = a[j + 1];
a[j + 1] = a[j];
a[j] = tmp;
}
}
}
}
void print(char *a[], int length)
{
int i;
for (i = 1; i < length; i++)
{
printf("%s ", a[i]);
}
printf("\n");
}
int main(int argc, char *argv[])
{
int i, j, tmp;
int length = argc;
sort(argv, length);
print(argv, length);
return 0;
}
atoi:all to int 将数字强制转换为整型
atof:all to float将数字强制转换为浮点型
转换后可以相减排序