函数调用的问题
#include <stdio.h>#include <stdlib.h>
#include <math.h>
#include <string.h>
/* run this program using the console pauser or add your own getch, system("pause") or input loop */
//int fun(int a[10],int c);
int main(int argc, char *argv[]) {
int a[10];
int k1;
char z[8];
for(k1=0;k1<8;k1++){
scanf("%d",&a[k1]);
scanf("%c",&z[k1]);
}
scanf("%d",&a[8]);
int c;
scanf("%d",&c);
// fun(a[10],c);
// printf("%d %d ",c,a[8]);
// printf("")
// int fun(int a[10],int c){
a[9]=c;
int i1,i2,temp;
for(i1=0;i1<10;i1++){
for(i2=i1+1;i2<10;i2++){
if(a[i1]>a[i2]){
temp=a[i1];
a[i1]=a[i2];
a[i2]=temp;
}
}
}//排序完成
for(i1=0;i1<9;i1++){
printf("%d,",a[i1]);
}
printf("%d\n",a[9]);
return 0;
}
我的代码:
#include <stdio.h>
#include <stdlib.h>
#include <math.h>
#include <string.h>
/* run this program using the console pauser or add your own getch, system("pause") or input loop */
int fun(int a[10],int c);
int main(int argc, char *argv[]) {
int a[10];
int k1;
char z[8];
for(k1=0;k1<8;k1++){
scanf("%d",&a[k1]);
scanf("%c",&z[k1]);
}
scanf("%d",&a[8]);
int c;
scanf("%d",&c);
fun(a[10],c);
return 0;
}
int fun(int a[10],int c){
a[9]=c;
int i1,i2,temp;
for(i1=0;i1<10;i1++){
for(i2=i1+1;i2<10;i2++){
if(a[i1]>a[i2]){
temp=a[i1];
a[i1]=a[i2];
a[i2]=temp;
}
}
}//排序完成
for(i1=0;i1<9;i1++){
printf("%d,",a[i1]);
}
printf("%d\n",a[9]);
return 0;
}
我不用函数写就能通过,但是一用函数就显示程序错误
初学函数,还不太懂,大佬请指出我自定义的函数与调用有什么问题