1. 程式人生 > >sizeof操作符例子(二)

sizeof操作符例子(二)

全局變量 tid can images 是否 eof () img 數組和指針

1.假設每班人數最多不超過30人,具體人數由鍵盤輸入,試編程打印最高分及其學號。

要求:用一維數組和指針變量作函數參數,編程打印某班一門課成績的最高分和學號

#include <stdio.h>

#include <stdlib.h>

int x,temp=0;

int GradIsExist(int grad){/*檢驗成績是否超標0<grad<100*/

if(grad<0||grad>100){

printf("成績不正確,請重新輸入!\n");

main();/*成績不對調用主函數程序重新開始*/

}

}

int shuchu(int w,int t){/*找出成績最好的學生的學號和成績!*/

if(temp<t){

temp=t;/*選擇最高的成績賦值全局變量!*/

x=w;/*選擇最高的成績學生的學號賦值全局變量!*/

}

}

int PeopleIsExist(int i){/*檢驗人數是否超過30人*/

if(i>0&&i<30){

return 1;

}

else{

return 0;

}

}

int GetDate(int j,int *p){/*把成績和學號存儲在數組和指針(已經指定了數組的指針)*/

scanf("%d %d",&j,p);

GradIsExist(*p);

shuchu(j,*p);

return 1;

}

int main()

{

int StId[30];

int Source[30];

int *p=Source;

int i,n,m,r;

printf("請輸入學生人數!\n");

scanf("%d",&r);

if(PeopleIsExist(r)==1){/*調用函數!檢驗人數是否正確*/

printf("請輸入學號成績並用空格隔開,輸入完一人的學號成績回車繼續輸入\n");

for(i=0;i<r;i++){

int *q;

q=p+r;

p++;

if(p>q){/*防止指針越界*/

break;

}

else{

GetDate(StId[i],p);/*調用函數,記錄數據!*/

}

}

printf("成績最高的學號為:%d他的成績:%d",x,temp);

}

else{

printf("學生人數超過30人!\n");

main();/*人數超過30重新調用主函數,程序從頭開始!*/

}

return 0;

}

技術分享

sizeof操作符例子(二)