调用函数里scanf里用指针,才学c语言,求大神,
程序代码:
//最小数与第一个对换,最大数与最后一个对换 /*void inputnumber(int * p_p, int len)//输入len个数 { printf("要输入数字的个数:"); scanf("%d",&len); printf("输入%d个数:",len); for(int i=0;i<len;i++) scanf("%d", p_p++); }*/ void swapmaxmin(int * p_p,int len)//处理 { int p,n; for(int i=0,int max=* p_p;i<len;i++)//最大数与最后一个对换 { if(* (p_p+i)>= max) { max=* (p_p+i); n=i; } } p=*(p_p+n); *(p_p+n)=*(p_p+len-1); *(p_p+len-1)=p; for(int j=0,int min=* p_p;j<len;j++)//最小数与第一个对换 { if(* (p_p+j)<min) { min=* (p_p+j); n=j; } } p=*(p_p+n); *(p_p+n)= *(p_p); *(p_p)=p; } void display(int * p_p,int len)//输出 { for(int i=0;i<len;i++) printf("%d ",* (p_p++)); putchar('\n'); } void main() { int p[1024],len; int * p_p=p; printf("要输入数字的个数:"); scanf("%d",&len); printf("输入%d个数:",len); for(int i=0;i<len;i++) scanf("%d", &p[i]); swapmaxmin(p, len);//调用 display(p, len);//调用 }我输入真的只有在main函数里输入,不能在调用函数里。