本實例定義學生結構體,編寫 input 和 output 函數分別處理 5 名學生的姓名、性別、年齡輸入輸出。
Stu 包含 name[20]、sex[5]、age。input 循環 5 次用 scanf("%s%s%d") 讀取。output 循環打印格式化信息。// Created by www.runoob.com on 15/11/9.
// Copyright © 2015年 菜鳥教程. All rights reserved.
//
#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
fgets 讀取姓名以支持含空格名字。