admin管理员组文章数量:1031724
C语言入门笔记:运算符及取余%的坑
代码
代码语言:javascript代码运行次数:0运行复制#include <stdio.h>
int main() {
int x,y;
x = 10;
y = -3;
printf("x+y=%d\n", x+y );
printf("x-y=%d\n", x-y );
printf("x*y=%d\n", x*y );
printf("x/y=%d\n", x/y );
printf("x%%y=%d\n", x%y );
return 0;
}
问题
会发现如下运算会出现错误
代码语言:javascript代码运行次数:0运行复制printf("x%y=%d\n",x%y)
原因
取余运算中注意:
该运算只适合用两个整数进行取余运算,如:10%3 = 1;而10.0%3则是错误的;运算后的符号取决于被模数的符号,如(-10)%3 = -1;而10%(-3) = 1。
代码语言:javascript代码运行次数:0运行复制printf("x%y=%d\n",x%y)
这种不运行的原因:程序将%y看作格式化符号,所以会出现错误。
改正的方法使用%%,其中输出一个%,转义: printf("x%%y=%d\n",x%y);
借鉴该博客:墨溢
代码语言:javascript代码运行次数:0运行复制转义: printf("x%%y=%d\n",x%y);
如有更多问题,欢迎留言交流!
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。 原始发表:2023-08-11,如有侵权请联系 cloudcommunity@tencent 删除int笔记博客程序入门C语言入门笔记:运算符及取余%的坑
代码
代码语言:javascript代码运行次数:0运行复制#include <stdio.h>
int main() {
int x,y;
x = 10;
y = -3;
printf("x+y=%d\n", x+y );
printf("x-y=%d\n", x-y );
printf("x*y=%d\n", x*y );
printf("x/y=%d\n", x/y );
printf("x%%y=%d\n", x%y );
return 0;
}
问题
会发现如下运算会出现错误
代码语言:javascript代码运行次数:0运行复制printf("x%y=%d\n",x%y)
原因
取余运算中注意:
该运算只适合用两个整数进行取余运算,如:10%3 = 1;而10.0%3则是错误的;运算后的符号取决于被模数的符号,如(-10)%3 = -1;而10%(-3) = 1。
代码语言:javascript代码运行次数:0运行复制printf("x%y=%d\n",x%y)
这种不运行的原因:程序将%y看作格式化符号,所以会出现错误。
改正的方法使用%%,其中输出一个%,转义: printf("x%%y=%d\n",x%y);
借鉴该博客:墨溢
代码语言:javascript代码运行次数:0运行复制转义: printf("x%%y=%d\n",x%y);
如有更多问题,欢迎留言交流!
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。 原始发表:2023-08-11,如有侵权请联系 cloudcommunity@tencent 删除int笔记博客程序入门本文标签: C语言入门笔记运算符及取余的坑
版权声明:本文标题:C语言入门笔记:运算符及取余%的坑 内容由热心网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:http://it.en369.cn/jiaocheng/1747873719a2220904.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论