gpt4 book ai didi

c - 输入字符数组中的字符流

转载 作者:行者123 更新时间:2023-11-30 21:06:57 26 4
gpt4 key购买 nike

我有一个字符流作为输入,没有任何空格,我必须使用 scanf() 将它们存储在字符数组中。

#include <stdio.h>
#include <iostream>

int main() {
int n,q,l,r,k;
scanf("%d",&n);
char A[n];
scanf("%d",&q);

for(int i=0; i<n; i++) {
scanf("%c",&A[i]);
}
for(int i=0; i<n; i++) {
printf("%c",A[i]);
}
return 0;
}

上面的循环不起作用。

最佳答案

仅当您声明(并且可能已初始化)n 时,循环才会起作用,否则编译将提示 n 尚未声明。

然后,当程序运行时,系统会要求您插入 n 个字符。请注意,您按下的每个键都将被解释为 char,因此,如果 n=10:

1 2 3 4 5

10 个字符,因为您输入了 5 个数字、4 个空格和一个换行符“\n”来向程序提供输入。

因此,如果您需要用 10 个数字(例如 0 到 9)填充数组,则需要编写:

0123456789

然后按 Enter 键。请注意,通过这种方式,您提供了 11 个字符、10 个数字和新行,但由于循环的限制,仅读取前 10 个字符。

注意:只要您使用char,该程序就只能接受一位数字

建议:由于您使用的是 C++,因此不要使用 C I/O 库 stdio.h,而是使用 C++ 库:iostream

关于c - 输入字符数组中的字符流,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46252024/

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