c语言专家呀,关于函数定义

来源:百度知道 编辑:UC知道 时间:2024/05/20 09:19:34
sort(arr[],arr_n);

main ()
{
int a[10];
scanf("%d%d%d%d%d%d%d%d%d%d",a[0],a[1],a[2],a[3],a[4],a[5],a[6],a[7],a[8],a[9]);
sort(a,10);
system("pause");
}

sort(arr[],arr_n);
{
int i,j,k;
/* 比较 */
for(i=0;i<arr_n;i++)
for(j=0;j<arr_n-1-i;j++)
{
if (arr[j]>arr[j+1]) { k=arr[j];arr[j]=arr[j+1];arr[j+1]=k; }
}
/* 输出 */
for(i=0;i<10;i++)
printf("%6d",arr[i]);
}

为什么第一句为错呢,帮解释下,谢谢
sort(int arr[],int arr_n)

这个问题我已经发觉了,还是不能通过

你没声明函数类型呀(warning),形参类型也是(error)。
void sort(int arr[],int arr_n);
void main ()
{
int a[10];
scanf("%d%d%d%d%d%d%d%d%d%d",a[0],a[1],a[2],a[3],a[4],a[5],a[6],a[7],a[8],a[9]);
sort(a,10);
system("pause");
}
void sort(int arr[],int arr_n)
{
int i,j,k;
/* 比较 */
for(i=0;i<arr_n;i++)
for(j=0;j<arr_n-1-i;j++)
{
if (arr[j]>arr[j+1]) { k=arr[j];arr[j]=arr[j+1];arr[j+1]=k; }
}
/* 输出 */
for(i=0;i<10;i++)
printf("%6d",arr[i]);
}

你看好点书吧.
自定义函数定义:
函数的定义
一个函数包括函数头和语句体两部分。
函数头由下列三不分组成:
函数返回值类型
函数名
参数表
一个完整的函数应该是这样的:
函数返回值类型 函数名(参数表)
{
语句体;
}

补充:你在()之后加个{};试试能不能过.

#include<stdio.h>

void sort(int arr[],int n);

void main ()
{
int a[10];
scanf(&quo