c++0305习题

一、求下面表达式的值

1.0

2.-1

3.1

4.(1)1 (2)3.2  (3)0  (4)7.0

5.(1)0(2)300.005(3)0(4)1(5)1

二、将100元兑换成1元、2元、5元纸币,保证1元、2元、5元纸币的数量至少为1,将所有兑换方法输出,并输出总共有多少种兑换方法?

#include <iostream>
using namespace std;int main() {int count = 0; // 初始化兑换方案计数器为0// 三重循环,分别遍历1元、2元、5元纸币的数量for (int i = 1; i <= 100; i++) { // 1元纸币数量从1到100循环for (int j = 1; j <= 50; j++) { // 2元纸币数量从1到50循环for (int k = 1; k <= 20; k++) { // 5元纸币数量从1到20循环if (i + 2 * j + 5 * k == 100) { // 判断当前组合是否能兑换成100元count++; // 如果能兑换成功,计数器加1cout << "1元:" << i << "张,2元:" << j << "张,5元:" << k << "张" << endl; // 输出当前兑换方案}}}}cout << "总共有 " << count << " 种兑换方法。" << endl; // 输出总共有多少种兑换方法return 0;
}

扩展1.(简约版):

 扩展2.(不考虑所有钱币都存在版):

三. 公鸡5文钱一只,母鸡3文钱一只,小鸡3只一文钱,用100文钱买一百只鸡,其中公鸡,母鸡,小鸡都必须要有,问公鸡,母鸡,小鸡要买多少只刚好凑足100文钱。并输出总共有多少种购买方法。

#include <iostream>
using namespace std;int main() {int count = 0;for (int i = 1; i <= 20; i++) {for (int j = 1; j <= 33; j++) {int k = 100 - i - j;if (5 * i + 3 * j + k / 3 == 100 && k % 3 == 0) {count++;cout << "公鸡:" << i << " 只,母鸡:" << j << " 只,小鸡:" << k << " 只" << endl;}}}cout << "总共有 " << count << " 种购买方法。" << endl;return 0;
}

四, 输入一些字符,直接输入#号结束,将输入的字符大写转换为小写,小写转换为大写,如果是数字则不操作,分别统计完成转换后大写字母小写字母及数字个数。

#include <iostream>
#include <cctype>
using namespace std;int main() {char input;int daCount = 0, xiaoCount = 0, shuziCount = 0;cout << "请输入一些字符,以#号结束:" << endl;while (cin >> input && input != '#') {if (isupper(input)) {cout << "转换后:" << static_cast<char>(tolower(input))<<endl ;xiaoCount++;}else if (islower(input)) {cout << "转换后:" << static_cast<char>(toupper(input))<<endl ;daCount++;}else if (isdigit(input)) {cout << "数字不做转换:" << input<<endl;shuziCount++;}}cout << "大写字母个数:" << daCount << endl;cout << "小写字母个数:" << xiaoCount << endl;cout << "数字个数:" << shuziCount << endl;return 0;
}//while (cin >> input && input != '#') { ... }:这是一个while循环,用于持续地从标准输入读取字符,直到输入为#为止。
// cin >> input表示从标准输入流(通常是键盘)读取一个字符,并将其存储在变量input中。
// input != '#'是一个条件判断,只要读取到的字符不是#,循环就会继续执行。
//if (isupper(input)) { ... }:这是一个if条件语句,用于检查变量input是否包含一个大写字母。
// isupper是一个标准库函数,用于检测传入的字符是否为大写字母。如果是大写字母,则执行大括号{ ... }内的代码。//cout << "转换后:" << static_cast<char>(tolower(input)) << endl; :这行代码做了几件事情:
//tolower(input):调用tolower函数,将input中的大写字母转换为小写字母。如果input不是大写字母,tolower会返回input本身。
//static_cast<char>(...):这是一个类型转换,确保tolower函数的返回值被正确地解释为字符类型。
// 虽然在这个特定的例子中可能不是必需的(因为tolower通常返回int,但可以直接赋值给char),但在更一般的情况下,类型转换可以确保类型的正确性。
//cout << "转换后:" << ... << endl; :输出转换后的字符到标准输出流(通常是屏幕)。
// "转换后:"是一个字符串字面量,用于在输出中标识转换后的字符。endl是一个操纵符,用于插入一个新行,并刷新输出缓冲区。
//lowercaseCount++; :这行代码增加lowercaseCount变量的值。注意,虽然变量名是lowercaseCount,但实际上这里是在计数大写字母被转换为小写字母的次数。
//总结:这段代码的主要功能是读取用户输入的字符,如果字符是大写字母,就输出转换后的小写字母,并增加一个计数器
//这个过程会持续进行,直到用户输入#字符为止。

简单版代码:

#include<iostream>
#include<cctype>
using namespace std;
int main() {char input;int daxiecount=0, xiaoxiecount=0, shuzicount = 0;cout << "请输入一些字符,以#号结束:" << endl;while (cin>>input&&input!='#') {if (isupper(input)) {input = tolower(input);xiaoxiecount++;}else if (islower(input)) {input = toupper(input);xiaoxiecount++;}else {shuzicount++;}cout << input;}cout << endl;cout << "大写个数" << daxiecount << ' ' << "小写个数" << xiaoxiecount << ' ' << "数字个数" << shuzicount << ' ' << endl;return 0;
}

五、一个球从100高度落下,每次反弹原高度的一半,求第10次落地时共经过的路程。 

//5.一个球从100高度落下,每次反弹原高度的一半,求第10次落地时共经过的路程。
#include <iostream>
using namespace std;int main() {double height = 100.0;double distance = 100.0; // 第一次落地的路程for (int i = 2; i <= 10; i++) {height /= 2; // 反弹的高度distance += height * 2; // 一次上升和下降的距离}cout << "第10次落地时共经过的路程为:" << distance << endl;return 0;
}

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/732301.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

python中lambda简介及用法

什么是lambda&#xff1f; lambda是python中的一个关键字&#xff0c;它用于创建匿名函数&#xff0c;也就是没有名字的函数。lambda函数通常用于一些简单的操作&#xff0c;比如作为参数传递给其他函数&#xff0c;或者作为返回值返回给调用者。lambda函数的语法如下&#xf…

记录tensorflow cpu版本安装

已有&#xff1a;anaconda环境 创建虚拟环境 conda create -n tf_cpu python3.9.0 进入虚拟环境 activate tf_cpu 可以选择设置下载源 # 查看当前下载源 conda config --show-sources # 添加下载源 # 清华镜像源 conda config --add channels https://mirrors.tuna.tsing…

数据结构面试问题

数据结构是计算机科学中一个非常重要的基础知识,在面试中也经常会被问到。本文将详细介绍几种常见数据结构的面试题,并给出代码示例,希望对大家准备面试有所帮助。 一、数组和字符串 1. 如何反转一个字符串? 最简单的方法是使用双指针,一个指向字符串开头,一个指向结尾,然后…

Ubuntu 18.04安装最新版Visual Studio Code(VS Code)报依赖库版本过低错误

Ubuntu 18.04安装最新版Visual Studio Code&#xff08;VS Code&#xff09;报依赖库版本过低错误 1. 问题描述2. 解决方案2.1 修复之前安装的错误2.2 安装VS Code 1.85.2 3. 原因分析 1. 问题描述 在Ubuntu 18.04系统上安装VS Code ≥ v1.86.2&#xff08;测试到v1.87.1&…

laravel 模型多对多,应用

laravel 模型多对多&#xff0c;应用&#xff0c;试卷 跟 区域 多对多关系 一个试卷可以发放到a b c 区域 创建试卷表 CREATE TABLE exams (exam_id int(11) unsigned NOT NULL AUTO_INCREMENT,exam_title varchar(100) NOT NULL DEFAULT COMMENT 标题,created_time int(11…

考虑局部遮阴的光伏PSO-MPPT控制MATLAB仿真

微❤关注“电气仔推送”获得资料&#xff08;专享优惠&#xff09; 简介 光伏电池阵列的输出特性曲线不是线性变化的。当光伏电池遮荫时&#xff0c;产生的功 率会不断变化&#xff0c;致使光伏电池阵列的输出功率不断变化&#xff0c;其输出特性曲线呈现多峰值的现象。 多峰…

【漏洞复现】Linksys E2000 position.js 身份验证绕过漏洞(CVE-2024-27497)

0x01 产品简介 Linksys E2000是一款由思科&#xff08;Cisco&#xff09;品牌推出的无线路由器&#xff0c;它是一款支持2.4GHz和5GHz双频段的无线路由器&#xff0c;用户可以避开拥挤的2.4GHz频段&#xff0c;独自享受5GHz频段的高速无线生活。 0x02 漏洞概述 Linksys E200…

Jmeter 使用教程(小白一学就会)

下载 官网下载地址 解压 zip 打开 进入 jmeter 的 bin 目录下mac 电脑启动&#xff0c;执行以下命令&#xff08;注意 windows 使用 jmeter.bat 启动&#xff09; ./jmeter打开成功 修改为中文 创建测试计划 添加线程组 修改线程属性 在线程组添加 HTTP 请求 设置 Web…

golang数组和Slice地址

var nameList [56]string // 数组指针地址与数据第一个值地址相同 fmt.Printf("nameLists数组的内存地址为%p\n", &nameList) fmt.Printf("nameList数组中第一个元素的地址为%p\n", &nameList[0]) fmt.Printf("nameList数组中第二个元素的地址…

