输出不正确。 C++ 入门 1.4.4

2024-01-21

下面的程序应该计算用户输入整数的次数。示例:用户输入 42 42 10 10。程序应该输出:42 出现 2 次,10 出现 2 次。

问题:代码不会输出数字 10 的最后结果,直到您输入另一个数字。我已经粘贴了下面的代码。这段代码来自c++底漆。 1.4.4

#include <iostream>
int main()
{
    // currVal is the number we're counting; we'll read new values into val
    int currVal = 0, val = 0;

    // read first number and ensure that we have data to process
    if (std::cin >> currVal) 
    {
        int cnt = 1;  // store the count for the current value we're processing

        while (std::cin >> val) 
        { // read the remaining numbers

            if (val == currVal)   // if the values are the same
                ++cnt;            // add 1 to cnt
            else 
            { // otherwise, print the count for the previous value
                std::cout << currVal << " occurs " << cnt << " times" << std::endl;
                currVal = val;    // remember the new value
                cnt = 1;          // reset the counter
            }

        }  // while loop ends here

        // remember to print the count for the last value in the file
        std::cout << currVal <<  " occurs " << cnt << " times" << std::endl;
    } // outermost if statement ends here

    return 0;
}

对于由空格分隔的一系列数字输入,您编写的程序看起来是正确的。

您需要给程序一个文件结束指示,以便它退出while循环并打印最终数据的计数。在 Windows 中,您可以通过输入 [Ctrl]-[Z] 作为新行的第一个字符来完成此操作。在 Linux、UNIX 和 Mac OS X 中,[Ctrl]-[D] 具有类似的用途。

或者,您可以将一组值放入文本文件中,并使用重定向来提供程序。例如,假设您将数据放入名为data.txt与可执行文件位于同一目录中。在终端窗口中,您可以按如下方式运行程序:

myprogram < data.txt

正如其他一些人所指出的,非数字输入也可以代替文件末尾。例如,您可以输入42 42 10 10 fred,它也会输出您期望的内容。但这似乎并不是该计划的意图。例如,如果您输入42 42 10 10 fred 37,程序停止于fred并且不会看到37.

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

输出不正确。 C++ 入门 1.4.4 的相关文章

