在c ++中输入n个空格分隔的整数
Posted
技术标签:
【中文标题】在c ++中输入n个空格分隔的整数【英文标题】:Input n space separated integer in c++ 【发布时间】:2019-06-08 18:54:38 【问题描述】:在这种情况下,通常我们以字符串形式输入,但我们将如何确保 字符串将仅包含 N 个整数不超过? 输入格式 第 1 行:整数 n . 第 2 行:n 天的价格(以空格分隔)。它可以包含重复值。
【问题讨论】:
从字符串中读取 N 个整数,然后尝试再读取一个。你应该得到一个“文件结束”失败。 你的意思是什么?我的评论仍然适用。尝试读取比您预期的多一个整数,最后一次读取应该失败。那是你的考验。 "通常我们在...中输入字符串" - 您可以编辑它以使其成为您的个人问题吗?此外,您还提出了一个 C++ 问题:您的 minimal reproducible example 无法编译。 @Visluck 我一直在告诉你一个可能的答案。你不喜欢它的什么地方? @TedLyngmo 我是堆栈溢出的新手,将来我会确保标签是合适的。给您带来的不便深表歉意。 【参考方案1】:#include <stdio.h>
int main()
int n;
char a;
printf("How many digit you want to take???");
scanf("%d", &n);
scanf("%c", &a);
char name[2*n];
printf("Enter Numbers");
fgets(name,2*n,stdin);
printf("You Entered :: %s",name);
return(0);
即使你输入超过 n 个数字,它的数组也不会存储。您始终可以使用 strlen(name) [from String.h] 来获取 char 数组的长度以进行特殊调节
【讨论】:
以上是关于在c ++中输入n个空格分隔的整数的主要内容,如果未能解决你的问题,请参考以下文章