C语言每日一练——day_4
引言
针对初学者,每日练习几个题,快速上手C语言。第四天。(连续更新中)
采用在线OJ的形式
什么是在线OJ?
在线判题系统(英语:Online Judge,缩写OJ)是一种在编程竞赛中用来测试参赛程序的在线系统,也可以用于平时的练习。
详细内容可以看一下这篇博客:关于C/C++语言的初学者在哪刷题,怎么刷题-CSDN博客
https://blog.csdn.net/2401_88433210/article/details/146056171?spm=1011.2415.3001.10575&sharefrom=mp_manage_link
1. 时间转换
点进去直接做题:
时间转换_牛客题霸_牛客网 (nowcoder.com)
https://www.nowcoder.com/practice/c4ae7bcac7f9491b8be82ee516a94899?tpId=107&&tqId=33304&rp=1&ru=/ta/beginner-programmers&qru=/ta/beginner-programmers/question-ranking参考代码:
#include<stdio.h>
int main()
{int seconds, h, m, s;scanf ("%d",&seconds);h=seconds/3600;m=(seconds%3600)/60;s=(seconds%3600)%60;printf("%d %d %d",h,m,s);
}
解析:非常简单的一道找规律的题,注意格式的要求
2.总成绩和平均分计算
点进去直接做题:
总成绩和平均分计算_牛客题霸_牛客网 (nowcoder.com)
https://www.nowcoder.com/practice/0fa5132c156b434da4347ad051c4be22?tpId=107&&tqId=33305&rp=1&ru=/ta/beginner-programmers&qru=/ta/beginner-programmers/question-ranking参考代码:
#include<stdio.h>
int main() {//三科成绩double score[3] = {0};//输入scanf("%lf %lf %lf", &score[0], &score[1], &score[2]);//计算double sum = score[0] + score[1] + score[2] ;double avg = sum / 3.0;//输出printf("%.2lf %.2lf", sum, avg);return 0;
}
解析:非常简单的一道题,不会说明前几天的题,你没有好好做。
这个题也可以用for循环边读边计算,自己可以尝试尝试,不懂的评论区里留言
3.KiKi和酸奶
点进去直接做题:KiKi和酸奶_牛客题霸_牛客网 (nowcoder.com)
https://www.nowcoder.com/practice/c7721f3a1b1a47a783974453e82cadbb?tpId=107&&tqId=33311&rp=1&ru=/ta/beginner-programmers&qru=/ta/beginner-programmers/question-ranking
参考代码:
#include <stdio.h>int main(){int n = 0;int h = 0;int m = 0;while(scanf("%d %d %d", &n, &h, &m) != EOF){if(m%h>0)printf("%d\n", n-m/h-1);elseprintf("%d\n", n-m/h);}return 0;}
解析:
1. 注意多组输入
2. 如果h分钟喝一瓶酸奶,那么m分钟喝汽水的瓶数就是h/m瓶,但是如果m%h有余数,就说明又打 开了一瓶,只是没来得及喝完,那么位打开的就少一瓶。
4.发布信息
点进去直接做题
发布信息_牛客题霸_牛客网 (nowcoder.com)
https://www.nowcoder.com/practice/20e59d0f388448c68f581b9d3ca66049?tpId=107&&tqId=33312&rp=1&ru=/ta/beginner-programmers&qru=/ta/beginner-programmers/question-ranking参考代码:
#include<stdio.h>
int main()
{puts("I lost my cellphone!");return 0;
}
解析:不会的话.......回家把孩子 (开个玩笑)。
5. 输出学生信息
点进去直接做题:
输出学生信息_牛客题霸_牛客网 (nowcoder.com)
https://www.nowcoder.com/practice/8e94458049eb4e838f711bbd1be0045e?tpId=107&&tqId=33313&rp=1&ru=/ta/beginner-programmers&qru=/ta/beginner-programmers/question-ranking参考代码:
#include <stdio.h>int main(){printf("Name Age Gender\n");//注意四个空格 和换行printf("---------------------\n");printf("Jack 18 man\n");//注意五个空格 对齐return 0;
}
解析:和上面题一样,主要是锻炼大家的速度和细节(得多写)。
6.进制A+B
点进去直接做题
进制A+B_牛客题霸_牛客网 (nowcoder.com)
https://www.nowcoder.com/practice/6187581174ac48278ca3bccf8d534897?tpId=107&&tqId=33315&rp=1&ru=/ta/beginner-programmers&qru=/ta/beginner-programmers/question-ranking参考代码:
#include<stdio.h>
int main(void)
{int a,b,result;scanf("%x %o",&a,&b);//注意怎么输入十六进制和八进制result=a+b;printf("%d",result);return 0;
}
解析:
1. 首先要理解十进制、十六进制、八进制只是一种数据的表示形式,不是数据的存储形式。
2. 不同格式的数据的输出在C语言中有不同的格式指定,比如:%x是十六进制格式,%o就是八进制格式。
3. 不同进制的数据存放都整形变量中都是整形值,直接计算就行,计算交给计算机。
7.网购
点进去直接做题:
网购_牛客题霸_牛客网 (nowcoder.com)
https://www.nowcoder.com/practice/5d7dfd405e5f4e4fbfdff6862c46b751?tpId=107&&tqId=33318&rp=1&ru=/ta/beginner-programmers&qru=/ta/beginner-programmers/question-ranking参考代码:
代码一:
#include<stdio.h>int main(){//获取输入double price;int m,d,c; //month,day,couponscanf("%lf%d%d%d",&price,&m,&d,&c);//计算价格并输出if(m == 11 && d == 11){ //双十一//打七折后再计算是否有优惠券price = (price * 0.7) - (50 * c); // c为0则50*0=0,c为1则50*1=1} else if(m == 12 && d == 12){ //双十二//打八折后与上面同理price = (price * 0.8) - (50 * c);}//输出最后价格printf("%.2lf\n",(price > 0 ? price : 0.0));return 0;
}代码二:
#include<stdio.h>int main()
{double price = 0.0;int month = 0;int day = 0;int flag = 0;scanf("%lf %d %d %d", &price, &month, &day, &flag);if (month == 11 && day == 11){price = price * 0.7 - 50.0*flag;}else if (month == 12 && day == 12){price = price * 0.8 - 50*flag;}if (price < 0){printf("0.00\n");}else{printf("%.2lf\n", price);}return 0;
}
解析:
把题目意思搞懂,很简单的一道题,注意细节
8.争夺前五名
直接点进去做题
争夺前五名_牛客题霸_牛客网 (nowcoder.com)
https://www.nowcoder.com/practice/cd052308a1c44a88ad00255f312c3e14?tpId=107&&tqId=33320&rp=1&ru=/ta/beginner-programmers&qru=/ta/beginner-programmers/question-ranking参考代码:
//代码一:自己亲自实现排序 int main() {int n, temp;scanf("%d", &n);int m[n];for (int i = 0; i < n; i++) {scanf("%d ", &m[i]);}//冒泡排序for (int j = 0; j < n; j++) {for (int k = 0; k < n; k++) {if (m[j] > m[k]) {temp = m[j];m[j] = m[k];m[k] = temp;}}}printf("%d %d %d %d %d", m[0], m[1], m[2], m[3], m[4]);return 0; }//代码二:使用库函数qsoort#include <stdio.h>int cmp_int(const void* e1, const void*e2)//比较函数{return *(int*)e1 - *(int*)e2;}int main(){int n = 0;int score[40] = {0};scanf("%d", &n);int i = 0;for(i=0; i<n; i++){scanf("%d", &score[i]);}//对所有数字排序int j = 0;//使用库函数排序qsort(score, n, 4, cmp_int);for(i=0; i<5; i++){printf("%d ", score[--n]);}return 0;}
解析:
1. 要学会使用C语言库函数提供qsort函数。
void qort(void* arr[], int len, int n, int cmp); //解释:要排列数组的起始地址,数组的长度,一个元素对应的字节,一个比较函数
2. 或者自己实现一个简单的整形数组排序代码。
冒泡排序的动图:(看着代码想,在脑子里模拟一下)

