结构体
#include
//第一步
struct Student
{
//学号
int no;
//姓名
char name[20];
//性别
char sex[10];
//成绩
double score;
};
int main(void)
{
//2.声明结构体类型的变量
struct Student rui = {001,”锐哥","男",98.5};
//rui才分配了内存空间
//如何取访问结构体变量中的成员变量 "."
//3.动态的赋值 变量.成会员变量名;
printf("请输入学生学号:如 001\n");
scanf(“%d”,&rui.no);
printf("请输入学生姓名:如 锐哥\n");
scanf("%s",rui.name);
printf("请输入学生性别:如 男\n");
scanf("%s",rui.sex);
printf("请输入学生成绩:如 98.5\n");
scanf("%lf",&rui.score);
//输出
printf("----------输出---------\n");
printf("学号:%d\n”,rui.no);
printf("姓名:%s\n”,rui.name);
printf("性别:%s\n”,rui.sex);
printf("成绩:%.2lf\n",rui.score);
return 0;
}
结构体嵌套
#include
//结构体的嵌套
//结构体类型的变量做另一个结构体的成员变量
struct Birthday
{
int y;
int m;
int d;
};
struct Student
{
int no;
char name[20];
int age;//年龄
struct Birthday birth;//生日
};
int main(void)
{
struct Student rui = {1306001,"锐哥",22,
{1990,1,1}};
printf("学号:%d\n",rui.no);
printf("%d年 -%d月 -%d日\n",rui.birth.y
,rui.birth.m,
rui.birth.d);
return 0;
}
结构体数组
#include
//要有一个结构体类型
struct Student
{
int no;
char name[20];
};//没写分号
int main(void)
{
//2.声明一个结构体数组
struct Student stu[5] = {0};
//就能够保存5个学员的信息
//循环给结构体数组中得数据赋值
for(int i=0;i<5;i++)
{
printf("学生的学号:\n");
scanf("%d",&stu[i].no);
printf("学生的姓名:\n");
scanf("%s",stu[i].name);
}
//取值 遍历结构体数组
printf("--------输出--------\n");
for(int j=0;j<5;j++)
{
printf("学生的学号:");
printf("%d\n",stu[j].no);
printf("学生的姓名:");
printf("%s\n",stu[j].name);
}
return 0;
}
结构体指针
#include
//第一步
struct Student
{
//学号
int no;
//姓名
char name[20];
//性别
char sex[10];
//成绩
double score;
};//不要丢分号
int main(void)
{
//2.声明结构体类型的变量
struct Student rui = {001,”锐哥","男",98.5};
//rui才分配了内存空间
//如何取访问结构体变量中的成员变量 "."
//结构体类型的指针变量 指向 结构体变量
struct Student * point = &rui;
//3.动态的赋值 变量.成会员变量名;
printf("请输入学生学号:如 001\n");
scanf("%d",&point->no);
printf("请输入学生姓名:如 锐哥\n");
scanf("%s",point->name);
printf("请输入学生性别:如 男\n");
scanf("%s",point->sex);
printf("请输入学生成绩:如 98.5\n");
scanf("%lf",&point->score);
//输出
printf("----------输出---------\n");
printf("学号:%d\n",point->no);
printf("姓名:%s\n",point->name);
printf("性别:%s\n",point->sex);
printf("成绩:%.2lf\n",point->score);
return 0;
}
c语言嵌套结构体数组 第22节 C语言结构体之结构体嵌套 结构体指针与结构体数组的代码实现...