不会飞的章鱼

熟能生巧,勤能补拙;念念不忘,必有回响。

CS50 Lab 1_Population Growth

思路

  • 获取startSizeendSize
  • 使用do while做好范围限制
1
2
3
4
5
6
int n;
do
{
n = get_int("Positive Integer: ");
}
while (n < 1);
  • 使用if语句判断startSizeendSize是否相等
  • 如果相等,输出Years为0
  • 如果不相等,根据出生人数➗3,死亡人数➗4,每计算一次Years加1

代码

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
#include <cs50.h>
#include <stdio.h>

int main(void)
{
// TODO: Prompt for start size
int startSize;
do
{
startSize = get_int("Start size: ");
}
while (startSize < 9);

// TODO: Prompt for end size
int endSize;
do
{
endSize = get_int("End size: ");
}
while (endSize < startSize);

// TODO: Calculate number of years until we reach threshold
int years = 0;
if (startSize != endSize)
{
do
{
//printf("years: %i\n",years);
int birth = startSize / 3;
//printf("birth: %i\n",birth);
int death = startSize / 4;
//printf("death: %i\n",death);
startSize = startSize + birth - death;
//printf("startSize: %i\n",startSize);
years++;
}
while (startSize < endSize);
}

// TODO: Print number of years
printf("Years: %i",years);
}
------ 本文结束------
如果本篇文章对你有帮助,可以给作者加个鸡腿~(*^__^*),感谢鼓励与支持!