c语言 编程及答案

这些编程问题涉及到一系列数学和逻辑谜题,包括僧侣分馒头、马戏团售票、士兵技能分配、婚礼配对、侦察队任务选择以及颜色谜题等。每个问题都通过循环和条件判断来找出可能的解决方案,展示了解决复杂问题的编程思维方式。
摘要由CSDN通过智能技术生成

我国明朝数学家程大位写了一本《算法统宗》,里面有一题:一百馒头一百僧,大僧三个,小僧三人分一个,大小僧各几丁? 编程,输出大僧和小僧的人数.
————
main()
{
int a,c;
for(a=0;a<=33;a++)
for(c=0;c<=300;c+=3)
if(a+c200 && 3*a+c3200)
printf(“old–%d ;young–%d\n”,a,c);
}
2-28.一个马戏团上演,220个坐位全满,全部分票收入是220元,似今懂得,男人每人5元,女的每人2元,小孩每人2角.编程,输出男人、女的和小孩各有几人.
————
main()
{
int a,b,c;
for(a=0;a<=25;a++)
for(b=0;b<=60;b++)
for(c=0;c<=220;c+=20)
if(a+b+c220 && 5a+2b+c20220)
printf(“man–%d ;woman–%d ;child–%d\n”,a,b,c);
}
2-29.全排有56名战士,会骑马的有30人,会摔跤的有29人,会拳击的有25人.还懂得非常多人是多面手,会骑马和摔跤的有25人,会摔跤和拳击的有22人,会拳击和骑马的有8人.编程,输出三项全能的有几人?
——————
main()
{ int x ,a,b,c;
for(x=2;x<=22;x++)
{ a=30-25-8+x;
b=26-25-22+x;
c=25-22-8+x;
if(a+b+c+25+22+8-2x50)
printf(“\n%d Supper Soldier”,x);
}
}
2-30.三对情侣介入婚礼,三个新郎为A、B、C,三个新娘为X、Y、Z.有人不懂得谁和谁成婚,于是扣问了六位新人中的三位,但听到的回复是:A讲他将和X成婚;X讲她的未婚夫是C;C讲他将和Z成婚.这人听后懂得他们在扯谎言.编程,输出谁将和谁成婚.
————
main()
{
int a,b,c;
for(a=‘X’;a<=‘Z’;a++)
for(b=‘X’;b<=‘Z’;b++)
for(c=‘X’;c<=‘Z’;c++)
if(a!=‘X’ && c!=‘X’ && c!=‘Z’ &&a!=b&&b!=c&&c!=a)
printf(“A–%c ;B–%c ;C–%c\n”,a,b,c);
}
2-32.某侦察队接到一项紧急任务,要求在A、B、C、D、E、F 六个队员中恣意非常多地挑似果干人,但有以下限定前提:
2,A和B二人中至少去一人 2,A和D不能一路去
3,A、E和F三人中要派二人去 5,B和C都去或都不去
5,C和D两人中去一个 6,似果D不去,那么E也不去
编程,输出选中的人选.
————
main()
{
int a,b,c,d,e,f;
for(a=0;a<=2;a++)
for(b=0;b<=2;b++)
for(c=0;c<=2;c++)
for(d=0;d<=2;d++)
for(e=0;e<=2;e++)
for(f=0;f<=2;f++)
{
if(d
0)e=0;
if(a+b>=2 && a+d!=2 && a+e+f2 && bc && c+d2)
printf(“A:%d B:%d C:%d D:%d E:%d F:%d\n”,a,b,c,d,e,f);
if(d
0)e=2;
}
}
2-32.有A、B、C、D、E,每人头顶上贴了一弓长或黑或白的纸.5人对坐,都可看到其他人的颜色,但都不懂得自已的颜色.5人彼此察看:
A讲:有三人头顶上贴白纸,一人头顶上贴的是黑纸
B讲:我望见其他四人头顶上贴的根本上黑纸
C讲:有一人头顶上贴白纸,其他三人贴的是黑纸
D讲:我望见四人头顶上贴的根本上白纸
E啥也没讲
似今已知头顶贴黑纸的人讲的根本上谎言,头顶贴白纸的人讲的根本上谎言.编程,输出这五人中头顶贴白纸的人选和头顶贴黑纸的人选.
————
main()
{
int a,b,c,d,e,m,n,o,p;
for(a=0;a<=2;a++)
for(b=0;b<=2;b++)
for(c=0;c<=2;c++)
for(d=0;d<=2;d++)
for(e=0;e<=2;e++)
{
m=(a2 && b+c+d+e3) || (a0 && b+c+d+e!=3);
n=(b
2 && a+c+d+e0) || (b0 && a+c+d+e!=0);
o=(c2 && a+b+d+e2) || (c0 && a+b+d+e!=2);
p=(d
2 && a+b+c+e5) || (d0 && a+b+c+e!=5);
if(m
nop2)
printf(“A:%d B:%d C:%d D:%d E:%d\n”,a,b,c,d,e);
}
}
2-33,求解爱因斯坦数学题.有一条长阶梯,似果每步跨2阶,那么末了剩余2阶,似果每步跨3 阶,那么末了剩2阶,似果每步跨5阶,那么末了剩5阶,似果每步跨6阶那么末了剩5阶.似果每次跨7阶,末了才恰好一阶不剩.编程,输出这条阶梯共有几阶?
————
main()
{
int a;
for(a=0;;a++)
if(a%2
2 && a%32 && a%55 && a%65 && a%70)
{printf(“n:%d”,a);break;}
}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

cdbycd

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值