#include
struct Date
{
int year;
int month;
};//*
struct Student
{
char sno[11];
char name[10];
int Gshu;
int Ccheng;
int Yyu;
float Average;
struct Date birthday;
};
int main()
{
struct Student yjk;
printf("输入学号;");
gets(yjk.sno);
printf("输入姓名");
gets(yjk.name);
printf("输入高数成绩:");
scanf("%d",&yjk.Gshu);
printf("输入C语言成绩;");
scanf("%d",&yjk.Ccheng);
printf("输入英语成绩;");
scanf("%d",&yjk.Yyu);
yjk.Average=(yjk.Gshu+yjk.Ccheng+yjk.Yyu)/3.0;
printf("输入出生年月:");
scanf("%d%d",&yjk.birthday.year,&yjk.birthday.month);
printf("学 号 姓 名 高数 c程 英语 平均成绩 出生年月\n");
printf("%11s",yjk.sno);
printf("%6s",yjk.name);
printf("%3d %3d %3d %4.lf",yjk.Gshu,yjk.Ccheng,yjk.Yyu,yjk.Average);//?????
printf(" %d年%d月\n",yjk.birthday.year,yjk.birthday.month);
return 0;
}
%m.nf:输出共占m列,其中有n位小数,如数值宽度小于m左端补空格。
%-m.nf:输出共占n列,其中有n位小数,如数值宽度小于m右端补空格。
应该是%4f吧,输出四位的平均成绩,因为是浮点型数据 输出要用%f 数字4是保留4位数,值不够就用空格补充
https://blog.csdn.net/ZoeyZY/article/details/86097660 这里有详细解释