C语言的函数调用问题,请高手们指点我错在哪

来源:百度知道 编辑:UC知道 时间:2024/06/08 11:54:52
#include "stdio.h"
void sort(int s[11],int n)
{ int i,j;
int tem,k;
for (j=0;j<9;j++){
i=j;
for(k=j+1;k<10;K++)
{
if(s[i]>s[k]) i=k;
}
if (i!=k)
{
tem=s[i]; s[i]=s[k]; s[k]=tem;
}
}
}
void main()
{
void sort();
int i,s[10];
printf("输入10个数:");
for(i=0;i<10,i++)scanf("%d",&s[i]);
sort();
printf("输出10个数:");
for(i=0;i<10;i++)
printf("%d",s[i]);
}
请高手们指点啊..谢谢啊

#include "stdio.h"

void sort(int s[10],int n) // s[10] 不是 s[11]
{
int i,j;
int tem,k;
for (j=0;j<9;j++){
for(k=j+1;k<10;k++) // 大K 应是 小写 k
{
if(s[j]>s[k]) {tem=s[j]; s[j]=s[k]; s[k]=tem; };
}
}
}

void main()
{
///// void sort(); // 错, 不要它
int i,s[10];
printf("input 10 integer data:");
for(i=0;i<10;i++)scanf("%d",&s[i]); // ;
sort(s,10); // 实参与函数形参要对应
printf("output 10 data:");
for(i=0;i<10;i++)
printf("%d ",s[i]);
}

#include "stdio.h"
void sort(int s[],int n) //这里要改,不能指定大小的
{ int i,j;
int tem,k;
for (j=0;j<n-1;j++){
i=j;
for(k=j+1;k<n;K++)
{
if(s[i]>s[k]) i=k;
}
if (i!=j) // here
{
tem=s[i]; s[i]=s[j]; s[j]=tem; //here
}
}
}
void main()
{