scanf结构体输入输出
时间: 2023-10-23 10:15:19 浏览: 223
scanf函数可以用于结构体的输入和输出。在输入结构体时,可以使用%s和%d格式说明符来逐个输入结构体的成员变量。在输出结构体时,也可以使用%s和%d格式说明符来逐个输出结构体的成员变量。
例如,对于下面的代码片段:
```c
#include<stdio.h>
struct Student{
char num[6];
char name[100];
int score[3];
};
void input(struct Student s[5]) {
int i,j=0;
printf("进行输入操作:\n");
for(i=0;i<5;i++) {
scanf("%s %s", s[i].num, s[i].name);
printf("输入三科成绩\n"); for(j=0;j<3;j++) {
scanf("%d",&s[i].score[j]);
}
}
}
void output(struct Student s[5]) {
int i,j;
printf("进行输出操作:\n");
for(i=0;i<5;i++) {
printf("%s\t%s",s[i].num,s[i].name);
printf("\n");
for(j=0;j<3;j++) {
printf("%d\n",s[i].score[j]);
}
printf("\n");
}
}
int main() {
struct Student s1[5];
input(s1);
output(s1);
return 0;
}
```
以上代码中,使用了scanf函数来逐个输入结构体的成员变量。
代码的执行流程是:
1. 调用input函数,输入5个学生的信息,包括学号、姓名和三科成绩。
2. 调用output函数,输出5个学生的信息。