关于此题的读入问题(求答谢谢)(在线等)

P3375 【模板】KMP

如果要读空格 ```cpp while(a[k] = getchar(), a[k] != '\n') k++; ``` 如果没有空格只读一行 ```cpp scanf("%s", a + 1); ``` 放弃吧gets吧,c++的制作人都放弃了(
by Nicoppa @ 2019-05-06 11:16:58


@[HaloCat](/space/show?uid=206319) 我知道scanf读到空格 好的,我把它放弃
by 寻旧 @ 2019-05-06 11:28:59


没事用getchar,防出锅利器。。
by SSerxhs @ 2019-05-06 12:32:01


为什么要用gets或getline?scanf支持一些正则表达式功能,比如如果要读字母、数字、空格但不读换行,可以 ```cpp scanf("%[0-9a-zA-Z ]",s); ``` (这里使用了几个字符集表示全体数字和字母,另外注意"]"前面的空格), 或者用 ```cpp scanf("%[^\n]",s); ``` ,其中“^”表示取反,即除了"\n"之外都读入(小心其他奇怪的字符)
by WAutomaton @ 2019-05-06 15:35:39


@[自动WA掘机](/space/show?uid=184020) %%% 大佬强 谢谢大佬~
by 寻旧 @ 2019-05-07 08:54:25


@[SSerxhs](/space/show?uid=29826) 谢谢大佬~
by 寻旧 @ 2019-05-07 08:54:38


@[HaloCat](/space/show?uid=206319) 大佬怎么办... 过不了哇
by 寻旧 @ 2019-05-07 09:06:23


下了个样例试了一下, 过了... 评测显示错误
by 寻旧 @ 2019-05-07 09:06:50


## 可能此题不读空格吧...
by 寻旧 @ 2019-05-07 09:16:00


@[WAutomaton](/space/show?uid=184020) 大佬您好,请问如果这样写 ```cpp scanf("%[0-9a-zA-Z ^\n], s); ``` 正不正确,还有是不是这样输入就停不下来了qwq 还有为什么不写成`%s[0-9a-zA-Z ]` 谢谢,我很蒻
by wangyujun @ 2019-10-05 19:22:36


上一页 | 下一页