0%

蓝桥杯_第七届C/C++ B组

第一题(煤球数目)

题目描述

  有一堆煤球,堆成三角棱锥形。具体:

  第一层放1个,

  第二层3个(排列成三角形),

  第三层6个(排列成三角形),

  第四层10个(排列成三角形),…

  如果一共有100层,共有多少个煤球?

  请填表示煤球总数目的数字。

  注意:你提交的应该是一个整数,不要填写任何多余的内容或说明性文字。

题目分析

  该题目是一个模拟题,首先找出他的规律

  第一层 1

  第二层 1+2

  第三层 1+2+3

  第四层 1+2+3+4

  可以看出他的规律了,就是依次加

  最后的要求是求全部的煤球数

Code
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
#include <stdio.h>

int n_count(int n){
int sum=0;
for (int i=1; i<=n; i++) {
sum+=i;
}
return sum;
}

int main(){
int sum=0;
for (int i=1; i<=100; i++) {
sum+=n_count(i);
}
printf("%d",sum);
return 0;
}

第二题(生日蜡烛)

题目描述

  某君从某年开始每年都举办一次生日party,并且每次都要吹熄与年龄相同根数的蜡烛。

  现在算起来,他一共吹熄了236根蜡烛。

  请问,他从多少岁开始过生日party的?

  请填写他开始过生日party的年龄数。

  注意:你提交的应该是一个整数,不要填写任何多余的内容或说明性文字。

题目分析

  该题目暴力求出,两层循环,第一层表示从多少岁过生日,第二层表示当前多少岁了。满足条件就跳出循环。

Code
1
2
3
4
5
6
7
8
9
10
11
12
13
14
#include <stdio.h>

int main(){
for (int i=1; i<100; i++) {
int sum=0;
for (int j=i; j<100; j++) {
sum+=j;
if (sum==236){
printf("%d",i);
break;
}
}
}
}