目录

1.1   编程练习

1.1.1   编程题目

#第一题

#第二题

#第三题

#第四题

#第五题

#第六题

#第七题

1.2   编程讲解

1.2.1   #题目一

1.2.2   #题目二

1.2.3   #题目三

1.2.4   #题目四

1.2.5   #题目五

1.2.6   #题目六

1.2.7   #题目七

总结


【通过前两篇文章对C++的基础有了一定的了解,但是编程语言的学习绝不能仅仅通过看,必须勤练习才可以】

1.1   编程练习

先给出本篇所有的编程题目,大家可以先自己想一想写一写,如果实在无法写出便参考本篇的讲解即可。

1.1.1   编程题目

#第一题

编写一个 C++ 程序,它显示您的姓名和地址。

********************************************************************************************************

#第二题

编写一个 C++ 程序,它要求用户输入一个以 long 为单位的距离,然后将它转换为码(一 long 等于 220 码)。

********************************************************************************************************

#第三题

编写一个C++ 程序,它使用 3 个用户定义的函数(包括 main()),并生成下面的输出:

Three blind mice
Three blind mice
See how they run
See how they run

其中一个函数要调用两次,该函数生成前两行;另一个函数也被调用两次。并生成其余的输出。

********************************************************************************************************

#第四题

编写一个程序,让用户输入其年龄,然后显示该年龄包含多少个月,如下所示:

Enter your age: 29
Your age in months is 348.

********************************************************************************************************

#第五题

编写一个程序,其中的 main() 调用一个用户定义的函数(以摄氏温度值为参数,并返回相应的华氏温度值)。该程序按下面的格式要求用户输入摄氏温度值,并显示结果:

Please enter a Celsius value: 20
20 degrees Celsius is 68 degrees Fahrenheit.

下面是转换公式:

华氏度 = 1.8 x 摄氏温度 + 32.0

********************************************************************************************************

#第六题

编写一个程序,其 mian() 调用一个用户定义的函数(以光年值为参数,并返回对应天文单位的值)。该程序按下面的格式要求用户输入光年值,并显示结果:

Enter the number of light years: 4.2
4.2 light years = 265608 astronomical units.

天文单位是从地球到太阳的平均距离(约 150000000 公里或 93000000 英里),光年是一光年走的距离(约 10 万亿公里或者 6 万亿英里)(除太阳外,最近的恒星大约离地球 4.2 光年)。请使用 double 类型,转换公式:

1 光年 = 63240 天文单位

********************************************************************************************************

#第七题

编写一个程序,要求用户输入小时数和分钟数。在 main() 函数中,将这两个值传递给一个 void 函数。后面以下面这样的格式显示这两个值:

Enter the number of hours: 9
Enter the number of minutes: 28
Time: 9:28

【PS:题目来源于《C++ Primer Plus》】

1.2   编程讲解 

下面将对每一题进行讲解,供大家学习参考。

1.2.1   #题目一

#第一题

编写一个 C++ 程序,它显示您的姓名和地址。

********************************************************************************************************

这道题目很简单,我们只需要输出语句就行了,就是考察 cout 语句 的用法。

参考代码:

#include<iostream>int main()
{using namespace std;cout << "简十三,河南" << endl;return 0;
}

 程序运行结果:

简十三,河南--------------------------------

这就是这道题的一种解法,当然也可以把其拆成两个语句,例如:

#include<iostream>int main()
{using namespace std;cout << "简十三,";cout << "河南" << endl;return 0;
}

最终的运行结果都是完全一样的。

1.2.2   #题目二

#第二题

编写一个 C++ 程序,它要求用户输入一个以 long 为单位的距离,然后将它转换为码(一 long 等于 220 码)。

********************************************************************************************************

这道题其实就是考察变量以及修改变量的知识,这些在前两篇文章中都有讲解到,不明白的读者可以去回顾一下。

参考代码:

#include<iostream>int main()
{using namespace std;int Long;   //声明定义变量cout << "输入一个数字:";cin >> Long;   //输入数据cout << "转换为 " << Long * 220 << " 码" << endl;return 0;
}

程序运行结果:

输入一个数字:1
转换为 220 码--------------------------------

1.2.3   #题目三

#第三题

