程序1#include<stdio.h>int main(){ float * search (float (* pointer)[4] , int n); float score[][4]={{60,70,80,90},{56,89,67,88},{34,78,90,66}}; float *p; int i, m; printf("輸入學(xué)生學(xué)號\n"); scanf("%d",&m); printf("The scoer of No.%d are:\n",m); p=search(score,m); for(i=0; i<4; i++); printf("%5.2f\n",*(p+i)); printf("\n"); return 0;}float * search (float (* pointer)[4] , int n){float * pt;pt=* (pointer+n);return (pt);} 程序2 #include <stdlib.h> int main(){ float score[][4]={{60,70,80,90},{56,89,67,88},{34,78,90,66}}; float *search(float (*pointer)[4],int n); //函數(shù)聲明 float *p; int i,m; printf("enter the number of student:"); scanf("%d",&m); printf("The score of No.%d are:\n",m); p = search(score,m); //函數(shù)調(diào)用 for(i=0;i<4;i++) printf("%5.2f\t",*(p+i)); printf("\n"); return 0;}float *search(float (*pointer)[4],int n){ float *pt; pt = *(pointer+n); return(pt);} 程序1運(yùn)行結(jié)果不對;程序2是正確的;原因找不出呢;求解;
1 回答

呼喚遠(yuǎn)方
TA貢獻(xiàn)1856條經(jīng)驗 獲得超11個贊
程序1
#include<stdio.h>
int main()
{
float * search (float (* pointer)[4] , int n);
float score[][4]={{60,70,80,90},{56,89,67,88},{34,78,90,66}};
float *p;
int i, m;
printf("輸入學(xué)生學(xué)號\n");
scanf("%d",&m);
printf("The scoer of No.%d are:\n",m);
p=search(score,m);
for(i=0; i<4; i++);
printf("%5.2f\n",*(p+i));
printf("\n");
return 0;
}
float * search (float (* pointer)[4] , int n)
{
float * pt;
pt=* (pointer+n);
return (pt);
}
把for后面的;去掉
添加回答
舉報
0/150
提交
取消