【编程基础】032、C语言中结构体在解题中的应用
文章目录
- C语言中结构体在解题中的应用
- 1、结构体之时间设计
- 2、结构体之成绩记录
- 3、结构体之成绩统计2
C语言中结构体在解题中的应用
1、结构体之时间设计
题目描述
定义一个结构体变量(包括年、月、日)。计算该日在本年中是第几天,注意闰年问题。
输入格式
年月日
输出格式
当年第几天
样例输入
2000 12 31
样例输出
366
AC代码(C语言)
#include<stdio.h>
#include<string.h>
typedef struct {int year;int month;int day;
}TIME;
int isLeapYear(int year){//能被400整除,或者能被4整除但不能被100整除的年份为闰年if(year%400==0||year%4==0&&year%100!=0)return 1;return 0;
}
int main(){TIME time;int result=0;scanf("%d%d%d",&time.year,&time.month,&time.day);switch (time.month){case 1:result=time.day; break;case 2:result=time.day+31; break;case 3:result=time.day+31+28; break;case 4:result=time.day+31+28+31; break;case 5:result=time.day+31+28+31+30; break;case 6:result=time.day+31+28+31+30+31; break;case 7:result=time.day+31+28+31+30+31+30; break;case 8:result=time.day+31+28+31+30+31+30+31; break;case 9:result=time.day+31+28+31+30+31+30+31+31; break;case 10:result=time.day+31+28+31+30+31+30+31+31+30; break;case 11:result=time.day+31+28+31+30+31+30+31+31+30+31; break;case 12:result=time.day+31+28+31+30+31+30+31+31+30+31+30; break;default:break;}if(isLeapYear(time.year)) result++;printf("%d\n",result);return 0;
}
2、结构体之成绩记录
题目描述
现有有N个学生的数据记录,每个记录包括学号、姓名、三科成绩。 编写一个函数input,用来输入一个学生的数据记录。 编写一个函数print,打印一个学生的数据记录。 在主函数调用这两个函数,读取N条记录输入,再按要求输出。 N<100
输入格式
学生数量N占一行 每个学生的学号、姓名、三科成绩占一行,空格分开。
输出格式
每个学生的学号、姓名、三科成绩占一行,逗号分开。
样例输入
2
a100 clang 70 80 90
b200 dotcpp 90 85 75
样例输出
a100,clang,70,80,90
b200,dotcpp,90,85,75
AC代码(C语言)
#include<stdio.h>
#include<string.h>
typedef struct {char number[20];//学号char name[20];//姓名int math;//数学成绩int english;//英语成绩int chinese;//语文成绩
}Student;
Student students[105];//创建数组用来存放学生
void input(int n){for(int i=0;i<n;i++){scanf("%s%s%d%d%d",students[i].number,students[i].name,&students[i].math,&students[i].english,&students[i].chinese);}
}
void Output(int n){for(int i=0;i<n;i++){printf("%s,%s,%d,%d,%d\n",students[i].number,students[i].name,students[i].math,students[i].english,students[i].chinese);}
}
int main(){int n;scanf("%d",&n);input(n);Output(n);return 0;
}
3、结构体之成绩统计2
题目描述
有N个学生,每个学生的数据包括学号、姓名、3门课的成绩,从键盘输入N个学生的数据,要求打印出3门课的总平均成绩,以及最高分的学生的数据(包括学号、姓名、3门课成绩)
输入格式
学生数量N占一行每个学生的学号、姓名、三科成绩占一行,空格分开。
输出格式
各门课的平均成绩 最高分的学生的数据(包括学号、姓名、3门课成绩)
样例输入
2
1 blue 90 80 70
b clan 80 70 60
样例输出
85 75 65
1 blue 90 80 70
AC代码(C语言)
#include<stdio.h>
#include<string.h>
typedef struct {char number[20];//学号char name[20];//姓名int math;//数学成绩int english;//英语成绩int chinese;//语文成绩int total;//总分
}Student;
Student students[105];
//各科平均成绩
int aveMath,aveEnglish,aveChinese,sumMath=0,sumEnglish=0,sumChinese=0;void calcuAve(int n){for(int i=0;i<n;i++){scanf("%s%s%d%d%d",students[i].number,students[i].name,&students[i].math,&students[i].english,&students[i].chinese);students[i].total=students[i].math+students[i].english+students[i].chinese;sumMath+=students[i].math;//各个学生单科成绩之和sumEnglish+=students[i].english;sumChinese+=students[i].chinese;}aveMath=sumMath/n;//求平均成绩aveEnglish=sumEnglish/n;aveChinese=sumChinese/n;
}
int main(){int n;scanf("%d",&n);calcuAve(n);int max=0;printf("%d %d %d\n",aveMath,aveEnglish,aveChinese);for(int i=0;i<n;i++){//求最高成绩的学生if(students[i].total>students[max].total) max=i;}printf("%s %s %d %d %d\n",students[max].number,students[max].name,students[max].math,students[max].english,students[max].chinese);return 0;
}
相关文章:
【编程基础】032、C语言中结构体在解题中的应用
文章目录C语言中结构体在解题中的应用1、结构体之时间设计2、结构体之成绩记录3、结构体之成绩统计2C语言中结构体在解题中的应用 1、结构体之时间设计 题目描述 定义一个结构体变量(包括年、月、日)。计算该日在本年中是第几天,注意闰年问…...
Kotlin 是后端开发的未来
Kotlin 是后端开发的未来 严格类型、命名参数、多范式语言 您今天遇到的每个后端开发人员都会说他们使用 JavaScript、Python、PHP 或 Ruby 编写代码。近年来,您会遇到一小部分人转而使用 Kotlin 作为他们创建 Web 服务器的语言选择。由于我在学习Ktor,所…...
Vue3学习笔记(9.1)
Vue.js style(内联样式) 我们可以在v-bind:style直接设置样式,可以简写:style <!--* Author: RealRoad1083425287qq.com* Date: 2023-04-02 19:41:53* LastEditors: Mei* LastEditTime: 2023-04-03 15:41:44* FilePath: \vscode\Vue3_li…...
MinIO 环境变量泄漏漏洞(CVE-2023-28432)
漏洞描述 MinIO 是一个开源的对象存储服务器。 MinIO RELEASE.2023-03-20T20-16-18Z之前版本中的 bootstrap-peer-server.go#VerifyHandler 方法存在敏感信息泄漏漏洞,攻击者可向集群部署中的 MinIO 服务器的 /minio/bootstrap/v1/verify API发送POST请求…...
数组转字符串、字符串转数组的方法
一.数组转字符串方法 方法转化后类型用法特点toString()string将数组转换成了一个字符串默认用","隔开toLocaleString()string把数组转换成本地约定的字符串默认用","隔开join()string将数组元素连接起来以构建一个字符串 默认用","隔开 可以随…...
local fault和remote fault
1、什么是 local fault和remote fault? 在IEEE802.3协议中,local fault和remote fault是一种错误序列,在PCS层定义。 MAC RX侧收到local fault时,意味本地链路没有正常建立链路,MAC RX侧收到remote fault时,意味对端没…...
二叉树搜索树 AVL树
文章目录1. 二叉搜索树1.1 二叉搜索树概念1.2 二叉搜索树操作1.3 二叉搜索树的实现1.4 二叉搜索树的应用1.5 二叉搜索树的性能分析2. AVL 树2.1 AVL树的概念2.2 AVL树节点的定义2.3 AVL树的插入2.4 AVL树的旋转2.5 AVL树的验证2.7 AVL树的性能3. 具体代码实现区3.1 二叉搜索树的…...
nginx配置代理多个前端资源
log: 背景 两套不同的前端使用同一个后端服务,前端使用的Nginx代理的dist包 前端 vueelementui 后端 Pythonflask Nginx代理设置 1.进入Linux机器,whereis nginx 查看Nginx安装位置 2.进到Nginx配置文件下 3.vim nginx.conf 通过多个server管理…...
SuperMap iServer下载安装,启用服务,以及发布服务
supermap 是一套专注于 GIS 产品开发的全过程解决方案,主要包括桌面 GIS 、云 GIS 和 Web SDK,这里主要介绍如何使用它的云服务器 iServer 进行三维地图及数据服务的发布,iServer 里面还可进行负载均衡、集群等高级配置,有兴趣的可…...
vxe-table简单使用 vue vxe-table vue整合vxe-table vue2 vxe-table 简单使用
vxe-table简单使用 vue vxe-table vue整合vxe-table vue2 vxe-table 简单使用安装vxe-table引用使用安装vxe-table vue2稳定版本 vue3稳定版本 npm install xe-utils vxe-tablelegacy安装 vxe-table 依赖的插件 npm i xe-utils引用 我这边是全局引入,可以根据自…...
Vue项目的打包上线步骤
Vue项目的打包上线步骤一、打包之前的路由模式二、性能分析和CDN的应用2.1 性能分析2.2 webpack排除打包2.3 CDN文件配置2.4 注入CDN文件到模板一、打包之前的路由模式 两种路由模式 hash模式 : #后面是路由路径,特点是前端访问,#后面的变化不…...
都2023了,学习自动化测试还有必要么?会不会浪费我时间
最近收到不少小伙伴私信提问,其中问得比较多的就是“学习自动化测试有那么重要吗?”。 我的回答是肯定的——很重要。 相信不少同学都有诸如此类的疑问,例如:“日常工作中好像用不上自动化?”、“手工点点点好像也可…...
银行数字化转型导师坚鹏:如何有效推进银行数字化转型工作
如何有效推进银行数字化转型工作 ——以推动银行数字化转型战略落地为核心,实现知行果合一课程背景: 很多银行都在开展银行数字化转型工作,目前存在以下问题急需解决:不清楚有效推进银行数字化转型的关键性工作?不…...
【MySQL高级篇】第09章_性能分析工具的使用
第09章_性能分析工具的使用 在数据库调优中,我们的目标是 响应时间更快, 吞吐量更大 。利用宏观的监控工具和微观的日志分析可以帮我们快速找到调优的思路和方式。 1. 数据库服务器的优化步骤 当我们遇到数据库调优问题的时候,该如何思考呢࿱…...
关于xhtml和html的区别
HTML是一种基本的WEB网页设计语言,XHTML是一个基于XML的置标语言,看起来与HTML有些相象,只有一些小的但重要的区别。本文简单介绍什么是XHTML,以及与HTML相比XHTML有什么特点。 1、什么是XHTML? HTML是一种基本…...
原生JavaScript比较两个日期大小,项目中通用
原生JavaScript比较两个日期大小,项目中通用,具体日期比较大小一、比较两个日期大小(月份)1.开始时间大于结束时间2.开始时间等于结束时间3.开始时间大于结束时间二、比较两个日期大小(日期)代码如下&#…...
【JAVA真的没出路了吗?】
2023年了,转行IT学习Java是不是已经听过看过很多次了。随之而来的类似学Java没出路、Java不行了、对Java感到绝望等等一系列的制造焦虑的话题也在网上层出不穷,席卷了一大片的对行业不了解的吃瓜群众或是正在学习中的人。如果是行外人真的会被这种言论轻…...
PCB模块化设计11——VGA高速PCB布局布线设计规范
目录PCB模块化设计11——VGA高速PCB布局布线设计规范1、什么是VGA?2、VGA接口管脚定义3、VGA电缆究竟是如何工作的?4、VGA参考设计原理图5、PCB设计指南1、R,G,B LAYOUT注意事项2、HSYNC,VSYNC Layout注意事项3、其他注意事项PCB模块化设计11——VGA高速…...
【Python】【进阶篇】五、Python爬虫的抓取网页
目录五、Python爬虫的抓取网页5.1 导入所需模块5.2 获取目标URL地址5.3 向目标URL发送请求5.4 保存为本地文件5.5 优化程序五、Python爬虫的抓取网页 Python 爬虫应用案例:爬取目标的网页,并将其保存到本地。 对要编写的爬虫程序进行分析,可…...
docker安装MongoBD(超详细)
一、安装docker 推荐文章:https://blog.csdn.net/Sumuxi9797926/article/details/127313307?spm1001.2014.3001.5502 二、创建主机挂载配置目录 data目录存放mongodb数据库文件,删除重启容器不会丢失 mkdir -p /docker/mongodb/data && cd …...
AI Agent工程师进阶指南:掌握核心技能,冲击高薪(P7-P8必备)!
本文详细介绍了AI Agent工程师的能力分层,从API调用工程师到系统设计工程师再到基础设施架构师,明确了不同层级的能力要求和市场现状。文章深入剖析了核心技术栈,包括向量数据库、RAG系统、Agent架构、Memory系统以及生产化工程等关键领域&am…...
Ostrakon-VL-8B打通企业数据流:与内部CRM系统集成实现智能客户分析
Ostrakon-VL-8B打通企业数据流:与内部CRM系统集成实现智能客户分析 你有没有遇到过这样的情况?销售团队抱怨客户画像太模糊,营销活动像在“盲人摸象”,投入了大量资源,转化率却总是不尽如人意。传统的客户关系管理&am…...
工程仿真平台OpenRocket:从物理试验到数字孪生的技术跃迁
工程仿真平台OpenRocket:从物理试验到数字孪生的技术跃迁 【免费下载链接】openrocket Model-rocketry aerodynamics and trajectory simulation software 项目地址: https://gitcode.com/GitHub_Trending/op/openrocket 在现代工程设计领域,物理…...
springboot+vue基于web的演唱会音乐会购票管理系统设计系统
目录同行可拿货,招校园代理 ,本人源头供货商系统功能模块分析技术架构设计核心业务流程安全防护措施项目技术支持源码获取详细视频演示 :文章底部获取博主联系方式!同行可合作同行可拿货,招校园代理 ,本人源头供货商 系统功能模块分析 用户模块 注册登…...
Qwen3-TTS作品分享:听AI朗读你的日记、诗歌和故事
Qwen3-TTS作品分享:听AI朗读你的日记、诗歌和故事 1. 为什么你需要一个会"读心"的语音合成工具 想象一下这样的场景:深夜写完日记,点击播放键,听到一个温暖的声音将你的文字娓娓道来;创作完一首诗…...
Ostrakon-VL终端实战:从扫码识别到生成抖音短视频脚本的创意延伸
Ostrakon-VL终端实战:从扫码识别到生成抖音短视频脚本的创意延伸 1. 像素特工终端介绍 想象你是一名零售侦探,手持的不是笨重的扫描枪,而是一个充满复古游戏风格的AI终端。这就是基于Ostrakon-VL-8B模型开发的像素风格交互界面,…...
石油勘探中的地震波“翻译官”:如何读懂时距曲线图里的地下秘密?
石油勘探中的地震波“翻译官”:如何读懂时距曲线图里的地下秘密? 站在戈壁滩的勘探营地,望着屏幕上那些看似杂乱的波形曲线,刚入行的地质工程师小李皱起了眉头。"这些弯弯曲曲的线条,到底在诉说什么样的地下故事&…...
Beyond Compare 5 永久激活完全指南:从入门到精通
Beyond Compare 5 永久激活完全指南:从入门到精通 【免费下载链接】BCompare_Keygen Keygen for BCompare 5 项目地址: https://gitcode.com/gh_mirrors/bc/BCompare_Keygen 一、问题诊断:Beyond Compare 5授权痛点解析 1.1 评估期结束的功能限制…...
SEO自动化工具如何提高网站排名_SEO自动化工具如何进行数据报告
<h2>SEO自动化工具如何提高网站排名</h2> <p>在当今互联网时代,网站的排名直接关系到其流量和业务增长。SEO自动化工具如何在提高网站排名方面发挥作用呢?本文将从多个角度展开讨论,帮助你理解这些工具如何提升网站在搜索引…...
汽车智能制造如何落地?从“黑灯工厂”看AI赋能的关键路径
一、当工厂学会在黑暗中自行运转偌大的汽车生产车间里,灯光熄灭,只有AGV小车穿梭的微光和机械臂有节奏的运作声。没有工人的手电筒,也没有巡检的脚步,一切生产、检测、调度都在黑灯状态下有条不紊地进行。这并非科幻电影ÿ…...
