第三届蓝桥杯C语言本科组复赛题及解析.pdf

第三届蓝桥杯C语言本科组复赛题及解析.pdf

此“教育”领域文档为创作者个人分享资料,不作为权威性指导和指引,仅供参考
  1. 1、本文档共27页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多

1:

假设有两种微生物X和Y

X出生后每隔3分钟分裂一次(数目加倍),Y出生后每隔2分钟分裂一次(数目加倍)。

一个新出生的X,半分钟之后吃掉1个Y,并且,从此开始,每隔1分钟吃1个Y。

现在已知有新出生的X10,Y89,求60分钟后Y的数目。

如果X10,Y90呢?

本题的要求就是写出这两种初始条件下,60分钟后Y的数目。

题目的结果令你震惊吗?这不是简单的数字游戏!真实的生物圈有着同样脆弱的性质!也许因为

你消灭的那只Y就是最终导致Y种群灭绝的最后一根稻草!

//Muse牧马指证这道题的答案是错的并给出了代码。我理解错了题意,误以为是“兔子繁殖”了。。。。

//代码:

#includecstdio

intmain()

{

longintX10,Y90;

for(intk1;k120;k++)//半分钟一个单位

{

if(k%21)Y-X;//因为X出生半分钟后就要吃Y,尔后每1分钟要吃Y,所以永远都

是奇数个半分钟的时候吃Y,又因为此时X不会增长(题目为了减小讨论的复杂度),所以直接减X

数量即可。

if(k%40)Y*2;//每2分钟翻倍

if(k%60)X*2;//每3分钟翻倍,X和Y的翻倍是相互独立的,不需要另作讨论。

}

printf(%d,Y);

return0;

}

2:

ABCDE*?EDCBA

“ABCDE代表不同的数字,问号也代表某个数字!

21978

//5层循环就OK了

3:

有一群海盗(不多于20人),在船上比拼酒量。过程如下:打开一瓶酒,所有在场的人平分喝下,

有几个人倒下了。再打开一瓶酒平分,又有倒下的,再次重复直到开了第4瓶酒,坐着的已

经所剩无几,海盗船长也在其中。当第4瓶酒平分喝下后,大家都倒下了。

等船长醒来,发现海盗船搁浅了。他在航海日志中写到:“昨天,我正好喝了一瓶

奉劝大家,开船不喝酒,喝酒别开船”

请你根据这些信息,推断开始有多少人,每一轮喝下来还剩多少人。

如果有多个可能的答案,请列出所有答案,每个答案占一行。

格式是:人数,人数,...

例如,有一种可能是:20,5,4,2,0

//松鼠123告诉我这道题的答案要严格递减的,所以我删掉了不符合要求的组合。

205420

189320

1510320

12642

//先求处4个数【递减的,4层循环就OK】的最小公倍数,然后求倒数和是否为1

4:

某电视台举办了低碳生活大奖赛。题目的计分规则相当奇怪:

每位选手需要回答10个问题(其编号为1到10),越后面越有难度。答对的,当前分数翻倍;

答错了则扣掉与题号相同的分数(选手必须回答问题,不回答按错误处理)。

每位选手都有一个起步的分数为10分。

某获胜选手最终得分刚好是100分,如果不让你看比赛过程,你能推断出他(她)哪个题目答

对了,哪个题目答错了吗?

如果把答对的记为1,答错的记为0,则10个题目的回答情况可以用仅含有1和0的串来表示。

例如:0010110011就是可能的情况。

你的任务是算出所有可能情况。每个答案占一行。

1011010000

0111010000

0010110011

//赢或不赢,只有10道题,递归去吧。

5:

顺时针转置矩阵

sizeof(int)*rank*rank

rank-1-i/rank+rank*(i%rank)//经神@雕指正。我写的4而不是rank。应该是rank才对。

voidrotate(int*x,intrank)

{

int*y(int*)malloc(___________________);//填空

for(inti0;irank*rank;i++)

{

y[_________________________]x[i];//填空

}

for(i0;irank*rank;i++)

{

x[i]y[i];

}

free(y);

}

intmain(intargc,char*argv[])

{

i

文档评论(0)

韩喜芝 + 关注
实名认证
内容提供者

赶紧 下载啊啊啊啊

1亿VIP精品文档

相关文档