编写一个C++ 程序,它使用 3 个用户定义的函数(包括 main()),并生成下面的输出:

Three blind mice
Three blind mice
See how they run
See how they run

其中一个函数要调用两次,该函数生成前两行;另一个函数也被调用两次。并生成其余的输出。

之前没有接触过任何语言的读者可能第一眼看见这道题觉得很难。其实只要把题目读懂了,这道题就很清晰了。这道题考察的就是——函数调用。“其中一个函数要调用两次”,这句话也误导了很多人,让人觉得这不仅仅是简单的函数调用,其实它就是简单的调用,只不过要求我们调用两次而已。这一点放在下述代码中进行理解。

还有需要注意的一点本题特别要求了需要使用 3 个用户定义的函数(包括 main()),说白了,就是上面的两句话(本是四句,但是两两重复所以相当于只用两句)分别对应一个函数即可。好,下面我们结合具体的例子进行理解。

参考代码:

#include<iostream>using namespace std;void Part_one();   //声明函数原型
void Part_two();   //声明函数原型int main()
{Part_one();    //调用函数 (一次)Part_one();    //调用函数 (两次)Part_two();    //调用函数 (一次)Part_two();    //调用函数 (两次)}void Part_one()  //创建函数 1
{cout << "Three blind mice" << endl;
}void Part_two()  //创建函数 2
{cout << "See how they run" << endl;
}

程序运行结果:

Three blind mice
Three blind mice
See how they run
See how they run--------------------------------
void Part_one()  //创建函数 1
{cout << "Three blind mice" << endl;
}void Part_two()  //创建函数 2
{cout << "See how they run" << endl;
}

本题的关键就在这,只要创建这两个函数即可,因为返回的是语句,所以我们选择无返回值的函数进行创建。

至于调用两次就更好理解了,它要求调用两次那我们就调用两次呗:

 Part_one();    //调用函数 (一次)Part_one();    //调用函数 (两次)Part_two();    //调用函数 (一次)Part_two();    //调用函数 (两次)

就这样即可,怎么样是不是很简单?

1.2.4   #题目四 

 #第四题

编写一个程序,让用户输入其年龄,然后显示该年龄包含多少个月,如下所示:

Enter your age: 29
Your age in months is 348.

先来分析题目的要求:

该年龄包含多少个月其实就是——多少年(年龄)包含多少个月。怎么样是不是问的很简单?这道题的考察点还是变量以及修改变量的知识点。

参考代码:

#include<iostream>int main()
{using namespace std;int year;   //声明定义变量cout << "Enter your age: ";cin >> year;   //输入数据cout << "Your age in months is " << year * 12 << "." << endl;return 0;
}

 程序运行结果:

Enter your age: 29
Your age in months is 348.--------------------------------

1.2.5   #题目五

#第五题

编写一个程序,其中的 main() 调用一个用户定义的函数(以摄氏温度值为参数,并返回相应的华氏温度值)。该程序按下面的格式要求用户输入摄氏温度值,并显示结果:

Please enter a Celsius value: 20
20 degrees Celsius is 68 degrees Fahrenheit.

下面是转换公式:

华氏度 = 1.8 x 摄氏温度 + 32.0

可能有的读者不知道什么是华氏度,无所谓题目已经给出了二者之间的转化式子,我们照搬即可。

本题要求使用函数调用,因为求出的是一个数值,所以我们可以选择创建一个有返回值的函数。剩下的就是简单的变量以及修改变量了。(是不是发现考察了很多次了?)

参考代码:

#include<iostream>
double degree_Fahrenheit(double);  //声明函数原型using namespace std;  // using 编译指令int main()
{double celsius;   //声明定义变量cout << "Please enter a Celsius value: ";cin >> celsius;   //输入数据cout << celsius;cout << " degrees Celsius is " << degree_Fahrenheit(celsius) << " degrees Fahrenheit." << endl;return 0;
}double degree_Fahrenheit(double celsius)   //创建函数
{return celsius * 1.8 + 32;   //返回值
}

程序运行结果:

Please enter a Celsius value: 20
20 degrees Celsius is 68 degrees Fahrenheit.--------------------------------

有一点值得注意的地方:

double degree_Fahrenheit(double celsius)   //创建函数
{return celsius * 1.8 + 32;   //返回值
}

还可以有另外一种表示方式:

double degree_Fahrenheit(double celsius)   //创建函数
{double A = celsius * 1.8 + 32;   return A;   //返回值
}

但是大多数人选择前者因为少打几个字母(对于程序员来说这是非常讨厌的事情)。

  注意:为了方便这里我定义了一个新的变量 A,但是正常情况下请尽量不要这样,定义的变量名称尽量带有实义,这样比较严谨。

1.2.6   #题目六

#第六题

编写一个程序,其 mian() 调用一个用户定义的函数(以光年值为参数,并返回对应天文单位的值)。该程序按下面的格式要求用户输入光年值,并显示结果:

Enter the number of light years: 4.2
4.2 light years = 265608 astronomical units.

天文单位是从地球到太阳的平均距离(约 150000000 公里或 93000000 英里),光年是一光年走的距离(约 10 万亿公里或者 6 万亿英里)(除太阳外,最近的恒星大约离地球 4.2 光年)。请使用 double 类型,转换公式:

1 光年 = 63240 天文单位

这道题不要被它 “庞大” 的字数所震慑,简单点嘛。只看最后的转换公式即可(当然要是想增长知识的话就请不要忽略)。

读了题目后细心的读者已经看出来了,这不还是考察的变量以及修改变量的知识点嘛。那有了上面几题的经验,这道题岂不是手到擒来?

仍然要重复一点,因为返回的是一个数值,所以我们可以选择创建带有返回值的函数。

参考代码:

#include<iostream>
double Light_years(double);   //声明函数原型using namespace std;   // using 编译指令int main()
{double astronomical;   //定义变量cout << "Please the number of light years: ";cin >> astronomical;   //输入数据cout << astronomical;cout << " light years = " << Light_years(astronomical) << " astronomical units." << endl;return 0;
} double Light_years(double astronomical)   //创建函数
{return astronomical * 63240;   //返回值
}

程序运行结果:

Please the number of light years: 4.2
4.2 light years = 265608 astronomical units.--------------------------------

这道题跟第五题十分类似因此这里就不过多的讲解了,不懂的可以多看看第五题的讲解。

1.2.7   #题目七

 #第七题

编写一个程序,要求用户输入小时数和分钟数。在 main() 函数中,将这两个值传递给一个 void 函数。后面以下面这样的格式显示这两个值:

Enter the number of hours: 9
Enter the number of minutes: 28
Time: 9:28

这道题有一句话可能让人有点犯难——“在 main() 函数中,将这两个值传递给一个 void 函数。”,其实这句话的意思就是,在 mian() 函数中将两个数值传递给用户创建的函数中进行处理。那这道题我的思路就是 mian() 函数仅仅负责传递数据,至于输出就交给我们创建的函数中进行。所以我们可以创建无返回值的函数。下面结合例子来进行讲解。

参考代码:

#include<iostream>
void out_put(int, int);   //声明函数原型using namespace std;   // using 编译指令int main()
{int hour, minute;   //声明定义两个变量cin >> hour;   //输入小时数cin >> minute;  //输入分钟数cout << endl;   //重启一行out_put(hour, minute);   //调用函数return 0;
}void out_put(int hour, int minute)   //创建函数
{cout << "Enter the number of hours: " << hour << endl;cout << "Enter the number of minutes: " << minute << endl;cout << "Time: " << hour << ":" << minute;
}

程序运行结果:

9
28Enter the number of hours: 9
Enter the number of minutes: 28
Time: 9:28
--------------------------------

可以看出我把语句的输出放在了我们创建的新的函数中执行。

总结

这些列题都是比较好的,可以让我们对前面知识的讲解有一个更深刻的理解。至于例题的参考代码是我自己编写,肯定有很多不足希望大家多多指出。另外,题解仅作参考并不唯一,大家要是有更好的方法欢迎评论区留言,当然如果本篇题解有误或者有讲的不清楚的地方也请评论区留言。

C++ 第一阶段编程练习相关推荐

  1. JAVA第一阶段 编程练习(1)

    题目一:设计出物品这种类 类名:Item 物品有如下属性: 名字 name 类型是字符串String 价格 price 类型是整型 int 创建(实例化)3件具体物品 名称 价格 血瓶 50 草鞋 3 ...

  2. JAVA第一阶段 编程练习(2)

    题目一 关于如何调用JAVA内置的排序函数对数组进行升序降序排序 升序排序: import java.util.Arrays; //调用JAVA标准库的函数 public class Exercise ...

  3. 风火轮编程Python第一阶段课程检测评估单

    风火轮编程Python第一阶段课程检测评估单 姓名:                              一.单选题,把正确的答案编号写在问号后面. 1.python在英文中的本意是?     ...

  4. Java 第一阶段建立编程思想 【房屋出租系统】

    Java 第一阶段建立编程思想 [房屋出租系统] 1. 项目需求说明 2. 项目界面 1. 主菜单 2. 新增房源 3. 查找房源 4. 删除房源 5. 修改房源 6. 房屋列表 7. 退出系统 3. ...

  5. 真的凉了!熊猫直播宣布停服:主站流浪计划第一阶段开启

    [TechWeb]3月8日消息,熊猫直播官微今天中午发布消息正式宣布停服,并称熊猫直播主站流浪计划,第一阶段开启.工程师请逐渐断开与母星连接.注意,请务必保持已连接的服务正常. 在该条微博下面,包括熊 ...

  6. Java学习总结第一阶段

    day1(甘特图)预科阶段 甘特图:让工程项目变成可视化图表,也叫项目进度规划表. 一般由:任务名称.工期.开始时间.完成时间.前置任务.资源名称.日期组成 如下所示,资源名称那就是人的名字,前置任务 ...

  7. 嵌入式之uboot源码分析-启动第一阶段学习笔记

    注: 以下的内容来自朱老师物联网大讲堂uboot部分课件 Uboot启动第一阶段start.S执行步骤 1.头文件包含 <config.h>(x210的各种宏定义) <version ...

  8. java实训报告前言_Java学习第一阶段总结

    0.前言: java第一阶段的学习已经过去了,这里针对第一阶段的三次作业进行总结 1.作业过程总结: (1)总结三次作业之间的知识迭代关系 ①第一次的作业相当基础,只有最主要的main函数,其余的内容 ...

  9. JAVA程序设计-头歌实训-------# 第一阶段 Java语言快速入门

    第一阶段 Java语言快速入门 第1关:Java程序的基本框架:Hello Java World! 任务描述 本关的任务是编写你人生中第一个Java程序,从此开启你的Java实训之旅,显示效果如下: ...

最新文章

  1. 如何妙笔勾檀妆:像素级语义理解
  2. stealwatch里的安全功能——ETA结果会显示加密套件以及key长度,还有流量大小(例如41MB)...
  3. php中echo js代码,JS有没类似PHP的echo效果?
  4. Mongodb实战使用指南
  5. What is the Actual Performance of HANA?
  6. 王道计算机考研数据结构—学习笔记Chapter Five 串String
  7. 管理员方式运行不能访问网络驱动器
  8. ivx动效按钮 基础按钮制作 02
  9. 《Using OpenRefine》翻译~14
  10. php数字转成字符串的函数,php怎么将数字转成字符串?
  11. 模电——电阻与电容并联作用
  12. android 图片轮播控
  13. POJO与Bean的区别
  14. 转载:[5GC]5G LAN标准解读
  15. 【UML】例析UML类图的几种关系
  16. 穿透还原卡或还原软件
  17. python3调用新浪微博API 报HTTP Error 403: Forbid、400 Bad Request错误
  18. 基于MATLAB GUI的环境温湿度检测界面设计
  19. 小米路由器青春版破解使用ssh,非telnet方式
  20. 仿抖音短视频项目笔记 (一)产品介绍与数据库设计

热门文章

  1. 电视上玩android游戏,如何用u盘下载游戏在android系统电视上玩?
  2. 转载:Primo Ramdisk配置教程
  3. 转载:一个程序员的顿悟
  4. execve系统调用_进程调度之 4:系统调用execve
  5. 【青龙面板+诺兰2.0 网页短信验证登录+bot查询】
  6. NLP系列(10)_词向量之图解Word2vec
  7. 从零搭建hyperf docker镜像
  8. 编码方法论:设计数据结构
  9. Python学习 | 2022-01-15 Python基础复习(一)
  10. 报错:module ‘brotli‘ has no attribute ‘error‘