练习:第七届蓝桥杯省赛个人赛(凑算式)

在这里插入图片描述

#include <stdio.h>
int main()
{
	double num[9];//表示九个数 //如果用int,结果会出错,成两千多 
	int count=0;//可能总数 
	for(num[0]=1;num[0]<=9;num[0]++){//固定ABCDEFGHI所对应的数字num[i],改变num[i]的取值,尝试完所有可能搭配后得出结果 
		for(num[1]=1;num[1]<=9;num[1]++){
			if(num[1]==num[0])continue;//continue是跳出当前循环从上一循环开始,实现后一个数与之前出现的数都不重复,从num[0]到num[8]依次出现9个不重复的数,且在循环中可以尝试完所有搭配 
			for(num[2]=1;num[2]<=9;num[2]++){
				if(num[2]==num[0]||num[2]==num[1])continue;
				for(num[3]=1;num[3]<=9;num[3]++){
					if(num[3]==num[0]||num[3]==num[1]||num[3]==num[2])continue;
					for(num[4]=1;num[4]<=9;num[4]++){
						if(num[4]==num[0]||num[4]==num[1]||num[4]==num[2]||num[4]==num[3])continue;
						for(num[5]=1;num[5]<=9;num[5]++){
							if(num[5]==num[0]||num[5]==num[1]||num[5]==num[2]||num[5]==num[3]||num[5]==num[4])continue;
							for(num[6]=1;num[6]<=9;num[6]++){
								if(num[6]==num[0]||num[6]==num[1]||num[6]==num[2]||num[6]==num[3]||num[6]==num[4]||num[6]==num[5])continue;
								for(num[7]=1;num[7]<=9;num[7]++){
									if(num[7]==num[0]||num[7]==num[1]||num[7]==num[2]||num[7]==num[3]||num[7]==num[4]||num[7]==num[5]||num[7]==num[6])continue;
									for(num[8]=1;num[8]<=9;num[8]++){
										if(num[8]==num[0]||num[8]==num[1]||num[8]==num[2]||num[8]==num[3]||num[8]==num[4]||num[8]==num[5]||num[8]==num[6]||num[8]==num[7])continue;
										
											if(num[0]+num[1]/num[2]+(num[3]*100+num[4]*10+num[5])/(num[6]*100+num[7]*10+num[8])==10){
												count++;
											
										}
									}
								}
							}
						}
					}
				}
			}
		}
	}
	printf("可行总数:%d",count);
	return 0;
} 

note:continue,精度运算(double,int)

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值