[英]inputting array of characters in c
我已经编写了这段代码来输入两个大小为5
的字符a
和b
数组。
当我给出输入时:
abcde
abcde
输出b[2]
应该是c
但它给出的是b
。
#include <stdio.h>
using namespace std;
int main(){
char a[5], b[5];
int i;
for(i = 0; i < 5; i++){
scanf("%c", a + i);
}
for(i = 0; i < 5; i++){
scanf("%c", b + i);
}
printf("%c", b[2]);
}
还记得在为第一个scanf
输入abcde
后按Enter 键吗? 该字符在第二个for
循环的第一次迭代期间由第二个scanf
消耗。
您可以通过添加来修复它
scanf("%*c");
或者
getchar();
在两个for
循环之间。 这将扫描并丢弃换行符。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.