|
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
#include<stdio.h>
int main()
{
struct date
{
int month;
int day;
int year;
};
struct boy1
{
int num;
char* name;
char sex;
struct date birthday;
float score;
}boy1,boy2;
printf("输入年月日:\n");
scanf_s("%d %d %d", &boy1.birthday.year, &boy1.birthday.month, &boy1.birthday.day);
printf("输入学号,名字,性别,分数:\n");
scanf_s("%d %s %c %f", &boy1.num, &boy1.name, &boy1.sex, &boy1.score);
boy2 = boy1;
printf("学号:%d\n姓名:%s\n性别:%c\n分数:%f\n", boy2.num, boy2.name, boy2.sex, boy2.score);
printf("出生年月是:%d年%d月%d日。", boy2.birthday.year, boy2.birthday.month, boy2.birthday.day);
}
错误的地方修改了,并做了注释
- #include<stdio.h>
- int main()
- {
- struct date
- {
- int month;
- int day;
- int year;
- };
- struct boy1
- {
- int num;
- char name[256];//这里你定义的是指针,不是char,没有给指针赋值,是不能用指针读取值的
- char sex;
- struct date birthday;
- float score;
- }boy1,boy2;
- printf("输入年月日:\n");
- scanf_s("%d %d %d", &boy1.birthday.year, &boy1.birthday.month, &boy1.birthday.day);
- printf("输入学号,名字,性别,分数:\n");
- scanf_s("%d %s %c %f", &boy1.num, boy1.name, &boy1.sex, &boy1.score);//%s需要给一个char地址或者一个char数组名,但是你给的是一个指针地址
- boy2 = boy1;
- printf("学号:%d\n姓名:%s\n性别:%c\n分数:%f\n", boy2.num, boy2.name, boy2.sex, boy2.score);
- printf("出生年月是:%d年%d月%d日。", boy2.birthday.year, boy2.birthday.month, boy2.birthday.day);
- }
复制代码
|
|