好像C语言负数不能求余吧。
我好奇负数能不是求余额,用下面语句测试了,然后我也觉得奇怪了,结果为负1而不是0,那么你的那个语句应该会有-1显示啊,但是用你的那个语句输出的确没有负1,搞不懂。
int b,a=-1;b=a%2;printf("%d\n",b);
嘿嘿,我明白了,用下面语句,你可以看到a到0就没输出了,而如果用--a到1就没输出了。后来仔细一想,对的while(a--),a 最后结果肯定是-1没有错,但是printf是在while循环里,那么while检查到0时就停止执行下面的循环语句了。所以-1没有输出。
int a=6;while(a--){ printf("%d\n",a);
}
回复 斌:哦,谢谢你
点赞
扫一扫分享朋友圈
二维码
分享
你确定要删除这个问题吗?