题目描述
编写 input() 和 output() 函数输入,输出5个学生的数据记录。
程序分析:运用结构体定义学生数据类型,包含姓名、性别、年龄等成员。通过自定义函数 input 利用循环配合 scanf 函数接收5个学生的相关数据,存储到结构体数组中;再用自定义函数 output ,通过循环将结构体数组中存储的学生数据输出。
源代码
#include<stdio.h>
#include<stdlib.h>
typedef struct{
char name[20];
char sex[5];
int age;
}Stu;
void input(Stu*stu);
void output(Stu*stu);
int main()
{
Stu stu[5];
printf("请输入5个学生的信息:姓名 性别 年龄:\n");
input(stu);
printf("5个学生的信息如下:\n姓名 性别 年龄\n");
output(stu);
system("pause");
return 0;
}
void input(Stu*stu)
{
int i;
for(i=0;i<5;i++)
scanf("%s%s%d",stu[i].name,stu[i].sex,&(stu[i].age));
}
void output(Stu*stu)
{
int i;
for(i=0;i<5;i++)
printf("%s %s %d\n",stu[i].name,stu[i].sex,stu[i].age);
}
输出结果
请输入5个学生的信息:姓名 性别 年龄:
aaa m 15
bbb m 16
ccc m 15
ddd m 17
eee m 16
5个学生的信息如下:
姓名 性别 年龄
aaa m 15
bbb m 16
ccc m 15
ddd m 17
eee m 16