黑马——c语言零基础p139-p145

一.结构体

1.结构体可以理解为自定义的数据类型,它是由一批数据组合而成的结构型数据

书写格式:struct 结构体名字 书写的位置:

{ 函数的里面:局部变量,只能在本次函数中使用

成员1; 函数的外面:全局变量,在所有的函数中都可以使用

成员2;

···;

} ;

2.举例

3.起别名

起别名

结构:struct girlfriend{ typedef struct girlfriend{

char name[100]; char name[100];

int age; ====> int age;

char gender; char gender;

double height; double height;

}; }别名(GF);

调用时: GF gf1;

举例:练习:定义一个结构体表示游戏人物

属性:姓名,攻击力,防御力,血量

要求:把三个游戏人物放到数组中,并遍历数组

练习:

细节:

如果函数中写的是结构体的变量,相当于定义了一个新的变量
所以此时要直接接收内存地址,通过内存地址就可以修改变量

void method1(s st){ 该函数无法改变对应值

printf("接收到main函数中学生的初始数据为:%s,%d\n",st.name,st.age);

printf("请输入要修改的学生名\n");

scanf("%s",p);

printf("请输入要修改的学生年龄\n");

scanf("%d",&(st.age));

printf("修改后的学生信息为:%s,%d\n",st.name,st.age);

}

综合练习:

投票选举 :某班级组织野外郊游,想哟在ABCD四个景点选择一个

现在班上有80名学生进行投票,找出投票数最多的景点

学生投票,用随机数模拟

如果多个景点投票一样的话,A优先于B,B优先于C,C优先于D

相关推荐
码完就睡23 分钟前
C语言——动态内存
c语言·开发语言
Peter·Pan爱编程42 分钟前
10. new_delete 不是 malloc_free 的包装
c++·人工智能·算法
不知名的老吴2 小时前
双栈秒杀表达式的生成方式
数据结构
故事和你912 小时前
洛谷-【动态规划1】动态规划的引入2
开发语言·数据结构·c++·算法·动态规划·图论
重生之我是Java开发战士2 小时前
【动态规划】背包问题:完全背包,二位费用的背包问题,似包非包
算法·动态规划
LabVIEW开发3 小时前
LabVIEW实现FDTD 电磁仿真
算法·labview·labview知识·labview功能·labview程序
Together_CZ3 小时前
DTSemNet :Vanilla Gradient Descent for Oblique Decision Trees——用于倾斜决策树的普通梯度下降
算法·决策树·机器学习·vanilla·gradient·dtsemnet·用于倾斜决策树的普通梯度
一条大祥脚3 小时前
ABC459 贪心构造|树形DP|组合数学|贪心|单调栈|势能|前缀和
算法·深度优先
灰灰勇闯IT3 小时前
DeepEP:MoE 推理的 AllToAll 通信瓶颈怎么解
算法·cann
一行代码一行诗++3 小时前
goto语句
java·开发语言·算法