C语言 结构体的初次运用
小白人士,如有高见,欢迎指正
#include<stdio.h>
#include<string.h>//定义一个班级的人数
#define PERSON 5
//自定义结构体类型STUDENT
typedef struct{int no;//学号char gender;//性别int score;//成绩
}STUDENT;
//自定义结构体类型班级CLASS
typedef struct{STUDENT std[PERSON];int male;int famale;float average;
}CLASS;//键入学生信息的函数原型
void enter_student_info(CLASS *p_cla);//主函数
void main(){//定义自定义结构体类型CLASS 变量CLASS cla,*p_cla = &cla;//将指针变量传给函数enter_student_info(p_cla);//打印测试for(int i = 0; i < PERSON ; i++){printf("no = %d | gender = %c | score = %d\n",(*p_cla).std[i].no,(*p_cla).std[i].gender,(*p_cla).std[i].score);}//输出统计数据printf("male = %d | famale = %d | average = %.1f\n",p_cla->male,p_cla->famale,p_cla->average);
}//键入学生信息的函数实现
void enter_student_info(CLASS *p_cla){//初始化结构类型成员p_cla->average = 0;p_cla->male = 0;p_cla->famale = 0;printf("Enter student info example:1,f,60\n");for(int i = 0; i < PERSON; i++){p_cla->std[i].no = i+1;printf("%d,",p_cla->std[i].no);scanf("%c,%d",&p_cla->std[i].gender,&p_cla->std[i].score);getchar();p_cla->average += p_cla->std[i].score;//累计男性人数if(p_cla->std[i].gender == 'm')p_cla->male += 1;//累计女性人数if(p_cla->std[i].gender == 'f')p_cla->famale += 1;}//得出平均分p_cla->average /= PERSON;
}
C语言 结构体的初次运用相关推荐
- ARM汇编语言实现peek()_ARM汇编之访问C语言结构体数据
前言 本文的写作目的在于装逼,没有要产生实际价值的意思. 前几天在做编译器的项目,有一个项目团队成员一直在问我ARM汇编能不能读C语言的结构体.我心想,我这生成ARM汇编的代码是用C++写的呀,又不是 ...
- C语言结构体和结构体数组示例 - Win32窗口程序演示
C语言结构体和结构体数组的使用: /* C结构体和结构体数组示例,by bobo */#include <windows.h>LRESULT CALLBACK WndProc (HWND, ...
- C语言结构体-大小,对齐,填充,使用及其他
C语言结构体-大小,对齐 C语言中的结构体(struct)的定义 在C语言中,最常用的数据结构就是结构体了,结构体也是其它数据结构(比如链表等)的基础,结构体的使用非常简单. 比如,定义一个结构体: ...
- 关于c语言结构体偏移的一点思考
注:此处只是利用了编译器的特性来计算结构体偏移 这句话就一笔带过,说得有点牵强附会.以后有时间自己再详细了解一下编译器的特性... more exceptional c++ 中文版 26页 https ...
- C语言结构体指针的使用方法
1.首先定义一个结构体,给它取别名: typedef struct node{ struct node * next://指向下一节点 int data://数据域 }pnode,*linklist; ...
- C语言结构体与联合体
c语言结构体与联合体 结构类型定义和结构变量说明 一.结构的定义 二.结构类型变量的说明 结构变量的赋值 结构变量的初始化 结构数组 结构指针变量 其访问的一般形式为: (*结构指针变量).成员名 结 ...
- C语言结构体对齐的不足
该博文为原创文章,未经博主同意不得转载,如同意转载请注明博文出处 本文章博客地址:https://cplusplus.blog.csdn.net/article/details/105065657 C ...
- C语言结构体占用内存总结
C语言结构体占用内存总结 前几天有个小朋友问了我一下,关于C语言结构体占用空间的问题.觉得以后会对小可爱有点帮助,就打算先写一下. struct Test {int a;char b;int c; } ...
- 深入解析JNA—模拟C语言结构体
原帖:http://blog.csdn.net/shendl/article/details/3599849 深入解析JNA-模拟C语言结构体 前言 前几天写<JNA--JNI终结者>一文 ...
最新文章
- Solaris 上网配置
- C++范围解析运算符::
- 详解OpenCV卷积滤波之边缘处理与锚定输出
- 贝塞尔曲线与CAShapeLayer的关系以及Stroke动画
- Axios 是一个基于 promise 的 HTTP 库,可以用在浏览器和 node.js 中。
- CPU中的主要寄存器:有六类寄存器:指令寄存器(IR)、程序计数器(PC)、地址寄存器(AR)、数据寄存器(DR)、累加寄存器(AC)、程序状态字寄存器(PSW)
- mysql开机启动脚本_centos简单的mysql开机自启和自动保存脚本
- 搭建tidb集群linux_无服务器计算,学习Go,Linux系统恢复,TiDB,Udev等
- Activity 横竖屏切换
- 系统安全工作笔记001---zigw挖矿病毒_没想到生产环境给整成矿鸡了_安全意识有待提升....
- 《南溪的目标检测学习笔记》——验证模式下出现“Process finished with exit code 137 (interrupted by signal 9: SIGKILL)“的问题
- 代码雨代码源复制_两步教你打造一个代码雨动态壁纸效果,代码可以设置为名字...
- saxreader java_DOM4j读取XML文件(SAXReader)
- 剑指offer中使用辅助栈方法的题目的整理(待更)
- linux如何访问共享目录权限设置密码,文件夹如何设置密码_在共享文件夹上怎么设置密码访问 - 驱动管家...
- 自动化攻击背景下的过去、现在与未来
- [转载] 晓说——第30期:海上霸主航母(下)
- tushare怎么用 雪球股票网址 网络爬虫python
- 职场老油条的22条经验之谈
- 最具就业前景的 7 大编程语言有哪些?