7.4_結構體_返回結構體的函式
阿新 • • 發佈:2020-11-28
#include <stdio.h> //函式返回值是結構體 struct Student{ unsigned int no; char name[16]; float score; }; //輸入學生資訊(引數:陣列首地址) void input(struct Student *p); //尋找6個學生中成績最高的學生(引數:陣列首地址) struct Student find_max(struct Student *p); int main() { struct Student stu[6], max; input(stu); max= find_max(stu); printf("成績最高的學生資訊:\n"); printf("編號:%d 姓名:%s 成績:%.2f\n", max.no, max.name, max.score); return 0; } void input(struct Student *p){ for(int i=0; i<6; i++){ printf("輸入第%d個學生的資訊【編號 姓名 成績】:", i+1); scanf("%d %s %f", &p[i].no, p[i].name, &p[i].score); } }struct Student find_max(struct Student *p){ //假設第一個元素的成績最高 struct Student max = *p; p++; for(int i=0; i<6; i++){ if(p->score > max.score){ max = *p; } p++; } return max; }