#include <stdio.h>
#include <string.h>
//结构体在定义时相当于约束了一个规则
//结构体定义格式
//结构体 结构体名称
//{
//结构体成员列表 (可以是不同数据类型 基本类型 构造类型 指针类型)
//};
//定义学生结构体信息 存储数据
struct stu//结构体名称
{
// 编号 int 姓名 char数组 性别 char 成绩 int 年龄 int 地址 char数组
int id;
char name[21];//一个中文是两个字符
char sex;
int age;
int score;
char addr[51];
};
int main0201(void)
{
//定义结构体变量
//数据类型 (struct stu)
//按照结构体成员列表顺序依次初始化数据
struct stu ss = {1001,"传智",'F',18,101,"北京市昌平区建材城西路金燕龙大厦一层"};
//修改结构体成员信息
ss.id=1003;
//ss.name是数组首地址 数组首地址是一个常量 不可以赋值
//ss.name="播妞"//错误
//字符串拷贝 strcpy(目标字符串,源字符串)
strcpy(ss.name,"播妞");
//打印结构体信息
//结构体变量.成员
printf("编号:%d\n",ss.id);
printf("姓名:%s\n",ss.name);
printf("性别:%s\n",ss.sex=='M'?"男":"女");
printf("年龄:%d\n",ss.age);
printf("成绩:%d\n",ss.score);
printf("地址:%s\n",ss.addr);
return 0;
}
结构体相当于定义一种新的“数据类型”
共用体:相当于可以存放多种数据类型的一个空间。类似酒店的一间客房,可以住各种人群,但是同一时间只允许住某一种。