C语言 结构体练习之投票
/*评选优秀学生*/
#include<stdio.h>
#include<stdlib.h>
#include<time.h>#define VOTES 25//总票数/人
#define CANDIDATES 5//候选人
//模拟投票函数原型
void vote();
typedef struct{char name[10];int age;char gender;int votes;
}CANDIDATE;CANDIDATE cdd[CANDIDATES]={{"Zhang",18,'m',0},{"Wang",19,'m',0},{"Zhao",19,'f',0},{"Li",17,'m',0},{"Qian",18,'f',0}},*p_cdd = cdd;void main(){//投票开始vote();//打印测试for(;p_cdd < cdd + CANDIDATES;p_cdd++){printf("name : %s\nage : %d\ngender : %c\nvotes : %d\n",p_cdd->name,p_cdd->age,p_cdd->gender,p_cdd->votes);printf("----------------------------------------------\n");}//p_cdd = &cdd[0];int temp = 0;int votes_max = p_cdd->votes;//找出最高得票for(int i = 1; i < CANDIDATES;i++){if( votes_max < (p_cdd+i)->votes ){votes_max = (p_cdd+i)->votes;temp = i;}}//打印最高得票者printf("最高得票者如下:\n");for(;p_cdd < cdd + CANDIDATES;p_cdd++){if(p_cdd->votes == votes_max)printf("%s\n",p_cdd->name);}}//模拟投票函数实现
void vote(){//调用库函数random模拟投票//设置随机数种子srand(time(0));for(int i = 1;i <= VOTES;i++){(p_cdd+rand()%CANDIDATES)->votes++;}
}
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终结者>一文 ...
最新文章
- 工厂方法模式和抽象工厂模式
- 一脸懵逼学习Hive的元数据库Mysql方式安装配置
- sap crm行业解决方案_SAP云平台和第三方CRM解决方案(火锅)互联
- 牛客网_PAT乙级1008_锤子剪刀布 (20)
- 关于java的响应式编程框架----SpringReactor
- VS2010中C#添加图片(资源)
- DB Reindex
- ubuntu安装谷歌浏览器 typora+出现编码错误‘ascii‘ codec can‘t encode character ‘\u6b66‘+docker里安装tensorrt报错
- 微服务应用容器化场景中常见问题总结
- wget for windows
- java 一个整数的位数字_Java 输入一个整数,计算它各位上数字的和。(注意:是任意位的整数)...
- Java 蓝桥杯 数列特征
- centos7 关闭防火墙的指令_Centos7.3防火墙配置
- Q117:PBRT-V3反射模型(Reflection Models)笔记
- C#设计模式之十八状态模式(State Pattern)【行为型】
- Android改包1
- matlab 齐次线性方程组,利用matlab求解RE中出现的齐次线性方程组
- 串口协议和RS-232标准,RS232电平与TTL电平的区别,以及USB/TTL转232“模块(CH340芯片为例)的工作原理
- java中choice用法,批处理中choice用法
- 无刷直流电机学习笔记1
热门文章
- 人工智障学习笔记——强化学习(4)时间差分方法
- LocalDateTime日期转换错误:JSON parse error: Cannot deserialize value of type java.time.LocalDateTime
- 华为机试——质数因子
- Shell——test 命令
- 【今日CV 计算机视觉论文速览 第146期】Mon, 22 Jul 2019
- 【今日CV 计算机视觉论文速览 第131期】Mon, 17 Jun 2019
- QT 连接 sql server数据库 完整演示
- CPU的大端模式(big endian)和小端(little endian)模式
- book3 复习 使用c#开发控制台应用程序
- 自动增长 mysql