蓝桥杯c语言练习题答案
精品文档2016全新精品资料-全新公文范文-全程指导写作 –独家原创 PAGE1 / NUMPAGES1 蓝桥杯c语言练习题答案 人参加了竞赛:
A参加时,B也参加;
B和C只有一个人参加;
C和D或者都参加,或者都不参加;
D和E中至少有一个人参加;
如果E参加,那么A和D也都参加。
00110c、d
#include
int main
{
int a,b,c,d,e; /*0表示不参加, 1表示参加.*/
for
for
for
for
for
{
if continue;
if continue;
if continue;
if continue;
if) continue;
printf; }
return 0;
}
2、某侦察队接到一项紧急任务,要求在A、B、C、D、E、F六个队员中尽可能多地挑若干人,但有以下限制条件:
1)A和B两人中至少去一人;
2)A和D不能一起去;
3)A、E和F三人中要派两人去;
4)B和C都去或都不去;
5)C和D两人中去一个;
6)若D不去,则E也不去。
试编写一个程序,输出问应当让哪几个人去?
#include
int main
{
int a,b,c,d,e,f;
for
for/*1:去 0:不去*/
for
for
for
for
{
if)
printf;
}
return 0;
}
3、警察局抓住了A、B、C、D四名盗窃嫌疑犯,其中只有一人是小偷。在审问时,A说:“我不是小偷”;
B说:“C是小偷”;C说:“小偷肯定是D”;D说:“C在冤枉好人”。
现在已经知道这四人中有三人说的是真话,一人说的是假话。请问到底谁是小偷?
提示:设4个变量a,b,c,d,为0时表示不是小偷,为1时表示是小偷,用四重循环穷举a,b,c,d可能的取值的组合,
对每一种组合判断其是否符合题目中给出的约束。最后结论:C是小偷。 #include
int main
{
int a,b,c,d;
for
for/*1:是小偷 0:不是小偷*/
for
for
{
if+++==3&&a+b+c+d==1)/*4人的说法中有3个真的,且只有一个小偷*/
printf;
}
return 0;
}
4、有限五位数
个位数为6且能被3整除的五位数有多少个?
#include
int main
{
long int i;
int sum=0;
for
{
if%3==0)
{
sum++;
}
}
printf;
return 0; }
5、标题:错误票据
某涉密单位下发了某种票据,并要在年终全部收回。
每张票据有唯一的ID号。全年所有票据的ID号是连续的,但ID的开始数码是随机选定的。
因为工作人员疏忽,在录入ID号的时候发生了一处错误,造成了某个ID断号,另外一个ID重号。
你的任务是通过编程,找出断号的ID和重号的ID。 假设断号不可能发生在最大和最小号。
要求程序首先输入一个整数N表示后面数据行数。 接着读入N行数据。 每行数据长度不等,是用空格分开的若干个正整数 每个整数代表一个ID号。
要求程序输出1行,含两个整数m n,用空格分隔。 其中,m表示断号ID,n表示重号ID
例如: 用户输入:
611 10 19
则程序输出:
再例如: 用户输入:
164171010180 15141 15101817111318111212121619172181210111910131 1316158
141315140 19197
18515131