----------------解决方案--------------------------------------------------------
for(j=0;j<5;j++)
for(i=0;i<3;i++) {if(*pmax<*(p+j*3+i))pmax=p+j*3+i; if(*pmin>*(p+j*3+i))pmin=p+j*3+i;
}
那前面不需要改吧???
----------------解决方案--------------------------------------------------------
不需要
----------------解决方案--------------------------------------------------------
来帮我看看是那里改错了.我修改后就说
可能在'pmax'定义以前使用了它 在函数
可能在'pmax'定义以前使用了它 在函数
main() {int *p,*pmin,*pmax,i,j,a[3][5]; float average,sum=0; printf("input"); for(i=0;i<3;i++) for(i=0;i<3;i++) for(j=0;j<5;j++) {if(*pmax<*(p+i*5+j))pmax=p+5*i+j; if(*pmin>*(p+5*i+j))pmin=p+5*i+j; sum=sum+*(p+i*5+j); } p=&a[0][0]; for(i=0;i<3;i++) for(j=0;j<5;j++) sum=sum+*(p+i*5+j); average=sum/15; printf("%d",*pmax); printf("%d",*pmin); printf("%5.2f",average);
----------------解决方案--------------------------------------------------------
你先把这两个指针指向数组首元素啊
----------------解决方案--------------------------------------------------------
晕!!刚才一慌竟然把这个给忘了!!!
main() {int *p,*pmin,*pmax,i,j,a[3][5]; float average,sum=0; printf("input"); for(i=0;i<3;i++) for(i=0;i<3;i++) for(j=0;j<5;j++) scanf("%d",&a[i][j]); p=&a[0][0]; pmin=p; pmax=p; {if(*pmax<*(p+i*5+j))pmax=p+5*i+j; if(*pmin>*(p+5*i+j))pmin=p+5*i+j; sum=sum+*(p+i*5+j); } p=&a[0][0]; for(i=0;i<3;i++) for(j=0;j<5;j++) sum=sum+*(p+i*5+j); average=sum/15; printf("%d",*pmax); printf("%d",*pmin); printf("%5.2f",average); }
----------------解决方案--------------------------------------------------------
你遇到好人拉
----------------解决方案--------------------------------------------------------