C语言 用选择法排序

发布网友 发布时间:2022-04-22 05:46

我来回答

3个回答

热心网友 时间:2022-05-22 02:25

这是我写的代码 , 但不知道你是在哪个网站上做的,没法测试,不过应该没问题

#include <iostream>

using namespace std;

int main()
{
int n,a[1000],temp;
while(cin>>n)
{
for(int i=0;i<n;i++)
cin>>a[i];
for(int i=0;i<n;i++)
{
for(int j=i+1;j<n;j++)
{
if(a[i]>a[j])
{
temp=a[i];
a[i]=a[j];
a[j]=temp;
}
}
}
for(int i=0;i<n;i++)
{
printf("%6d",a[i]);
}
cout<<endl;
}
return 1;
}追问没有通过测试啊。
编译错误信息
\\temp\\Main.c:1:20: iostream: No such file or directory
\\temp\\Main.c:3: error: syntax error before "namespace"
\\temp\\Main.c: In function `main':
\\temp\\Main.c:8: error: `cin' undeclared (first use in this function)
\\temp\\Main.c:8: error: (Each undeclared identifier is reported only once
\\temp\\Main.c:8: error: for each function it appears in.)

追答使用C++交的吗??

热心网友 时间:2022-05-22 03:43

#include <stdio.h>
void main()
{
int i,j,min,temp,a[10];
int num;
printf("enter data:\n");
scanf("%d",&num);
for(i=0;i<num;i++)
{
printf("a[%d]=",i);
scanf("%d",&a[i]);
}
printf("\n");
printf("The original numbers:\n");
for(i=0;i<num;i++)
printf("%5d",a[i]);
printf("\n");

for(i=0;i<num;i++)
{
min=i;
for(j=i+1;j<num;j++)
{
if(a[min]>a[j])
{

temp=a[min];
a[min]=a[j];
a[j]=temp;
}

}
a[i]=a[min];
}
printf("\n The sorted numbers:\n");
for(i=0;i<num;i++)
printf("%6d",a[i]);
printf("\n");
}

热心网友 时间:2022-05-22 05:17

#include"stdio.h"
#include"conio.h"
void selectSort(int a[],int count)
{
int i,j,min,temp;
for(i=0;i<count-1;i++)
{
min=i;
for(j=i+1;j<count;j++)
if(a[j]<a[min])
min=j;
if(min!=i)
{
temp=a[min];
a[min]=a[i];
a[i]=temp;
}
}
}
void main()
{
int a[7]={8,9,3,5,1,6,4};
int i;
selectSort(a,7);
clrscr();
for(i=0;i<7;i++)
printf("%4d",a[i]);
}

声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com