C语言 韩信点兵

//题目:
//韩信点兵
//相传韩信才智过人,从不直接清点自己军队的人数,只要让士兵先后以三人一排、五人一排、七人一排地变换队形,而他每次只看一眼队伍的排尾就知道总人数了。输入3个非负整数a、b、c,表示每种队形排尾的人数(a<3、b<5、c<7),输出总人数的最小值或报告无解。
//已知总人数不小于10,不超过100。
//
//Input
//
//输入非负整数a、b、c,用空格隔开
//
//Output
//
//输出总人数,为整数,用空格隔开;若无解输出 - 1
//输入
//2 1 6
//输出
//41
//输入
//3 5 7
//输出
//-1

#include<stdio.h>
int main()
{
	int a, b, c,i;
	printf("请输入3个非负整数a、b、c,表示每种队形排尾的人数(a<3、b<5、c<7)\n");
	scanf_s("%d %d %d", &a, &b, &c);
	for (i = 3;; i++) {
	if (a < 3 && b < 5 && c < 7) {
		if (i % 3 == a  &&  i % 5 == b  &&  i % 7 == c) {
			if(i >= 10 && i <= 100){
				printf("总人数=%d\n", i);

			}
				break;
		}
	}
	else {
		printf("总人数=-1\n");
		break;
	}
	}
}

版权声明:本文为weixin_43701189原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。