9. 竞选社长
点进去直接做题:
竞选社长_牛客题霸_牛客网 (nowcoder.com)
https://www.nowcoder.com/practice/45a30e3ef51040ed8a7674984d6d1553?tpId=107&&tqId=33321&rp=1&ru=/ta/beginner-programmers&qru=/ta/beginner-programmers/question-ranking参考代码:
#include<stdio.h> int main(void) {char s;int coutA=0,coutB=0;while((s=getchar())!='0')//关键是要看输入符号结束的设定{if(s=='A')coutA++;elsecoutB++;}if(coutA>coutB)printf("A");else if(coutA<coutB)printf("B");elseprintf("E");return 0; }
解析:
本题的解法很多,但本质都是一样的就是代码写的不一样,可以扩展自己的思维多写写。
相关文章:
C语言每日一练——day_4
引言 针对初学者,每日练习几个题,快速上手C语言。第四天。(连续更新中) 采用在线OJ的形式 什么是在线OJ? 在线判题系统(英语:Online Judge,缩写OJ)是一种在编程竞赛中用…...
下降路径最⼩和(medium)
题目描述: 给你一个 n x n 的 方形 整数数组 matrix ,请你找出并返回通过 matrix 的下降路径 的 最小和 。 下降路径 可以从第一行中的任何元素开始,并从每一行中选择一个元素。在下一行选择的元素和当前行所选元素最多相隔一列(…...
redux_旧版本
reduxjs/toolkit(RTK)是 Redux 官方团队推出的一个工具集,旨在简化 Redux 的使用和配置。它于 2019 年 10 月 正式发布,此文章记录一下redux的旧版本如何使用,以及引入等等。 文件目录如下: 步骤 安装依…...
⭐算法OJ⭐经典题目分类索引(持续更新)
在编程竞赛和算法学习中,Online Judge(OJ)平台是程序员们磨练技能的重要工具。OJ平台上的题目种类繁多,涵盖了从基础数据结构到复杂算法的各个方面。为了更好地理解和掌握这些题目,对其进行分类是非常有必要的。这篇索…...
python之使用scapy扫描本机局域网主机,输出IP/MAC表
安装scapy库 pip install scapy -i https://mirrors.tuna.tsinghua.edu.cn/pypi/web/simple扫描本机局域网的所有主机,输出IP/MAC对于表 # -*- coding: UTF-8 -*- import netifaces from scapy.all import srp from scapy.layers.l2 import ARP, Ether import ipa…...
Spring Boot中@Valid 与 @Validated 注解的详解
Spring Boot中Valid 与 Validated 注解的详解 引言 在Spring Boot应用中,参数校验是确保数据完整性和一致性的重要手段。Valid和Validated注解是Spring Boot中用于参数校验的两个核心注解。本文将详细介绍这两个注解的用法、区别以及代码样例。 Valid注解 功能介…...
18、TCP连接三次握手的过程,为什么是三次,可以是两次或者更多吗【高频】
三次握手的过程: 第一次握手:客户端 向 服务器 发送一个 SYN(也就是同步序列编号报文),请求建立连接。随后,客户端 进入 SYN_SENT 状态;服务器收到 SYN 之后,由 LISTEN 状态变为 SYN…...
Ceph(2):Ceph简介
1 Ceph简介 Ceph使用C语言开发,遵循LGPL协议开源。Sage Weil(Ceph论文发表者)于2011年创立了以Inktank公司主导Ceph的开发和社区维护。2014年Redhat收购inktank公司,并发布Inktank Ceph企业版(ICE)软件,业务场景聚焦云…...
第二篇:CTF常见题型解析:密码学、逆向工程、漏洞利用、Web安全
# 零基础小白入门CTF解题到成为CTF大佬系列文章 ## 第二篇:CTF常见题型解析:密码学、逆向工程、漏洞利用、Web安全 ### 引言 在CTF比赛中,题目类型多种多样,涵盖了网络安全领域的多个方向。掌握这些题型的解题方法,…...
《Python基础教程》附录B笔记:Python参考手册
《Python基础教程》第1章笔记👉https://blog.csdn.net/holeer/article/details/143052930 附录B Python参考手册 Python标准文档是完整的参考手册。本附录只是一个便利的速查表,当你开始使用Python进行编程后,它可帮助你唤醒记忆。 B.1 表…...
linux学习(十三)(shell编程(文字,变量,循环,条件,调试))
Shell 编程 Shell 编程,也称为 shell 脚本,是 Linux作系统不可或缺的一部分。shell 脚本实质上是系统 shell 执行的程序。虽然它可能不如 C 或 C 等编译语言强大,但 shell 编程对于管理级任务、自动执行重复性任务和系统监控非常有效。 大多…...
大模型微调中warmup(学习率预热)是什么
大模型微调中warmup(学习率预热)是什么 在大模型微调中,添加warmup(学习率预热)是指在训练初期逐步增加学习率,避免直接使用高学习率导致参数震荡。 🔧 为什么需要warmup? 大模型参数敏感:预训练模型的参数已接近最优,初期用大学习率可能剧烈扰动参数(如“急刹车…...
wireshark 如何关闭混杂模式 wireshark操作
Fiddler和Wireshark都是进行抓包的工具:所谓抓包就是将网络传输发送与接收的数据包进行截获、重发、编辑、转存等操作,也用来检查网络安全。抓包也经常被用来进行数据截取等。黑客常常会用抓包软件获取你非加密的上网数据,然后通过分析&#…...
ChatGPT4.5详细介绍和API调用详细教程
OpenAI在2月27日发布GPT-4.5的研究预览版——这是迄今为止OpenAI最强大、最出色的聊天模型。GPT-4.5在扩大预训练和微调规模方面迈出了重要的一步。通过扩大无监督学习的规模,GPT-4.5提升了识别内容中的模式、建立内容关联和生成对于内容的见解的能力,但…...
centos linux安装mysql8 重置密码 远程连接
1. 下载并安装 MySQL Yum 仓库 从 MySQL 官方网站下载并安装 Yum 仓库配置文件。 # 下载MySQL 8.0的Yum仓库包 wget https://dev.mysql.com/get/mysql80-community-release-el7-5.noarch.rpm # 安装Yum仓库包 sudo rpm -ivh mysql80-community-release-el7-5.noarch.rpm2. 启…...
AWS 如何导入内部SSL 证书
SSL 证书的很重要的功能就是 HTTP- > HTTPS, 下面就说明一下怎么导入ssl 证书,然后绑定证书到ALB. 以下示例说明如何使用 AWS Management Console 导入证书。 从以下位置打开 ACM 控制台:https://console.aws.amazon.com/acm/home。如果您是首次使用 ACM,请查找 AWS Cer…...
Unity DOTS从入门到精通之 自定义Authoring类
文章目录 前言安装 DOTS 包什么是Authoring1. 实体组件2. Authoring类 前言 DOTS(面向数据的技术堆栈)是一套由 Unity 提供支持的技术,用于提供高性能游戏开发解决方案,特别适合需要处理大量数据的游戏,例如大型开放世…...
一键换肤的Qt-Advanced-Stylesheets
项目简介 能在软件运行时对 CSS 样式表主题(包括 SVG 资源和 SVG 图标)进行实时颜色切换的Qt项目。 项目预览: 项目地址 地址:Qt-Advanced-Stylesheets 本地编译环境 Win11 家庭中文版 Qt5.15.2 (MSVC2019) Qt Creator1…...
golang 静态库 Undefined symbol: __mingw_vfprintf
正常用golang编译一个静态库给 其他语言 调用,编译时报错 Error: Undefined symbol: __mingw_vfprintf 很是奇怪,之前用用golang写静态库成功过,编译也没问题,结果却是截然不同。 试了很多次,发现唯一的差别就是在 …...
宝塔的ssl文件验证域名后,会在域名解析列表中留下记录吗?
在使用宝塔面板进行SSL证书验证域名后,通常不会在域名解析列表中留下记录。验证过程中添加的TXT记录仅用于验证域名的所有权,一旦验证完成,就可以安全地删除这些记录,不会影响SSL证书的正常使用。根据搜索结果,DNS验证…...
Linux 网络:skb 数据管理
文章目录 1. 前言2. skb 数据管理2.1 初始化2.2 数据的插入2.2.1 在头部插入数据2.2.2 在尾部插入数据 2.2 数据的移除 3. 小结 1. 前言 限于作者能力水平,本文可能存在谬误,因此而给读者带来的损失,作者不做任何承诺。 2. skb 数据管理 数…...
wireguard搭配udp2raw部署内网
前言 上一篇写了使用 wireguard 可以非常轻松的进行组网部署,但是如果服务器厂商屏蔽了 udp 端口,那就没法了 针对 udp 被服务器厂商屏蔽的情况,需要使用一款 udp2raw 或 socat 类似的工具,来将 udp 打包成 tcp 进行通信 这里以…...
Qwen/QwQ-32B 基础模型上构建agent实现ppt自动生成
关心Qwen/QwQ-32B 性能测试结果可以参考下 https://zhuanlan.zhihu.com/p/28600079208https://zhuanlan.zhihu.com/p/28600079208 官方宣传上是该模型性能比肩满血版 DeepSeek-R1(671B)! 我们实现一个 使用Qwen/QwQ-32B 自动生成 PowerPoi…...
【Linux】使用问题汇总
#1 ssh连接的时候报Key exchange failed 原因:服务端版本高,抛弃了一些不安全的交换密钥算法,且客户端版本比较旧,不支持安全性较高的密钥交换算法。 解决方案: 如果是内网应用,安全要求不这么高…...
PostgreSQL17(最新版)安装部署
PostgreSQL 17已与2024年9月26日正式发布!!! 一、Postgres概述 官网地址:PostgreSQL: The world’s most advanced open source database Postgres作为最先进的开源数据库( the latest version of the world’s most…...
【AI大模型智能应用】Deepseek生成测试用例
在软件开发过程中,测试用例的设计和编写是确保软件质量的关键。 然而,软件系统的复杂性不断增加,手动编写测试用例的工作量变得异常庞大,且容易出错。 DeepSeek基于人工智能和机器学习,它能够依据软件的需求和设计文…...
【高级篇】大疆Pocket 3加ENC编码器实现无线RTMP转HDMI进导播台
【高级篇】大疆Pocket 3加ENC编码器实现无线RTMP转HDMI进导播台 文章目录 准备工作连接设备RTMP概念ENCSHV2推流地址设置大疆Pocket 3直播设置总结 老铁们好! 很久没写软文了,今天给大家带了一个干货,如上图,大疆Pocket 3加ENC编…...
机器人交互系统 部署构建
环境要求 Ubuntu 20.04 或更高版本ROS Noetic 或兼容版本Python 3.8 安装步骤 1. 安装ROS环境(如未安装) sudo apt update sudo apt install ros-noetic-desktop-full source /opt/ros/noetic/setup.bash2. 创建工作空间并克隆代码 mkdir -p ~/code…...
Android Telephony 四大服务和数据网络控制面数据面介绍
在移动通信和Android系统中,涉及的关键概念和服务以及场景案例说明如下: 一、概念 (一)Android Telephony 的四大服务 介绍Telephony Data 与 Android Data 的四大服务在Android系统中,与电话(Telephony)和移动数据(Data)相关的核心服务主要包括以下四类: 1. Tele…...
创建模式-工厂方法模式(Factory Method Pattern)
江城子乙卯正月二十日夜记梦 目的动机简单工厂示例代码 目的 定义一个创建对象的接口,该接口的子类具体负责创建具体的对象。工厂方法模式将对象的实例化延迟到子类。简单工厂是直接在创建方法中负责所有的产品的生成,造成该方法臃肿,并且当…...