随机推荐

  • 如何在Keycloak中创建脚本映射器?

    我需要在 Keycloak 中创建一个 Script Mapper 类型的协议映射器 该脚本应该获取用户属性 检查其大小 并将其放在令牌上 我没有找到有关如何创建脚本的文档或示例 从我收集到的零碎信息来看 我想脚本需要看起来像这样 var
  • Windows 10 CLI 终端中的“git log”输出编码问题

    Problem 我怎样才能使git log命令输出是否正确显示在 Windows CLI 终端中 Example 正如您所看到的 我可以正确输入变音字符 但是git log 输出以某种方式被转义 根据UTF 8编码表 http www ut
  • Android Gradle 如何为 Android 构建 Google API 4.2.2 而不是 Android 4.2.2

    是否可以使用 gradle 为 Android Google APIs SDK 构建而不是通用的 Android SDK 我的项目中需要 Google Maps API 因此我需要更改构建目标 我只能找到构建版本为 17 的示例 编译SDK
  • Keras 代码有问题 Q-learning OpenAI 健身房 FrozenLake

    也许我的问题会显得很愚蠢 我正在研究 Q learning 算法 为了更好地理解它 我正在尝试重新制作 Tenzorflow 代码这个结冰的湖 https medium com emergent future simple reinforc
  • 如何使用 Swift 2.0 和反射获取属性名称及其值?

    给定这个模型 public class RSS2Feed public var channel RSS2FeedChannel public init public class RSS2FeedChannel public var titl
  • 具有两种方式绑定的 Angular 4 单元测试形式。从视图更新模型时出现问题

    我偶然发现了一个奇怪的问题 我正在使用基于模板的表单和双向绑定执行单元测试 这是测试代码 describe Template Forms Input gt beforeEach gt TestBed configureTestingModu
  • 不希望 netbeans 调试器进入反汇编窗口

    我使用 NetBeans IDE 7 4 内部版本 201310111528 进行 C 编程 每次我调试程序时 对于每个 printf 和 scanf 或者可能每个系统调用 它都会打开反汇编窗口并遍历每个汇编代码 我只是想观察变量 与此类函
  • 在 iOS 4 中本地化应用程序图标

    好吧 这个让我发疯了 我已经使用 InfoPlist strings 和特定于语言的 CFBundleIconFile 值对我的应用程序图标进行了本地化 为每种支持的语言选择不同的图标 从 iOS 4 开始 这种方法不再有效 我正在努力寻找
  • PyQt:在运行时翻译模块字符串

    字符串在QObjects 在运行时翻译 如果翻译器发生变化 所有这些字符串都会刷新 但是 在模块级别声明的字符串甚至静态类属性都会在导入时进行翻译 我可以看到 3 种允许翻译模块字符串的方法 但其中没有一种让我完全满意 安装翻译器后导入模块
  • 在PowerShell中从绝对路径获取相对路径

    问题 您有一个绝对路径 但您希望它相对于另一个路径 Example P SO data database txt gt Now we want the filename to be relative to P SO team lists d
  • 在非焦点 ToolStripItem 上显示工具提示

    当您将鼠标悬停在 ToolStripItems 上时 它们会显示活动突出显示 即使它们所在的表单未处于焦点状态 但是 除非表单获得焦点 否则它们不会显示工具提示 我见过ToolStrip 点击通过 黑客 http blogs msdn co
  • kubectl 无法从私有存储库中提取镜像

    我正在运行 kubeadm alpha 版本来设置我的 kubernates 集群 我正在尝试从 kubernates 提取托管在 nexus 存储库中的 docker 镜像 当我尝试创建一个 Pod 时 它每次都会给出 ImagePull
  • 低延迟模式与 Linux 串行端口一起使用是否安全?

    在 Linux 串行端口上使用 low latency tty 模式是否安全 这tty flip buffer push https github com torvalds linux blob master drivers tty tty
  • 在 Windows Phone 8.1 中使用加速度计传感器数据在画布上绘制线条

    我正在根据设备移动在画布上绘图 我想根据移动移动在画布上绘制不同的字符 目前它正在工作 但我想找到时间差 并且我想检测暂停 暂停意味着用户没有尝试绘制并且用户没有移动手机 因此应用程序可以假设现在用户想要绘制下一个字符 如何找到加速度计值的
  • 打散列

    哈希上的 splat 将其转换为数组 foo bar gt foo bar 这里是否存在一些隐藏机制 例如隐式类转换 或者它是内置的原始功能 除了数组之外 还有nil并哈希唯一在 Ruby 1 9 下使用 splat 运算符消失 改变的东西
  • 在 C 中等待/暂停一定秒数

    我编写了一个小控制台应用程序 我希望它在循环 一段时间 再次开始之前暂停一定的秒数 我正在使用 Windows 操作系统 在 Windows 上 执行此操作的函数是Sleep 这需要量毫秒你想睡觉 使用Sleep 你需要包括windows
  • SQL Server 函数获取层次结构中的顶级父级

    我有下表 master group 结构 code name under 1 National Sales Manager 1 2 regional sales manager 1 3 area sales manager 2 4 sale
  • 使用 Python requests 模块发出 SOAP 请求

    我使用 python requests 模块来处理 REST 请求 我正在尝试提出肥皂请求 但我想知道无法获得这方面的示例 这是我的肥皂体和标题
  • IEqualityComparer 和 IEquatable 之间有什么区别?

    我想了解场景IEqualityComparer
  • 输出不正确。 C++ 入门 1.4.4

    下面的程序应该计算用户输入整数的次数 示例 用户输入 42 42 10 10 程序应该输出 42 出现 2 次 10 出现 2 次 问题 代码不会输出数字 10 的最后结果 直到您输入另一个数字 我已经粘贴了下面的代码 这段代码来自c 底漆