C++ Primer Plus 第二章习题
目录
复习题
1.C++程序的模块叫什么?
2.#include 预处理器编译指令的用处?
3.using namespace std; 该语句是干什么用的?
4.什么语句可以打印一个语句"hello,world",然后重新换行?
5.什么语句可以用来创建名为cheeses的整型变量?
6.什么语句可以用来将值32赋值给cheeses?
7.从键盘输入的值读入变量cheeses中的语句是?
8.写出打印"We have X varieties of cheese"的语句,其中X是当前输入值。
9.下面的函数原型指出了关于函数的哪些信息?
10.定义函数时,是什么情况下不必使用关键字return?
11.假设main()函数包含以下代码:
第二章编程练习
我的题解(test01-07对应相应题号)
复习题
1.C++程序的模块叫什么?
答:C++ 程序的模块叫做函数。
2.#include 预处理器编译指令的用处?
答:在编译之前,将iostream里面的文件内容替换编译指令,iostream为内置类型类型对象提供了输入输出支持,同时也支持文件的输入输出,类的设计者可以通过对iostream库的扩展,来支持自定义类型的输入输出操作。
3.using namespace std; 该语句是干什么用的?
答:using 是预编译器指令,使得程序使用std名称空间中的定义
4.什么语句可以打印一个语句"hello,world",然后重新换行?
//第一种:
cout<<"hello,world\n";//第二种:
cout<<"hello,world"<<endl;
5.什么语句可以用来创建名为cheeses的整型变量?
int cheeses;
6.什么语句可以用来将值32赋值给cheeses?
cheeses = 32;
7.从键盘输入的值读入变量cheeses中的语句是?
cin>>cheeses;
8.写出打印"We have X varieties of cheese"的语句,其中X是当前输入值。
cout<<"We have "<<cheese<<" varieties of cheese"<<endl;
9.下面的函数原型指出了关于函数的哪些信息?
int froop(double t); void rattle(int n); int prune(void);
int froop(double t); /*指出函数在调用需要输入的参数是double类型,函数的返回值是一个int类型。*/void rattle(int n); /*函数调用是需要输入的参数是int类型,函数无返回值。*/int prune(void); /*不接受任何参数的输入,函数的返回值是int类型*/
10.定义函数时,是什么情况下不必使用关键字return?
当函数的返回值的类型是void时,不用在函数中使用return。
11.假设main()函数包含以下代码:
cout<<"请输入你的PIN:";
而编译器指出cout是一个未知标识符,导致该问题的原因是?写出可能的三种情况并给出解决办法?
答案:
原因:
未使用using命名空间解决方案:
1. 函数开头添加 using namespace std;
2. cout对象前添加 using std::cout
3. 在cout对象前添加 std::cout
第二章编程练习
1. 编写一个C++程序,它显示您的姓名和地址。
2. 编写一个C++程序,它要求用户输入一个以long为单位的距离,然后将它转换为码(一long等于220码)。
3. 编写一个C++程序,它使用3个用户定义的函数(包括main()),并生成下面的输出:
Three blind mice
Three blind mice
See how they run
See how they run
其中一个函数要调用两次,该函数生成前两行;另一个函数也被调用两次,并生成其余的输出。
4. 编写一个程序,让用户输入其年龄,然后显示该年龄包含多少个月,如下所示:
Enter your age: 29
5. 编写一个程序,其中的main()调用一个用户定义的函数(以摄氏温度值为参数,并返回相应的华氏温度值)。该程序按下面的格式要求用户输入摄氏温度值,并显示结果:
Please enter a Celsius value: 20
20 degrees Celsius is 68 degrees Fahrenheit.
下面是转换公式:
华氏温度 = 1.8 * 摄氏温度 + 32.0
6. 编写一个程序,其main()调用一个用户定义的函数(以光年值为参数,并返回对应天文单位的值)。该程序按下面的格式要求用户输入光年值,并显示结果:
Enter the number of light yeras: 4.2
4.2 light years = 265608 astronomical units.
天文单位是从地球到太阳的平均距离(约150000000公里或93000000英里),光年是光一年走的距离(约10万亿公里或6万亿英里)(除太阳外,最近的恒星大约离地球4.2光年)。请使用double类型,转换公式为:
1光年 = 63240天文单位
7. 编写一个程序,要求用户输入小时数和分钟数。在main()函数中,将这两个值传递给一个void函数,后者以下面这样的格式显示这两个值:
Enter the number of hours: 9
Enter the number of minutes: 28
Time: 9:28
我的题解(test01-07对应相应题号)
#include<iostream>
using namespace std;void test01()
{cout << "name" << endl;cout << "address" << endl;
}void test02()
{int l;cout << "请输入一个以long为单位的距离: ";cin >> l;cout << l * 220 << "码" << endl;
}void test03_1()
{cout << "Three blind mice" << endl;
}void test03_2()
{cout << "See how they run" << endl;
}void test04()
{int age;cout << "Enter your age : ";cin >> age;cout <<"您的年龄转化为月共有" << age * 12 << "个月" << endl;
}void test05()
{int T;cout << "Please enter a Celsius value : ";cin >> T;cout << T <<" degrees Celsius is " <<T*1.8+32<< "degrees Fahrenheit." << endl;
}void test06()
{double y;cout << "Enter the number of light years: ";cin >> y;cout << y << " light years = " << y * 63240 << " astronomical units." << endl;}void test07()
{int h, m;cout << "Enter the number of hours : ";cin >> h;cout << "Enter the number of minutes : ";cin >> m;cout << "Time: " << h << ":" << m << endl;
}
int main()
{test01();test02();test03_1();test03_1();test03_2();test03_2();test04();test05();test06();test07(); return 0;
}
运行结果:

