欢迎您访问 最编程 本站为您分享编程语言代码,编程技术文章!
您现在的位置是: 首页

用 C 除以两个数(只需加法和减法),求商和余数。

最编程 2024-07-20 09:30:01
...

思路分析:举个例子如 8/3 =2余2       8-3=5  5-3=2   减了2次  最后一次结果为2
                       9/3=3           9-3=6  6-3=3  3-3=0  减了3次  最后一次为0
                       10/3=3余1       10-3=7 7-3=4  4-3=1  减了3次 最后一次为1

所以可以得出规律为:被除数 减去除数结果大于等于0的次数为商 最后一次结果为余

#include<stdio.h>

int main() {
	int a;
	int b;
	int count = 0;

	printf("请输入两个要相除的数\n");            //当两个数不能整除时,例如8/3 当
	scanf("%d %d", &a, &b);                      //max结果为2,count=2时,
	int max = a > b ? a : b;                     //结果依旧符合循环条件则会使结果
	int min = a < b ? a : b;                     //变为max=-1,count=3
	while (max >= 0) {                           //所以遇到该情况要进行相应的修改
		max = max - min;
		count++;
	}
	if (max < 0) {                
		printf("商为:%d\n余数为:%d\n",count-1,max+min);
	}
	else {
		printf("商为:%d\n余数为:%d\n", count, max);
	}
}

推荐阅读