结构体的输出
#include<stdio.h>struct Date
{
int month;
int year;
};
struct student_type
{
char num[12];
char name[20];
struct Date birthday;
int age;
char sex[2];
float score[3];
float average;
};
int main()
{
struct student_type stu;
void data_in(struct student_type stu,int n);
void data_put(struct student_type stu,int n);
data_in(stu,1);
data_put(stu,1);
return 0;
}
void data_in(struct student_type stu,int n)
{
printf("请输入学生的信息:\n");
printf("学号:");
scanf("%s",&stu.num);
printf("姓名:");
getchar();
gets(stu.name);
printf("出生年:");
scanf("%d",&stu.birthday.year);
printf("出生月:");
scanf("%d",&stu.birthday.month);
printf("性别:");
getchar();
gets(stu.sex);
printf("第一门课成绩:");
scanf("%f",&stu.score[1]);
printf("第二门课成绩:");
scanf("%f",&stu.score[2]);
printf("第三门课成绩:");
scanf("%f",&stu.score[3]);
}
void data_put(struct student_type stu,int n)
{
int i;
float aver;
aver=(stu.score[1]+stu.score[2]+stu.score[3])/3;
printf(" 学号 姓名 出生年 出生月 性别 三门平均\n");
printf("%-20s%-20s%-4d%-2d%2c%4f",stu.num,stu.name,stu.birthday.year,stu.birthday.month,stu.sex,aver);
}
为什么不能输出呢?感觉都没错啊。