qq_BornToBeSome_0
2017-03-13 17:27
#include <stdio.h>
int main()
{
double arr[] = {1.78, 1.77, 1.82, 1.79, 1.85, 1.75, 1.86, 1.77, 1.81, 1.80};
int i,j;
double min;
for(i=0;i<=9;i++)
{
printf("排序之前:%.2f\n",arr[i]);
}
for(i=0;i<=9;i++) //循环一共要进行10趟,每趟将
{
for(j=i;j<=9;j++)
{
min=arr[0]; //初始化第一个元素为最小
if(arr[j]<arr[0])
{
arr[0]=arr[j];
arr[j]=min;
min=arr[0];
}
}
}
printf("*********\n");
for(i=0;i<=9;i++)
{
printf("排序之后:%.2f\n",arr[i]);
}
return 0;
}
j应该从0开始,而且j<10-i,因为第一个值要比较9次。。。下面是我的代码,你可以参考一下
for(i=1;i<=10;i++)
{
for(j=0;j<10-i;j++)
{
if(score[j+1]>score[j])
{
temp=score[j+1];
score[j+1]=score[j];
score[j]=temp; }
}
}
for(i=9;i>=0;i--)
{
printf("%d",score[i]);
printf(" ");
}
C语言入门
926212 学习 · 20797 问题
相似问题
回答 3
回答 2
回答 2
回答 1
回答 3