gpt4 book ai didi

c++ - 关于 SPOJ 测试的查询

转载 作者:太空宇宙 更新时间:2023-11-04 13:43:21 24 4
gpt4 key购买 nike

我在这个论坛上问 SPOJ 问题可能是错误的,但我想了解一种我想从这里丰富的社区中了解的机制。

你的程序是使用蛮力方法来找到生命、宇宙和一切的答案。更准确地说......从输入到输出重写小数字。读入数字42后停止处理输入。输入的所有数字都是一位或两位数的整数。

例子

输入:1个2个884299

输出:1个2个88

我的解决方案:

#include <iostream>
using namespace std;

int main()
{
int n,i=0;
int a[100] = {0};
while((cin>>n))
{
a[i] = n;
i++;
continue;
}

for(int j = 0;a[j]!=42;j++)
cout<<a[j]<<endl;
return 0;
}

好的解决方案:

#include <iostream>
using namespace std;

int main()
{
int n;
while(true)
{
cin>>n;
if(n == 42)
break;
cout<<n<<endl;
}
return 0;
}

我的问题是好的解决方案中的输入会发生什么?我们只会运行循环直到数字不是 42。好的解决方案如何处理剩余的输入?我得到一些提示,它与缓冲有些相关和所有。请向我提供一些解释或链接或学习 Material 或至少一些关键字到谷歌等以获得清晰度。

最佳答案

好的解决方案中剩余的输入将被“好的解决方案”忽略。

如果您需要更多信息,请阅读:

对象

std::cin

extern istream cin;

标准输入流istream 类的对象,表示面向窄字符(char 类型)的标准输入流。它对应于 C 流标准输入。

标准输入流是由环境决定的字符来源。通常假设是从外部源输入,例如键盘或文件。

对象<强> stdin 文件 * 标准输入;

标准输入流标准输入流是应用程序的默认数据源。在大多数系统中,它通常默认定向到键盘。

stdin 可以用作任何需要输入流 (FILE*) 作为其参数之一的函数的参数,例如 fgets 或 fscanf。

关于c++ - 关于 SPOJ 测试的查询,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26930699/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com