struct STUDENT stu[10];这就定义了一个结构体数组,共有 10 个元素,每个元素都是一个结构体变量,都包含所有的结构体成员。
# include <stdio.h> # include <string.h> struct STU { char name[20]; int age; char sex; char num[20]; }; void OutputSTU(struct STU stu[5]); //函数声明, 该函数的功能是输出学号最大的学生信息 int main(void) { int i; struct STU stu[5]; for (i=0; i<5; ++i) { printf("请输入第%d个学生的信息:", i+1); scanf ("%s%d %c%s", stu[i].name, &stu[i].age, &stu[i].sex, stu[i].num);/*%c前面要加空格, 不然输入时会将空格赋给%c*/ } OutputSTU(stu); return 0; } void OutputSTU(struct STU stu[5]) { struct STU stumax = stu[0]; int j; for (j=1; j<5; ++j) { if (strcmp(stumax.num, stu[j].num) < 0) //strcmp函数的使用 { stumax = stu[j]; } } printf("学生姓名:%s 学生年龄:%d 学生性别:%c 学生学号:%s\n", stumax.name, stumax.age, stumax.sex, stumax.num); }输出结果是:
# include <stdio.h> # include <string.h> struct STU { char name[20]; int age; char sex; char num[20]; }; void OutputSTU(struct STU stu[5]); //函数声明 int main(void) { struct STU stu[5] = {{"小红", 22, 'F', "Z1207031"}, {"小明", 21, 'M', "Z1207035"}, {"小七", 23, 'F', "Z1207022"}, {"小欣", 20, 'F', "Z1207015"}, {"小天", 19, 'M', "Z1207024"}}; OutputSTU(stu); return 0; } void OutputSTU(struct STU stu[5]) { struct STU stumax = stu[0]; int j; for (j=1; j<5; ++j) { if (strcmp(stumax.num, stu[j].num) < 0) { stumax = stu[j]; } } printf("学生姓名:%s 学生年龄:%d 学生性别:%c 学生学号:%s\n", stumax.name, stumax.age, stumax.sex, stumax.num); }输出结果是:
Copyright © 广州京杭网络科技有限公司 2005-2024 版权所有 粤ICP备16019765号
广州京杭网络科技有限公司 版权所有