1.首先请打开Visualc++6.0,(本文使用Visualc++6.0软件操作,也可以使用VisualStudio或其他C/c++编程软件),如图所示后成功打开。
2.点击左上角的“文件”菜单按钮,点击“新建”按钮。在弹出窗口中,首先选择“File”选项卡,然后在左侧列表中选择“c++源文件”项,如下所示。
3.在正确文件名的文本框中输入文件名,如“demo”等。
4.根据图片输入演示代码,如下图所示。
5.运行代码:按箭头指示的顺序点击箭头所指的按钮。当最后一个按钮成功按下后,会弹出如图所示的黑色窗口。程序运行的结果将显示在表单中,并将获得正确的值。
6.代码说明:图中的绿色字体说明了代码行的含义。核心代码为d=5%3;“%”是余数运算符。
7.完成效果图,如下图所示。
但(int)(num1/num2)是按照四舍五入的规则的吗?这样不是会产生误差?
有没有听说过math.h 里面的fmod()函数,在网上看到的,不知道是不是真的有!
是的,有可能,下面的改进版。
double num1 = 12.56,num2 = 4.0;
double remainder = (num1 - num1/num2)*num2;
fmod()函数在不同的编译环境下实现的方法,甚至是否实现都是可能的,为了有更好的兼容性,还是根据C语言的基本功能实现更合适。
应该是double remainder =number1-(number1/number2)*number2吧!
本回答被提问者采纳第一种方法有误差,因为a/b是按四舍五入取整的!是吗?
追答其实第一种方法是fmod的翻版
追问那fmod会产生误差吗 ?
追答计算机中都是以二进制形式存储的。误差是不可避免的。基本都有误差
追问其实还有个问题,就是内存引用错误!真蛋痛!有兴趣帮忙一下吗?Q631374745
%z只能用于整型数据
追答这样啊,那试试fmod函数,可以求两个浮点型余数,要包含math.h。