c语言除法除不尽,【C语言训练】8除不尽的数 (C语言代码)

解题思路:

可以假设第一次运算后的商为a, 则第二次运算的商为2*a。将这两次运算写成两个表达式。对商a的初始值可以随机取,不断加减a,直到两个表达式的差为0。最后将a带入任意表达式,就可得出结果。

注意事项:

参考代码:

/*

x1=8*y+1;

y=8*z+1;

z=8*a+7;

x2=17*b+4;

b=17*c+15;

c=2*a;

*/

#include

int main()

{

int i,a,x1,x2;

a=0;//a是第一个得到的商,初始值取多少都能最终求出结果

x1=8*( 8*(8*a+7)+1)+1;//所求的数的第一个表达式

x2=17*(17*2*a+15)+4;//第二个表达式,2*a是第二个得到的商

while(x1-x2>0)//当两个表达式之差大于零时,商a++,因为a越大,x1-x2越小

{

a++;

x1=8*( 8*(8*a+7)+1)+1;

x2=17*(17*2*a+15)+4;

}

while(x1-x2<0)//当两个表达式之差小于零时,商a--

{

a--;

x1=8*( 8*(8*a+7)+1)+1;

x2=17*(17*2*a+15)+4;

}

if(x1-x2==0)

x1=8*( 8*(8*a+7)+1)+1;

printf("%d\n",x1);

return 0;

}

这是一个简单的C语言除法运算器代码,它可以实现加、减、乘、除四种基本运算。代码中定义了一个函指针组p,用于存储四种运算的函地址。根据用户输入的选项,程序会调用相应的函进行计算并输出结果。以下是代码的详细解释: 1. void menu():打印菜单函,用于显示程序的功能选项。 2. int jia(int x, int y):加法实现函,用于计算两个的和并返回结果。 3. int jian(int x, int y):减法实现函,用于计算两个的差并返回结果。 4. int cheng(int x, int y):乘法实现函,用于计算两个的积并返回结果。 5. int chu(int x, int y):除法实现函,用于计算两个的商并返回结果。 6. int main():主函,用于控制程序的流程。在主函中,定义了变量a、b、num和ret,其中num用于存储用户输入的选项,ret用于存储计算结果。同时,定义了一个函指针组p,用于存储四种运算的函地址。在while循环中,程序会先调用menu()函打印菜单,然后等待用户输入选项。如果用户输入的选项是1、2、3或4,则程序会提示用户输入两个,并调用相应的函进行计算并输出结果。如果用户输入的选项是0,则程序会退出循环并结束程序。如果用户输入的选项不是0、1、2、3或4,则程序会提示用户输入有误。最后,程序会调用system("pause")函暂停程序的执行,以便用户查看输出结果。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值