C语言博客作业02--循环结构

1.本章学习总结

1.1 思维导图(看不清可以点开看)

1.2 本章学习体会及代码量学习体会

1.2.1 学习体会

学习感受:原来做顺序和分支的时候感觉还可以,没想到到循环的时候自己一下子就不行了,做题速度跟别人差了好多。我感觉遇到难一点的题可以先在纸上把思路写出来会好做一点。
建议:感觉老师的作业有点多,毕竟我们还有线代、高数、英语作业要做,希望老师布置的作业宽限的时间能久点。

1.2.2 代码累计

2.PTA总分

2.1PTA中循环结构2次题目集的排名得分

循环结构(单层)

循环的嵌套

2.2 我的总分

290分

3.PTA实验作业

3.1 PTA题目1

计算交错序列 1-2/3+3/5-4/7+5/9-6/11+... 的前N项之和。

3.1.1 算法分析

定义变量numberator为第i项的分子,变量denominator为第i项的分母,flag为第i项的符号
输入数N
赋初值
for i=2 to N do
计算式
end for
输出结果

3.1.2 代码截图

3.1.3 测试数据

3.1.4 PTA提交列表及说明

3.2 PTA题目2

输入一个整数,输出每个数字对应的拼音。

3.2.1 算法分析

  • 定义unit为数字中的一位
  • 赋初值
  • 输入数x
  • if x<0 then x=-x
  • t=x
  • while t>10
    • t=t/10
    • n=n*10
  • end while
  • do
    • unit=x/n
    • switch(unit)
    • if n>=10 输出一个空格
    • x=x%n
    • n=n/10
  • while n>0
  • end do-while

3.2.2 代码截图

3.2.3 测试数据


3.2.4 PTA提交列表及说明

3.3 PTA题目3

将一笔零钱换成5分、2分和1分的硬币,要求每种硬币至少有一枚,有几种不同的换法。

3.3.1 算法分析

  • 定义变量,赋初值
  • 输入x
  • five=(x-2-1)/5
  • while five>=1
    • two=(x-1-5*five)/2
    • while two>=1
    • one=x-5five-2two
    • total=five+two+one
    • count++
    • two--
    • end while
    • five--
  • end while

3.3.2 代码截图

3.3.3 测试数据

输入13
输出

3.3.4 PTA提交列表及说明

4.代码互评

题目:输入一组二进制字符,输出其对应的十进制数。当输入回车键时,输入结束。若输入非二进制字符,输出error input!

4.1 代码截图

同学:

我的:

4.2 二者的不同

1.同学就用了一个while循环,我用了while循环和do-while循环。
2.同学用switch和字符型数据op来取一位,而我先用while循环判断位数,再用do-while循环和消位的算法来取一位。
3.同学用了switch中的case来区分1和2,我用了pow函数来计算。
4.综上,同学写的代码比我写的好。

原文地址:https://www.cnblogs.com/p123/p/9864907.html