深入理解MySQL中的MVCC(多版本并发控制)

在MySQL中&#xff0c;MVCC是一种用于提供并发控制的技术&#xff0c;它允许数据库系统在事务并发执行的情况下保持数据的一致性&#xff0c;同时提高了数据库的并发性能。MVCC背后的理念是允许每个事务可以看到一个一致性的快照&#xff0c;从而避免了读取操作被写入操作所阻塞…

Spring之BeanFactory与FactoryBean的区别

BeanFactory BeanFactory是Spring中工厂的顶层接口&#xff0c;也是IOC容器的核心接口&#xff0c;BeanFactory中定义了管理Bean的通用方法&#xff0c;职责包括实例化、定位、配置应用程序中的对象以及建立这些对象的依赖。BeanFactory只是一个接口&#xff0c;并不是IOC容器…

DDR3 NATIVE接口

参考&#xff1a; DDR3 控制器 MIG IP 详解完整版 &#xff08;native&Vivado&Verilog&#xff09;_mig ip核-CSDN博客 APP和AXI接口有许多相似的地方&#xff08;握手部分&#xff09;&#xff0c; 但是由于和物理芯片直接相关&#xff0c;有更多不一样的地方。 a…

Python算法题集_搜索二维矩阵

Python算法题集_搜索二维矩阵 题74&#xff1a;搜索二维矩阵1. 示例说明2. 题目解析- 题意分解- 优化思路- 测量工具 3. 代码展开1) 标准求解【矩阵展开为列表二分法】2) 改进版一【行*列区间二分法】3) 改进版二【第三方模块】 4. 最优算法5. 相关资源 本文为Python算法题集之…

c++中string的使用!!!(适合初学者 浅显易懂)

我们先初步的认识一下string,string底层其实是一个模版类 typedef basic_string<char> string; 我们先大致的把string的成员函数列举出来 class string { private: char * str; size_t size; size_t capacity; }; 1.string的六大默认函数 1.1 构造函数、拷贝构造 注&am…

基础刷题50之四(有效的字母异位词)

提示&#xff1a;文章写完后&#xff0c;目录可以自动生成&#xff0c;如何生成可参考右边的帮助文档 文章目录 前言一、题目二、力扣官方题解1、排序2、哈希表 三、文心一言解释1、排序2、哈希表 总结 前言 刚上研一&#xff0c;有人劝我好好学C&#xff0c;当时用的不多就没…

动态规划(算法竞赛、蓝桥杯)--数位DP--Windy树

1、B站视频链接&#xff1a;E37 数位DP Windy数_哔哩哔哩_bilibili 题目链接&#xff1a;[SCOI2009] windy 数 - 洛谷 #include <bits/stdc.h> using namespace std; const int N 12; int a[N]; //把整数的每一位数字抠出来&#xff0c;存入数组 int f[N][10]; /…

代码随想录算法训练营第36天—动态规划04 | ● 01背包问题,你该了解这些! ● 01背包问题,你该了解这些! 滚动数组 ● 416. 分割等和子集

01背包 https://programmercarl.com/%E8%83%8C%E5%8C%85%E7%90%86%E8%AE%BA%E5%9F%BA%E7%A1%8001%E8%83%8C%E5%8C%85-1.html 视频讲解&#xff1a;https://www.bilibili.com/video/BV1cg411g7Y6 常见的背包问题类型&#xff08;大厂面试重点掌握01背包和完全背包即可&#xf…

LeetCode-1944题: 队列中可以看到的人数(原创)

【题目描述】 有 n 个人排成一个队列&#xff0c;从左到右 编号为 0 到 n - 1 。给你以一个整数数组 heights &#xff0c;每个整数 互不相同&#xff0c;heights[i] 表示第 i 个人的高度。一个人能 看到 他右边另一个人的条件是这两人之间的所有人都比他们两人 矮 。更正式的&…

能量不等式证明

波动方程初值问题能量不等式的证明 Gronwall 不等式 若非负函数 G ( τ ) G(\tau) G(τ) 在 [ 0 , T ] [0,T] [0,T] 上连续可微&#xff0c; G ( 0 ) 0 G(0)0 G(0)0&#xff0c;且对 τ ∈ [ 0 , T ] \tau\in[0,T] τ∈[0,T]满足 d G ( τ ) d τ ≤ C G ( τ ) F ( τ …

BJFU|大数据基础考前速记(含考试大纲与复习笔记)

考试大纲与复习笔记在文末 考前速记 2010年前后&#xff0c;大数据、云计算、物联网的快速发展拉开了第三次信息化浪潮的大幕。 信息科技需要解决信息存储、信息处理和信息传输三个核心问题。解决方式是&#xff1a;存储设备容量不断增加、CPU处理能力大幅提升、网络带宽不断…