相关文章:
C++ Primer Plus 第二章习题
目录 复习题 1.C程序的模块叫什么? 2.#include 预处理器编译指令的用处? 3.using namespace std; 该语句是干什么用的? 4.什么语句可以打印一个语句"hello,world",然后重新换行? 5.什么语句可以用来创…...
两分钟学会 制作自己的浏览器 —— 并将 ChatGPT 接入
前期回顾 分享24个强大的HTML属性 —— 建议每位前端工程师都应该掌握_0.活在风浪里的博客-CSDN博客2分享4个HTML5 属性,开发必备https://blog.csdn.net/m0_57904695/article/details/130465836?spm1001.2014.3001.5501 👍 本文专栏:开发…...
HEVC中,mvd怎么写进码流的?
文章目录 Motion vector difference syntax 标准文档描述语义解释设计意义 Motion vector difference syntax 标准文档描述 语义解释 MvdL1[ x0 ][ y0 ][ compIdx ] L1列表的mvd x0,y0 表示亮度快左上角坐标 compIdx 0表示水平 compIdx 0表示垂直 mvd_l1_zero_flag:…...
隐形黑客潜入美国和关岛关键基础设施而未被发现
微软和“五眼联盟”国家周三表示,一个隐秘的组织成功地在美国和关岛的关键基础设施组织中建立了一个持久的立足点,而没有被发现。 这家科技巨头的威胁情报团队正在以伏特台风(Volt Typhoon)的名义跟踪这些活动,包括入侵后的凭证访问和网络系…...
设计模式—“接口隔离”
在组件构建过程中,某些接口之间直接的依赖常常会带来很多问题、甚至根本无法实现。采样添加一层间接(稳定)接口,来隔离本来互相紧密关联的接口是一种常见的解决方案。 典型模式有:Fascade、Proxy、Adapter、Mediator 一、Fascade 动机 上述A方案的问题在于组件的客户和…...
【C++学习】异常
🐱作者:一只大喵咪1201 🐱专栏:《C学习》 🔥格言:你只管努力,剩下的交给时间! 异常 🥮异常🍢自定义异常体系🍢C标准库的异常体系🍢异…...
如何理解TCP是面向字节流协议?
传输层是网络协议中的重要层次之一,主要负责向两个主机中的进程之间的通信提供服务。传输层的主要功能包括复用和分用、流量控制、分段/重组和差错控制。传输层在终端用户之间提供透明的数据传输,向上层提供可靠的数据传输服务。 传输层的复用和分用功能…...
机器学习期末复习 线性模型
1.线性回归,对数几率回归,线性判别分析是分类还是回归任务?是有监督的学习还是无监督的学习? 有监督学习和无监督学习 解释: 线性模型要做的有两类任务:分类任务、回归任务 分类的核心就是求出一条直线w…...
Worker及XMLHttpRequest简单使用说明
Worker 一、作用及使用场景 在Web应用程序中创建多线程环境,可以运行独立于主线程的脚本,从而提高Web应用的性能和响应速度。 Worker.js主要应用场景包括: 数据处理:在数据量较大的情况下,使用Worker可以将数据分成…...
零基础如何入门网络安全?2023年专业学习路线看这篇就够了
前景 很多零基础朋友开始将网络安全作为发展的大方向,的确,现如今网络安全已经成为了一个新的就业风口,不仅大学里开设相关学科,连市场上也开始大量招人。 那么网络安全到底前景如何?大致从市场规模、政策扶持、就业…...
《操作系统》by李治军 | 实验5.pre - switch_to 汇编代码详解
目录 【前言】 一、栈帧的处理 1. 什么是栈帧 2. 为什么要处理栈帧 3. 执行 switch_to 前的内核栈 4. 栈帧处理代码分析 二、PCB 的比较 1. 根据 PCB 判断进程切换与否 2. PCB 比较代码分析 三、PCB 的切换 1. 什么是 PCB 的切换 2. PCB 切换代码分析 四、TSS 内核…...
c++11基础
文章目录: c11简介统一的列表初始化{}初始化std::initializer_list 声明autodecltypenullptr 范围for循环STL中的一些变化arrayforward_listunordered_map和unordered_set 字符串转换函数 c11简介 在2003年C标准委员会曾经提交了一份技术勘误表(简称TC1)࿰…...
Linux:centos:修改临时ip永久ip
使用 ifconfig 查看网卡信息以及ip 临时配置ip 找到要修改ip的网卡的名称(我这里使用名称为:ens33网卡) # ifconfig 网卡名 ip /子网掩码 ifconfig ens33 192.168.1.2/24 配置永久ip 去配置网卡文件 vi /vim 或 nano vim /etc/s…...
如何真正开启docker远程访问2375
注意看官方文档 Configure remote access for Docker daemon | Docker Documentation 1. windows上Docker Desktop开启远程访问端口2375 系统版本: win10专业版 Docker Desktop版本:4.18.0 很简单勾上, 应用并重启即可 2. linux上开启 尝…...
nodejs连接mysql
npm i express #node后端框架npm i corsnpm i mysqlconst app require(express)(); const cors require(cors); const port 5000; const mysql require(mysql) //引入mysql 模块app.use(cors({}))const conn mysql.createConnection({user: root,password: qwertyuiop…...
异构跨库数据同步还在用Datax?来看看这几个开源的同步方案
在遇到跨库或者异库数据同步时,我们一般都会借助ETL工具来实现数据同步功能。比如目前大家较为熟知的Kettle和Datax。但是,这两个需要定时去查询数据库的数据,会存在一定的延迟,而且,默认采用全量同步的方式࿰…...
msvcp140.dll丢失怎么办?msvcp140.dll重新安装的解决方法
msvcp140.dll是微软编译器系统中的一个动态链接库文件,它存储了许多的代码和数据,能帮助计算机程序正常运行。当系统中出现了msvcp140.dll丢失的情况时,则会出现程序无法正常运行的错误。这篇文章将为大家介绍如何解决msvcp140.dll丢失的问题…...
mysql超全语法大全
mysql安装教程 一、登录(使用可视化工具,可忽略) 打开命令行工具,输入以下命令,根据提示输入 root 用户的密码。 mysql -u root -p mysql -u root -p -D 数据库名二、创建数据库 显示数据库:SHOW DATAB…...
【VR】手柄定位技术
1. 关于Quest Pro头显、控制器的规格分析(终篇)及Quest 3分辨率 (2022年07月29日)被认为是“Quest Pro”的高端一体机Project Cambria将于今年秋季正式发布。对于一直关注和分享所述设备情报的YouTuber布拉德利林奇(B…...
TDengine 启动 taosAdapter,提供基于6041端口的RESTful 接口,建立REST 连接
一、前文 TDengine 入门教程——导读 二、开发指南 TDengine 完整的软件包包括: 服务端(taosd);命令行程序 (CLI,taos) 和一些工具软件;用于与第三方系统对接并提供 RESTful 接口的 taosAdapter࿱…...
XML Group端口详解
在XML数据映射过程中,经常需要对数据进行分组聚合操作。例如,当处理包含多个物料明细的XML文件时,可能需要将相同物料号的明细归为一组,或对相同物料号的数量进行求和计算。传统实现方式通常需要编写脚本代码,增加了开…...
Zustand 状态管理库:极简而强大的解决方案
Zustand 是一个轻量级、快速和可扩展的状态管理库,特别适合 React 应用。它以简洁的 API 和高效的性能解决了 Redux 等状态管理方案中的繁琐问题。 核心优势对比 基本使用指南 1. 创建 Store // store.js import create from zustandconst useStore create((set)…...
大数据零基础学习day1之环境准备和大数据初步理解
学习大数据会使用到多台Linux服务器。 一、环境准备 1、VMware 基于VMware构建Linux虚拟机 是大数据从业者或者IT从业者的必备技能之一也是成本低廉的方案 所以VMware虚拟机方案是必须要学习的。 (1)设置网关 打开VMware虚拟机,点击编辑…...
CMake控制VS2022项目文件分组
我们可以通过 CMake 控制源文件的组织结构,使它们在 VS 解决方案资源管理器中以“组”(Filter)的形式进行分类展示。 🎯 目标 通过 CMake 脚本将 .cpp、.h 等源文件分组显示在 Visual Studio 2022 的解决方案资源管理器中。 ✅ 支持的方法汇总(共4种) 方法描述是否推荐…...
C++:多态机制详解
目录 一. 多态的概念 1.静态多态(编译时多态) 二.动态多态的定义及实现 1.多态的构成条件 2.虚函数 3.虚函数的重写/覆盖 4.虚函数重写的一些其他问题 1).协变 2).析构函数的重写 5.override 和 final关键字 1&#…...
认识CMake并使用CMake构建自己的第一个项目
1.CMake的作用和优势 跨平台支持:CMake支持多种操作系统和编译器,使用同一份构建配置可以在不同的环境中使用 简化配置:通过CMakeLists.txt文件,用户可以定义项目结构、依赖项、编译选项等,无需手动编写复杂的构建脚本…...
Visual Studio Code 扩展
Visual Studio Code 扩展 change-case 大小写转换EmmyLua for VSCode 调试插件Bookmarks 书签 change-case 大小写转换 https://marketplace.visualstudio.com/items?itemNamewmaurer.change-case 选中单词后,命令 changeCase.commands 可预览转换效果 EmmyLua…...
【深度学习新浪潮】什么是credit assignment problem?
Credit Assignment Problem(信用分配问题) 是机器学习,尤其是强化学习(RL)中的核心挑战之一,指的是如何将最终的奖励或惩罚准确地分配给导致该结果的各个中间动作或决策。在序列决策任务中,智能体执行一系列动作后获得一个最终奖励,但每个动作对最终结果的贡献程度往往…...
macOS 终端智能代理检测
🧠 终端智能代理检测:自动判断是否需要设置代理访问 GitHub 在开发中,使用 GitHub 是非常常见的需求。但有时候我们会发现某些命令失败、插件无法更新,例如: fatal: unable to access https://github.com/ohmyzsh/oh…...
字符串哈希+KMP
P10468 兔子与兔子 #include<bits/stdc.h> using namespace std; typedef unsigned long long ull; const int N 1000010; ull a[N], pw[N]; int n; ull gethash(int l, int r){return a[r] - a[l - 1] * pw[r - l 1]; } signed main(){ios::sync_with_stdio(false), …...
