数组
怎么对10个数用选择排序法进行从小到大排序 选择法好像就是遍历一遍,最小的放第0位;然后从第1位开始遍历一遍,最小的放第一位。直到结束 本帖最后由 juhugufudu 于 2019-10-3 10:52 编辑#include<stdio.h>
main()
{
double a = {};
int i,j;
int size = sizeof(a)/sizeof(a);
for(i = 0;i < size;i++)
{
printf("请输入第%d个元素:",i+1);
scanf("%lf",&a);
getchar();
}
for(i = 0;i < size-1;i++)
{
for(j = 0;j < size-i-1;j++){
if(a>a){
int temp = a;
a = a;
a = temp;
}
}
}
printf("元素值\n");
for(j = 0;j < size;j++) {
printf("%d%.2lf\n",j,a);
}
}
juhugufudu 发表于 2019-10-3 10:40
还是不行
#include<stdio.h>
#define n 10
int main()
{
int a, j, i,min, temp;
for (i = 0; i < n; i++)
scanf("%d", &a);
for (i = 0; i < n ; i++)
{
min = i;
for (j = i + 1; j < n; j++)
{
if (a < a)
{
min = j;
}
if (min!= i)
{
temp = a;
a = a;
a = temp;
}
}
}
for (i = 0; i < 10; i++)
printf("%d\n", a);
return 0;
} a1163675107 发表于 2019-10-3 12:21
你这样直接问怎么写,难道要我们丢你串代码吗?如果是,你直接百度代码不就好了,你是哪里不懂?算法?还是 ...
我看懂了
juhugufudu 发表于 2019-10-3 10:40
谢谢啦
juhugufudu 发表于 2019-10-3 10:40
谢谢啦
juhugufudu 发表于 2019-10-3 10:40
你这个代码怎么复制的,左边有序列号??我从编译器上复制就没有这个
页:
[1]