scanf后面接的(%_%_)中间要不要逗号隔开 (%_%_)?或者是(%_,%_)?
答案:1 悬赏:0 手机版
解决时间 2021-03-08 07:06
- 提问者网友:抽煙菂渘情少年
- 2021-03-07 12:39
scanf后面接的(%_%_)中间要不要逗号隔开 (%_%_)?或者是(%_,%_)?
最佳答案
- 五星知识达人网友:雪起风沙痕
- 2021-03-07 13:50
除了三楼说的,建议楼主以后一个scanf就针对一个变量。否则两个变量之间用空格或者逗号隔开,输入的时候也需要输入空格或逗号。同时在输入char型时注意,之前最后一次使用scanf或printf的时候,如果你使用了回车作为结束确认,回车符就直接被你这次的scanf给读取了。像楼主原来的写法,按照意图应该是输入一个整数回车、再整数再回车、再字符再回车。但是实际上第二个整数后的回车在被按下后就直接作为字符传给原本想赋再输入的字符的变量了。解决的方法就是要不用“%d%d\
”,要不输入字符前额外用一次scanf,把回车读掉。其中后者最保险:对于printf也可以使用
另外VC(之外的不清楚)中%d%d这样的也不是分不出来,你输入一个整数加空格或回车再整数就行了。
以上这些问题,你保持原来两个连续%d,输入的数据是:整数+空格或回车+整数+任意字符,然后Debug中Watch一下a、b、d。这样就至少知道什么操作导致什么现象。细究有些麻烦,所以一个scanf只对应一个变量时最不可能处岔子的方法。同时注意输入单字符注意的问题。
”,要不输入字符前额外用一次scanf,把回车读掉。其中后者最保险:对于printf也可以使用
另外VC(之外的不清楚)中%d%d这样的也不是分不出来,你输入一个整数加空格或回车再整数就行了。
以上这些问题,你保持原来两个连续%d,输入的数据是:整数+空格或回车+整数+任意字符,然后Debug中Watch一下a、b、d。这样就至少知道什么操作导致什么现象。细究有些麻烦,所以一个scanf只对应一个变量时最不可能处岔子的方法。同时注意输入单字符注意的问题。
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