鱼C论坛

 找回密码
 立即注册
楼主: 小甲鱼

[课后作业] S1E16:拾遗 | 课后测试题及答案

  [复制链接]
发表于 2023-10-24 20:39:49 | 显示全部楼层
56
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

发表于 2023-10-26 09:33:27 | 显示全部楼层
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

发表于 2023-10-26 17:05:01 | 显示全部楼层
鱼C有你更精彩^_^
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2023-10-28 16:13:06 | 显示全部楼层

小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

发表于 2023-10-29 10:27:58 | 显示全部楼层
1
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

发表于 2023-10-29 19:37:10 | 显示全部楼层
答案
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

发表于 2023-10-30 10:56:53 | 显示全部楼层
.
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

发表于 2023-10-30 20:52:45 | 显示全部楼层
44
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

发表于 2023-10-30 22:01:47 | 显示全部楼层
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

发表于 2023-10-31 20:01:36 | 显示全部楼层
1
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

发表于 2023-10-31 22:48:34 | 显示全部楼层
1
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

发表于 2023-11-1 18:23:53 | 显示全部楼层
0. 请问下边代码将打印多少个 'A'?
答: 10个

1. 请问下边代码会打印多少个 'B'?
答: 0个, i 初始化是0 , while先取i值后再++,不执行while语句块,如需要执行改成++i

2. 请写出表达式 a = b = c = 5 中的"l-value"?
答: c,b,a

3. 请问表达式 a = (b = 3, 4, c = b++ + 5, ++c + ++b); 执行后,整型变量 a、b、c 的值是?
答: a = b = 5, c = 9

4. 请使用条件运算符求出变量 x 的绝对值,并存放到变量 z 中。
答: z = x >= 0 ? x : -x;

5. C 语言其实在大部分情况下不使用 goto 语句也能做得很好,请尝试将下列代码段写成不带 goto 语句的版本。
答:

  1. A:
  2. if (size > 12)
  3. {
  4.         cost = cost * 1.05;
  5.         flag = 2;
  6. }
  7. if (flag == 2)
  8. {
  9.         bill = cost * flag;
  10. }

  11. B:
  12. if (ibex > 14)
  13. {
  14.         sheds = 3;
  15. }
  16. if (sheds != 3)
  17. {
  18.         sheds = 2;
  19. }
  20. help = 2 * sheds;

  21. C:
  22. do
  23. {
  24.         scanf("%d", &score);
  25.         if (score < 0)
  26.         {
  27.                 printf("count = %d\n", count);
  28.                 break;
  29.         }
  30.         count++;
  31. }
  32. while (score >= 0);
复制代码


动动手:
假设小甲鱼和黑夜手上均有 10000 元,小甲鱼以 10% 的单利息投资,黑夜则以每年 5% 的复合利息投资。请编写一个程序,计算需要多少年黑夜手头的 Money 才会超过小甲鱼?
答:

  1. #include <stdio.h>

  2. int main()
  3. {
  4.         float xjy_money, hy_money;
  5.         int y;
  6.         xjy_money = hy_money = 10000;

  7.         for (y = 0; hy_money <= xjy_money; y++)
  8.         {
  9.                 xjy_money += 10000 * 0.1;
  10.                 hy_money += hy_money * 0.05;
  11.         }

  12.         printf("%d年后,黑夜的投资额超过小甲鱼!\n", y);
  13.         printf("小甲鱼的投资额是:%.2f\n黑夜的投资额是:%.2f\n", xjy_money, hy_money);

  14.         return 0;
  15. }

  16. 输出结果:
  17. [jermey@localhost sel16]$ gcc test5.c && ./a.out
  18. 27年后,黑夜的投资额超过小甲鱼!
  19. 小甲鱼的投资额是:37000.00
  20. 黑夜的投资额是:37334.56
复制代码


1. 都说天降横财不是什么好事儿,这不,小甲鱼中了双色球一等奖,扣除税收后还剩下 400 万人民币。假设小甲鱼把这些钱做固定投资,每年可以获得 8% 的红利,但在每年的第一天,小甲鱼都会取出 50 万作为本年度的开销……请编写一个程序,计算需要多久小甲鱼才会败光所有家产,再次回到一贫如洗?
答:

  1. #include <stdio.h>

  2. int main()
  3. {
  4.         double money;
  5.         int y;
  6.         money = 4000000;

  7.         for (y = 0; money > 0; y++)
  8.         {
  9.                 money -= 500000;
  10.                 money += money * 0.08;
  11.         }

  12.         printf("%d年之后,小甲鱼败光家产!\n", y);

  13.         return 0;
  14. }

  15. 输出结果:
  16. [jermey@localhost sel16]$ gcc test6.c && ./a.out
  17. 12年之后,小甲鱼败光家产!
复制代码


2. 根据以下已知公式求 Pi 的近似值,要求正确计算出小数点后前 7 位(即3.1415926)。
答:

  1. #include <stdio.h>
  2. #include <math.h>
  3. int main()
  4. {
  5.         double s = 1.0, i = 1.0, n = 1.0, pi = 0.0;

  6.         while (fabs(i) >= 1e-8)
  7.         {
  8.                 pi += i;
  9.                 n += 2;
  10.                 s = -s;
  11.                 i = s / n;
  12.         }
  13.         pi = pi * 4;

  14.         printf("Pi = %.7f\n", pi);
  15.         return 0;
  16. }

  17. 输出结果:
  18. [jermey@localhost sel16]$ gcc test8.c -lm && ./a.out
  19. Pi = 3.1415926
