C语言高手请进!!!练手的机会来了~~

来源:百度知道 编辑:UC知道 时间:2024/05/24 01:16:12
实现功能:
从键盘上输入20个浮点数,对这20个数按由大到小的顺序排列,并输出到屏幕上。

答案请发个人消息,然后在帖子下露个面就行!!!2008年6月27日日晚十一点之前给出答案者再送100分.

发了~

#include <stdio.h>

void Sort( float a[], int n)
{
for(int i = 1 ; i <n; i++)
{
for( int j = 0; j < n - i; j++)
{
if( a[j] < a[j+1])
{
float temp = a[j];
a[j] = a[j+1];
a[j+1] = temp;
}
}
}
}
int main()
{
float a[20];
for( int i = 0; i < 20; i++)
{
scanf("%f", &a[i]);
}
Sort( a, 20 );
for( i = 0; i < 20; i++)
{
printf("%f", a[i] );
}
return 0;
}
呵呵

冒泡排序法
书上有一样的题目
for()
for()
for()
if()
for()
简单来说就是一维数组求排序问题
假设和最大值和他的下标 用个for 循环把后面的数和最大值比较
有比他大的就交换

这种题目很简单的学过基础算法的人都可以作出来的
真的不值100分
冒泡的简单写法
for()
for()
if()

# include <stdio.h>
void main ()
{
float a[20];
int i,j; float t;
printf("type in 20 numbers:&#