scanf问题:先用一个scanf读入一个数后,在用一个scanf读入一个字符时,不等输入直接跳过!
来源:互联网 发布:4g逛淘宝用多少流量 编辑:程序博客网 时间:2024/04/30 23:34
int main()
{
{
int n;
char x,y;
scanf("%d", &n);
cout<<n<<endl;
scanf("%c", &x);
cout<<x<<endl;
scanf("%c", &y);
cout<<y<<endl;
}
如果想给变量n赋值5,x赋值a,y赋值b,则应连续输入 5ab ;然后程序输出 第一行输出5,第二行输出a,第三行输出b。但这并不是想要的效果。
1. 如何实现输入 5,程序输出5,再输入a,程序输出a,,再输入b,程序输出b?
改:把两个字符输入scanf语句的格式控制符前加空格,即%c前加空格
scanf(" %c", &x);
scanf(" %c", &y);
2. 如果想要实现 输入x 换行 输入y ,然后程序输出x和y。
则把两个scanf语句合起来,把每一个%c前加一个空格。如下
scanf(" %c %c", &x,&y);
原因如下:(原因引自百度百科)
控制串中的空白符使 scanf() 在输入流中跳过一个或多个空白行。空白符可以是空格(space)、制表符(tab)和新行符(newline)。 本质上,控制串中的空白符使 scanf() 在输入流中读,但不保存结果,直到发现非空白字符为止。
非空白符使 scanf() 在流中读一个匹配的字符并忽略之。例如,"%d,%d" 使 scanf() 先读入一个整数,读入中放弃逗号,然后读另一个整数。如未发现匹配,scanf() 返回。
1 0
- scanf问题:先用一个scanf读入一个数后,在用一个scanf读入一个字符时,不等输入直接跳过!
- 当读入一个数字,scanf()函数的写法
- 2.6 输入一个除空格以外的可见字符(保证在函数scanf中可使用格式说明符%c读入),输出其ASCII码。
- 关于scanf()的一个问题
- 关于scanf的一个问题
- 编写一个程序读入一行输入,然后反向打印该行,您可以把输入存储在一个char数组中: 假定该行不超过255个字符。回忆一下,您可以使用具有%c说明符的scanf()从输入中一次 读入一个字符,而且当您按下回车键时会产生换行符(/n)
- 编写一个程序读入一行输入,然后反向打印该行,您可以把输入存储在一个char数组中: 假定该行不超过255个字符。回忆一下,您可以使用具有%c说明符的scanf()从输入中一次 读入一个字符,而且当您按
- 用scanf读一个unsigned char?
- scanf的一个扩展的输入格式
- 用scanf读入多行数据
- 用scanf读入string类型的变量
- scanf和数组复制的一个问题
- 用get 函数读入一个字符
- 用get函数读入一个字符
- scanf 无法读入空格
- scanf整行读入
- scanf() 一个神奇的函数
- scanf怎样获取一个句子
- 为什么 Android 手机总是越用越慢?
- ApiDemos之activity切换动画
- HDOJ 5240 Exam
- 为MyEclipse指定JDK
- LeetCode - 14. Longest Common Prefix
- scanf问题:先用一个scanf读入一个数后,在用一个scanf读入一个字符时,不等输入直接跳过!
- 【蓝桥第五周】小小故事
- The MAX
- RecyclerView
- Canvas
- 移位操作符
- 【PAT】 1001. A+B Format (20)
- 日志工具类(二)
- android中view创建过程