用++操作符完成其它操作符的转换

在只容许使用++操作符的情况下,请完成下面代码,实现减法、乘法和除法。注意:假设操作数全为正整数,并且可以不考虑性能,不能使用–,*,/等操作符。 a). 乘法: int multi(int opl,int op2){//op1*op2} b). 减法: intsub(int op1,int op2){//op1-op2} c). 除法: int div(int op1,int op2){//op1/op2}

中心思想:利用for循环来实现不能用其它操作符的短板 int multi(int opl,int op2)//op1*op2 {int mu = op1 ;for ( int i = 1 ; i < op2 ; i ++)//控制外层循环个数,也可以和op1交换位置,但是如果换了就要把mu赋值也换了,,它小于op2而不是等于是因为前面mu已经被赋值一次 for ( int j = 1 ; j <= op1 ; j ++)mu ++;return mu ; }int sub(int op1,int op2)//op1-op2intsub(in top1,int op2) {int n=0;for( int i=op2;i<op1;++i ) {n++;}return n;}int div(int op1,int op2)//op1/op2 {int di = 1;int temp = op2 ;while ( op1 >= op2 )//这里如果假设op2是小一点的数会更好的理解。 {for ( int i = 0 ; i < temp ; i ++)op2 ++;//利用自身循环和加一的特点,如果自己转完加到了temp一次,就表明满足一次,di就++一次,每次加一,然后判断op1是否等于op2,如果不等于,继续循环,如果等于,退出返回di。di ++;}return di ; }

强者能同命运的风暴抗争。

用++操作符完成其它操作符的转换

相关文章:

你感兴趣的文章:

标签云: