永发信息网

关于C语言里getchar函数的问题?逻辑想不通啊、. 既然是顺序计算,等于号具有右极限

答案:1  悬赏:40  手机版
解决时间 2021-08-13 11:21
关于C语言里getchar函数的问题?逻辑想不通啊、. 既然是顺序计算,等于号具有右极限

既然是顺序计算,等于号具有右极限
那么输出的应该是前2个字符
为什么我输入123456789时
输出的是56呢
最佳答案

scanf(%c%c%c%c,&c1,&c2,&c3,&c4);
这个会输入4个字符
c5=getchar(); c6=getchar();
这个会输入2个字符
所以你的c1-c6依次是123456
然后你输入出的是c5和c6
所以输出的是56
这个很正常啊······,我不晓得你描述的等于号具有右极限是啥意思,我只晓得按照你的程序流程是这么运行的···,写在前面的语句段先运行··········依次往下执行,这个已经和你的等于号神马的没有关系了·······
再问: c5=getchar(); c6=getchar(); 这两个已经定义了c5和c6了呀,按逻辑来说应该是第一个字符和第二个字符,我也知道,定义上说:把输入的字符赋予一个字符变量,构成赋值语句,可是你得有个先后顺序吧,语句,应该先执行getchar(),然后把getchar()的值给了c5,现在怎么是c5的值给了getchar()了呢,这不是和等于号的右极限(比如6=m)矛盾了吗?
再答: 好吧,所谓的先后顺序···也必须得遵循程序的运行, scanf(%c%c%c%c,&c1,&c2,&c3,&c4); c5=getchar(); c6=getchar(); 你是这么写的,所以程序会先运行scanf这段····,c1-c4赋值完以后才会运行下一段 你说的:把输入的字符赋予一个字符变量,构成赋值语句 c5=getchar();中getchar()确实是先执行的,先获取了一个值,在这里是5,然后吧这个值给了c5 但是我不懂你说的c5的值给了getchar()是什么意思? c5之前你只定义了,并没有赋值,c5=getchar();是这句给c5赋值的········按照你说的等于号的右极限,这里简化下来还是c5=5;······· 你是不是少写了一段或者是理解出差错了??
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
QQ三国等级高了为什么任务少了?
急啊啊 卸载COMODO影子系统,进不去系统
老舍茶馆经典台词,老舍的茶馆为什么是精品而
掇刀区荆门安琪儿玩具店地址在什么地方,想今
系统繁忙?
mp4的USB连不上电脑
一,二分之一,负三分之一,四分之一
6.8等于几分之几?
慢性结膜炎??
如何找到自己擅长的和喜欢的事,才更容易取得
西平县驻马店西平县人民法院诉讼服务中心怎么
淡水鱼跟着陷进天坑里能存活吗?如果可以,那
三极管极性判别
only then he was wrong
郧西县十堰郧西县关防乡福利院这个地址怎么能
推荐资讯
中国有几个明星得奥斯卡金像奖啊?
对爱情理解的句子,关于实践的重要性马克思等
犯罪用英语怎么说?
在惠州哪里可以买到郑源的新专辑《包容》?
与房子和狗有关的诗句,经典语录:“喜欢养狗
有什么7—9级的钢琴曲好听丫?
为什么今天上不了空间游戏
睡觉安静的标语,描写窗外安静的句子
仙剑五官王是什么
怎么样才能长高~长高?
地下城怎么解除安全模式啊?
外国人发信息说的ty是什么意思?
正方形一边上任一点到这个正方形两条对角线的
阴历怎么看 ?