struct student { int no; char name[20]; char sex; struct { int year; int month; int day; } birth; } s; 设结构变量s中的“birth”应是“1985年10月1日”,写出对s赋值的语句
时间: 2024-02-28 16:52:33 浏览: 98
以下是对结构变量s赋值的语句:
```
s.no = 1;
strcpy(s.name, "张三");
s.sex = 'M';
s.birth.year = 1985;
s.birth.month = 10;
s.birth.day = 1;
```
这样就将结构变量s中的各个成员赋值了。需要注意的是,对于字符数组类型的成员name,需要使用strcpy函数进行赋值。
相关问题
struct student { int no; char name[20]; char sex; struct{ int year; int month; int day; }birth; }; struct student s;
struct student 是一个结构体,包含了学生的学号、姓名、性别以及生日等信息。其中,no、name和sex都是基本数据类型的成员变量,birth则是一个嵌套的匿名结构体,包含了年、月、日三个成员变量。
通过定义结构体,我们可以将多个不同类型的数据组合在一起,方便地进行操作和管理。在这个例子中,s是一个 struct student 类型的变量,可以通过 . 运算符来访问它的各个成员变量。
例如,可以通过 s.no 来获取该学生的学号,通过 s.birth.year 来获取该学生的出生年份。
对s初始化信息:20,”Harry”,’M’,“1980年11月12日”出生,输出后,把s的信息改为:30,"Janny",'F',“1982年7月8日”出生,再次输出 #include <stdio.h> #include <string.h> struct student{ int no; char name[20]; char sex; struct{ int year; int month; int day; }birth; }; int main(){ struct student s=____空白10_______;//初始化值
int main(){
struct student s={20,"Harry",'M',{1980,11,12}};
printf("学号:%d\n姓名:%s\n性别:%c\n生日:%d年%d月%d日\n",s.no,s.name,s.sex,s.birth.year,s.birth.month,s.birth.day);
s.no=30;
strcpy(s.name,"Janny");
s.sex='F';
s.birth.year=1982;
s.birth.month=7;
s.birth.day=8;
printf("学号:%d\n姓名:%s\n性别:%c\n生日:%d年%d月%d日\n",s.no,s.name,s.sex,s.birth.year,s.birth.month,s.birth.day);
return 0;
}
阅读全文