复制代码


3. 这是一个有趣的古典数学问题:如果说兔子在出生两个月后,就有繁殖能力,在拥有繁殖能力之后,这对兔子每个月能生出一对小兔子来。假设所有兔子都不会死去,能够一直干下去,那么两年之后可以繁殖多少对兔子呢?
答:

  1. #include <stdio.h>

  2. int main()
  3. {
  4.         int i, months = 24, rbs = 1, new_rbs = 0, all_rbs = 1;

  5.         for(i = 1; i <= months; i++)
  6.         {
  7.                 if (i >= 3)
  8.                 {
  9.                         new_rbs = rbs;
  10.                         rbs = all_rbs;
  11.                         all_rbs += new_rbs;
  12.                 }
  13.         }

  14.         printf("2年能繁殖%d对兔子!\n", all_rbs);


  15.         return 0;
  16. }

  17. 输出结果:
  18. [jermey@localhost sel16]$ gcc test9.c && ./a.out
  19. 2年能繁殖46368对兔子!
复制代码

小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2023-11-2 16:40:30 | 显示全部楼层
.
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

发表于 2023-11-2 21:11:08 | 显示全部楼层
10个A
11个B
a,b
a=13,b=5,c=5
x>0?z=x:z=-x
5.A
if (size > 12)
{
        cost = cost * 1.05;
        flag = 2;
}   
bill = cost * flag;
B
if (ibex > 14)
{
        sheds = 3;
}
sheds = 2;
help = 2 * sheds;
C
if (score < 0)
{
         printf("count = %d\n", count);
}
count++;
scanf("%d", &score);

动动手
#include<stdio.h>

int main()
{
        int i;
        float a,b;
        i=1;
        a=10000+10000*0.1*i;
        b=10000*0.05*i+10000;
        if (a>b)
        for
        (
        i=1;
        a=10000+10000*0.1*i,
        b=b*0.05+10000;
        printtf("%d年以后,黑夜的投资额超过小甲鱼!\n\
        小甲鱼的投资额是:%.2f  \n\
        黑夜的投资额是:%.2f",i,a,b);
        return 0;
}


小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2023-11-4 22:15:52 | 显示全部楼层
判断
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

发表于 2023-11-5 19:11:17 | 显示全部楼层
0.100个
1.10个
2.a,b,c
3.a=15,b=5,c=9
4.x>0 ? x=x : x= -x;
5.
  1. //A.
  2. if (size > 12){
  3.         cost = cost * 1.05;
  4.         flag = 2;
  5. }
  6. else{
  7. bill = cost * flag;
  8. }
复制代码
  1. //B.
  2. if (ibex > 14)
  3. {
  4.         sheds = 3;
  5. }
  6. else{
  7. sheds = 2;
  8. help = 2 * sheds;
  9. }
复制代码
  1. //C.
  2. do
  3. {
  4. readin: scanf("%d", &score);
  5. if (score < 0)
  6. {
  7.         printf("count = %d\n", count);
  8. }
  9. count++;
  10. while(score>0);
复制代码
  1. //动手0
  2. #include <stdio.h>

  3. int main()
  4. {
  5.         int i = 0,money = 10000;
  6.         float rate1 = 0.1,rate2 = 0.05;
  7.         double incomeXJY,incomeHY = money;
  8.        
  9.         do
  10.         {
  11.         incomeXJY = 0;
  12.         i++;
  13.         incomeXJY = money + i * (money *rate1);
  14.         incomeHY = incomeHY * ( 1 + rate2);               

  15.         }while( incomeHY < incomeXJY);
  16.        
  17.         printf("%d年后,黑夜的投资额超过小甲鱼!\n\
  18.         小甲鱼的投资额是:%.2f\n\
  19.         黑夜的投资额是:%.2f",i,incomeXJY,incomeHY);
  20.        
  21.         return 0;
  22. }
复制代码
  1. //动手1
  2. #include <stdio.h>

  3. int main()
  4. {
  5.         int total_assets,outcome = 500000, principal = 4000000, i = 0;
  6.         float rate = 0.08;

  7.         total_assets = principal;
  8.        
  9.         do
  10.         {
  11.         i++;
  12.        
  13.         total_assets *=( 1 + rate);
  14.         total_assets -= outcome;
  15.        
  16.         }while( total_assets > 0);
  17.        
  18.         printf("%d年后,小甲鱼一贫如洗!",i);
  19.        
  20.         return 0;
  21. }
复制代码
  1. //动手3
  2. #include <stdio.h>

  3. int main()
  4. {
  5.         int num,sum;

  6.         for( num = 0; num <= 22; num += 2)
  7.         {
  8.                 sum = sum + (24 - num);
  9.         }
  10.         printf("如果现在有一对新生的兔子,两年之后可以繁殖%d对兔子。\n",sum);
  11.         for( sum = 0, num = -2; num <= 22; num += 2)
  12.         {
  13.                 sum = sum + (24 - num);
  14.         }
  15.         printf("如果现在有一对成熟的兔子,两年之后可以繁殖%d对兔子。",sum);
  16.        
  17.         return 0;
  18. }
复制代码
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2023-11-6 18:41:16 | 显示全部楼层
a
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

发表于 2023-11-6 20:16:09 | 显示全部楼层
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

发表于 2023-11-6 20:40:56 | 显示全部楼层
1
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

发表于 2023-11-7 16:25:35 | 显示全部楼层
1
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2025-4-26 23:23

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表