1.作业头
这个作业属于那个课程 | C语言程序设计II |
---|---|
这个作业要求在哪里 | https://edu.cnblogs.com/campus/zswxy/SE2020-2/homework/11627 |
这个作业的目标 | 学习更多的知识,明白自己的短板,方便自己更好的学习 |
学号 | 20209095 |
1.PTA实验作业(20分/题)
1.1 题目一
打印九九口诀表 (15分)
下面是一个完整的下三角九九口诀表:
本题要求对任意给定的一位正整数N,输出从11到NN的部分口诀表。
1.1.1数据处理
数据表达:定义整性变量i,j,n.其中n由用户输入。
数据处理:for(i=1;i<=n;i++){
for(j=1;j<=i;j++){
printf("%d*%d=%-4d",j,i,j*i);
}
printf("
");
}
1.1.2实验代码截图
1.1.3造测试数据
当n=6时:
当n=9时:
1.1.4 PTA提交列表及说明
答案错误:空行位置不对,同时将%-4d写成-%4d达不到题目的要求
1.2题目二
一钱生多钱 (10分)
在日常生活中,我们常常需要将一些大额的人民币换算成零钱,已知我们有许多面值5元,2元和1元的人民币。
编程实现:输入我们需要兑换的金钱数,然后我们用这些面值5元,2元和1元的人民币来兑换,要求每一种面值都至少有1张,然后输出有多少种兑换方式。
1.2.1数据处理
数据表达:定义整形变量money,i,j,k。其中money由用户输入。
数据处理:
for(i = 1;i <= money / 5;i++)
{
for(k = 1;k <= money / 2;k++)
{
for(j = 1;j <= money;j++)
{
if(money == i * 5 + j + k * 2)
{
printf("five=%d,two=%d,one=%d
",i,k,j);
}
}
}
}
1.2.2实验代码截图
1.2.3造测试数据
1.2.4 PTA提交列表及说明
运行超时:写的代码过于冗长使运行时间过长
2.代码互评
同学代码截图1
自己代码截图1
1.该同学使用了一个switch语句,两个for循环,一个if语句而我使用的一个for循环,四个if语句,两份代码都有各自的特色
2.感觉我的代码比他的容易理解,容易让人看懂代码的意思
同学代码截图2
自己代码截图2
1.该同学和我的思路差不多,不过我们在各自代码的一些地方有些不同
2.该同学在for循环中使用的条件很明确,而我使用的是用money来表示
3.1学习进度条
周/日期 | 这周所花的时间 | 代码行 | 学到的知识点简介 | 目前比较迷惑的问题 |
---|---|---|---|---|
第八周10.19-10.25 | 25 | 500 | if语句,for,while,do-while循环语句以及嵌套使用,break以及continue的区别和使用 | for循环的嵌套不太明白 |
第九周10.26-11.1 | 30 | 700 | 一维数组及二维数组 | 二维数组的应用 |
第十周11.2-11.7 | 30 | 600 | 未学习新知识点 | 遇到难度较大的题目有些难以入手 |
第十一周11.8-11.14 | 25 | 600 | 自定义函数,宏定义函数 | 突然面对调用函数,一时间做题习惯适应不过来 |
第十二周11.15-21 | 20 | 500 | 函数的调用,函数声明及原型和全局变量以及局部变量 | 函数的调用的一些函数名称有一些记不住 |
第十三周11.22-11.28 | 15 | 400 | 未学习新知识点 | 部分细节知识点有些遗忘 |
第十四周11.29-12.5 | 13 | 500 | 初步了解指针 | 指针的深层理解 |
第十六周12.14-12.20 | 20小时 | 400 | 无 | 无 |
3.2 累积代码行和博客字数
3.3学习内容总结和感悟
3.3.1学习内容总结
3.3.2学习体会
- 1.最近一直是在复习,没有太多的去接触新的知识,对我而言,任何东西,基础最重要,现在回过头来看看之前的知识,比第一次接触时要清晰很多,也尝试用后面所学的去解决,对于c语言,当然也还没有接触到最深的那块地方,自知还有很多不足的地方,接下来的时间里我会去一一弥补改正。
- 2.对于如何跳出多重循环:第一可以在循环内部设定一个停止条件;第二增加break;第三使用goto语句(无条件转移语句)goto语通常与条件语句配合使用。可用来实现条件转移, 构成循环,跳出循环体等功能。但是,在结构化程序设计中一般不推荐使用goto语句, 以免造成程序流程的混乱,使理解和调试程序都产生困难。