如何使scanf不忽略C中的空格和\n
所以,我目前正在课堂上学习C代码,我们得到了一个ceaser编码器的任务。我成功地做到了,但是我现在遇到了一个问题,他们希望它承认其中的空格和新行。我已经在网上查过了,看到了不止几个选项,但有几个问题: 1) 我必须使用scanf,所以不要给出第二个选项 2) 我使用的是常规字符,而不是字符串,因为在本课程中,他们还没有教过它,所以不要提供使用char[]或strings或char*,因为我不应该使用它们。如何使scanf不忽略C中的空格和\n,c,char,scanf,C,Char,Scanf,所以,我目前正在课堂上学习C代码,我们得到了一个ceaser编码器的任务。我成功地做到了,但是我现在遇到了一个问题,他们希望它承认其中的空格和新行。我已经在网上查过了,看到了不止几个选项,但有几个问题: 1) 我必须使用scanf,所以不要给出第二个选项 2) 我使用的是常规字符,而不是字符串,因为在本课程中,他们还没有教过它,所以不要提供使用char[]或strings或char*,因为我不应该使用它们。 提前感谢。您可以使用scanf一次读取一个字符,空格不会被忽略: #include &l
提前感谢。您可以使用
scanf
一次读取一个字符,空格不会被忽略:
#include <stdio.h>
int main(int argc, char *argv[]) {
printf("Will print all characters typed, use ctrl-D to quit\n");
char c;
while (scanf("%c", &c) != EOF) {
printf("%c", c);
}
}
#包括
int main(int argc,char*argv[]){
printf(“将打印所有键入的字符,使用ctrl-D退出\n”);
字符c;
while(scanf(“%c”,&c)!=EOF){
printf(“%c”,c);
}
}
“我必须使用scanf…我使用的是常规字符,而不是字符串”-->以上是奇怪的要求,因为scanf()
的格式需要字符串。祝你好运