新浪面试题:只允许使用++操作符实现加减乘除运算(c语言版)

//假定a,b都是正整数,只允许使用++而不使用-,--,*,/操作符的情况下实现加减乘除运算
//使用++实现加法:
int jiafa(int a,int b){
	for (int i=0;i<b;i++)
	{
		a++;
	}
	return a;
}
//使用++实现减法a-b(必须a>=b)
int jianfa(int a,int b){
	int c = 0;
	if (a >= b)
	while (b != a)
	{
		c++;
		b++;
	}
	return c;
}
//乘法a*b
int chengfa(int a,int b){
	int c = 0;
	for (int i = 0;i<b;i++)
	{
		c = jiafa(c,a);
	}
	return c;
}
//除法稍等a/b
int chufa(int a,int b){
	int m = 0;
	int n = 0;
	while (true)
	{
		n = chengfa(b,m+1);
		if (n<a)
		{
			m++;
		}else{
			break;
		}
		
	}
	return m;
}

转载请注明文章来源: http://blog.csdn.net/hepfei90/article/details/13627507