C++入门基础篇学习手记: 统计在输入中每个值连续出现的次数
来源:互联网 发布:网络音乐黑名单 百度云 编辑:程序博客网 时间:2024/05/21 22:47
问题:编写C++程序,实现功能:统计输入数据中每个数值连续出现的次数。
功能实现的C++源程序代码:
#include "iostream"using namespace std;int main(){// currVal 为当前统计的数; inVal为将要输入的新值int currVal = 0, inVal = 0;// 读取第一个数,并确保确实有数据可以处理if (cin >> currVal){int cnt = 1; // 初始化正在统计的当前值的个数while (cin >> inVal)// 继续读取数据{if (inVal == currVal) // 判断输入数字是否与上一个数字相同++cnt;// 相同则统计值加 1else{cout << currVal << " occurs " <<cnt << " times." << endl; // 不同则输出当前值的个数currVal = inVal; // 并将新出现的数值作为统计新值cnt = 1; // 统计值还原为 1}}cout << currVal << " occurs " << cnt << " times." << endl;}return 0;}
例如,我们输入数据: 12 12 12 12 55 55 3 66 66,输入结束后,按回车键输出结果为:
12 occurs 4 times.
55 occurs 2 times.
3 occurs 1 times.
66 occurs 2 times.
Tips: 要得到上述结果,一定要输入“文件结束符”。
思考1: 如果输入时没有输入“文件结束符”(数据输入完成后直接敲击Enter键或Return键),输出结果是怎样?
按照上面给出的例子,我们在输入结束后输入“文件结束符”,得到的结构如下:
上面显示的结果是我们预期的。
但是如果我们不输入“文件结束符”,得到的结果却是这样的:
从程序运行结果可以看出,没有输入“文件结束符”时敲击Enter键,程序并没有完成对所有的输入数据的统计和打印工作。这时候程序仍然处于等待输入的状态。如果我们继续输入,直到我们输入“文件结束符”,程序才算真正执行完,如下图:
思考2:如果输入数据时输入同一个数值,输出结果是怎样?如果输入的数据所有数字都不相同,结果又是怎样?
如果输入数值全部相同:
其运行结果是我们预期想要得到的。如果输入数值全不相同:
运行结果也是我们预期要得到的。
思考3:如果同一数值在不同的位置出现重复,输出的结果是怎样?
程序的功能实现了统计某一数值连续出现的次数。
1 0
- C++入门基础篇学习手记: 统计在输入中每个值连续出现的次数
- 统计每个值连续出现的次数
- 统计每个单词在输入中出现的次数
- 统计在输入中每个值连续出现了多少次
- 用c语言编程 统计输入的一个字符串中每个字母出现的次数
- 统计输入中每个值连续出现了多少次
- 统计输入的每个值连续出现多少次
- 统计每个元音字母在字符串中出现的次数
- 统计用户输入的一串数字中每个数字出现的次数
- C#面试题统计用户输入的一串数字中每个数字出现的次数
- 统计用户输入的一串数字中每个数字出现的次数
- C#控制台 统计用户输入的一串数字中每个数字出现的次数
- 统计用户输入的一串数字中每个数字出现的次数
- 统计用户输入的一串数字中每个数字出现的次数
- 输入任意字符串,统计字符串中每个字符出现的次数
- 统计元音 --统计每个元音字母在字符串中出现的次数。
- 输入字符串,统计字符串中出现频率次数最多的字符,并统计次数,以及每个字符字符出现的次数
- Java_基础—统计字符串中每个字符出现的次数
- location.href,location.replace(),location.reload()用法和区别
- 创建后台服务
- leetcode--House Robber II
- 自定义布局控件
- Impala权限管理机制
- C++入门基础篇学习手记: 统计在输入中每个值连续出现的次数
- DataBinding variable变量的声明与使用
- Android给空白包签名
- tomcat
- Scientific Toolworks Understand 开源代码查看神器
- c标签 总结
- 人脸3D重建:Cascaded Regressor
- map 集合基础
- SPA (单页应用程序)