问题 | 答案 |
---|---|
这个作业属于哪个课程 | C语言程序设计II |
这个作业要求在哪里 | 作业链接 |
我在这个课程的目标是 | 能够熟练运用C语言,能够自己制作一些简单的软件 |
这个作业在那个具体方面帮助我实现目标 | 学习break语句和continue语句 |
参考文献 | C语言程序教材,百度 |
1.1打印九九口诀表
本题要求对任意给定的一位正整数N,输出从11到NN的部分口诀表。
1.1.1数据处理
数据表达:设置了 n,i,j;三个变量,n代表正整数,均为整型变量
数据处理:
伪代码
include<stdio.h>
int main()
{
int n; //设置n代表正整数//
int i,j;
scanf("%d",&n); //输入整数//
for(i=1;i<=n;i++) //使用for循环语句对乘法表第一个数字进行选择//
{
for(j=1;j<=i;j++) //使用for循环对第二个数字选择//
{
printf("%d%d=%-4d",j,i,ji); //输出乘法表//
if(j==i) //使用if进行判断当i=j时进行
printf("
");
}
}
return 0;
}
1.1.2实验代码截图
1.1.3造测试数据
输入数据 | 输出数据 | 说明 |
---|---|---|
1 | 1*1=1 | 随机测试 |
2 | 11=1;12=2;2*2=4 | 随机测试 |
1.1.4PTA提交列表及说明
1.部分正确:忘记设置换行。
2.答案正确:从头看了一遍发现错误。
1.2换硬币
将一笔零钱换成5分、2分和1分的硬币,要求每种硬币至少有一枚,有几种不同的换法?
1.2.1数据处理
数据表达:设置了N, A, B, C, total, count;等几个变量,由题目意思给出,均为整型变量。
数据处理:
伪代码
include<stdio.h>
int main()
{
int N, A, B, C, total, count; //设置变量N代表零钱数额,A,B,C代表各个数额的硬币,total代表硬币数量,count代表换法总数//
count=0;
scanf("%d", &N); //输入零钱数额//
for(A=(N/5); A>0; A--) //使用for循环先计算五分的硬币数量,每循环一次五分数量都会减少//
{
for(B=(N-A5)/2; B>0; B--) //根据上一步计算出的五分的数量算出剩余钱的数量,再计算出所需2分的数量//
{
for(C=N-A5-B2; C>0; C--) //最后剩下的就是一分的数量
{
if(5A+2*B+C == N) //输出条件判断//
{
count++; //每循环一次都会累加一次,计算换法总数//
printf("fen5:%d, fen2:%d, fen1:%d, total:%d", A, B, C, A+B+C); //输出//
printf("
");
}
}
}
}
printf("count = %d", count); //最后输出换法总数//
return 0;
}
1.2.2实验代码截图
输入数据 | 输出数据 | 说明 |
---|---|---|
13 | [如图] | 题目给出的数据 |
21 | 随机数据 |
1.2.4 PTA提交列表及说明
1.编译错误:有个for循环后面没打括号。
2.答案错误:没有设置换行。
3.编译错误:重新打一遍发现有一个分号没打。
2、代码互评
同学代码
我的代码
- 我的代码没有使用if语句进行判断,而他的使用了。更复杂一些。
- 我们都使用了do-wihle语句,而且我们的判断条件都相同。但是我的代码却短了很多。
- 要学好去思考更好的方法,好的方法可以节约很多的时间。要学会去学习别人的方法,思考自己的代码有什么不足,有什么可以进步的地方,这样才能进步。
3、学习总结
3.1 学习进度条
日期 | 这周所花时间 | 代码行 | 学到的知识简介 | 目前比较迷惑的问题 |
---|---|---|---|---|
10/7--10/13 | 7个小时左右 | 70左右 | if-else语句,算术运算和赋值运算 | 有些代码的含义和一些函数的含义 |
10/14--10/20 | 8个小时左右 | 200行左右 | for循环语句的使用 | 对for循环结构和if-else语句的使用不太熟练 |
10/21--10/27 | 6个小时左右 | 120行左右 | 定义函数与调用 | 对函数的使用还不太熟练 |
10/28--11/3 | 8个小时左右 | 250行左右 | 学习程序解析和多分支else-if语句 | 用太多if-else会比较混乱 |
11/4--11/8 | 9个小时左右 | 230行左右 | 学习多分支结构switch语句的使用 | 大问题没有,就是总会粗心漏打或打错 |
11/9--11/14 | 9个小时左右 | 250行左右 | 学习while和do-while语句的使用 | 对do-while语句还不太理解 |
11/15--11/22 | 7个小时左右 | 240行左右 | 学习break语句和continue语句 | 对continue语句还不太熟练 |
3.2 累积代码行和博客字数
3.3 学习内容总结和感悟
3.3.1 学习内容总结
3.3.2 学习体会
- 已经学习这个有一段时间了,已经学过的东西还是有很多不太理解,尤其是PTA有时候一道题就是一个多小时。但是越是去深入的学习越是能感受到其中的魅力。想要学好这
一门,我必须要付出更多的时间。我相信一定能学好。 - 想要学好这一门就要经常去练习,熟能生巧。还可以自己去找题目做,在不断的练习中会逐渐进步。
- 有时候发现发现别人的代码比自己的简短好多,才发现自己还有很多的不足,要多向别人学习,取长补短。
- 学习的难度越来越大,感到有些吃力,这周所花费的时间减少了导致熟练度下降。