这个作业属于哪个课程 | C语言程序设计II |
---|---|
这个作业要求在哪里 | https://edu.cnblogs.com/campus/zswxy/SE2019-3/homework/10033 |
我在这个课程的目标是 | 了解熟悉break、continue语句的使用 , 了解熟悉使用嵌套循环 |
这个作业在哪个地方具体方面帮助我实现目标 | PTA作业,《C Primer Plus》,C语言的课本 |
参考文献 | C语言程序设计 ,百度百科 ,百度文献 |
1.PTA实验作业
1.题目名(打印九九口诀表)
下面是一个完整的下三角九九口诀表:
1*1=1
1*2=2 2*2=4
1*3=3 2*3=6 3*3=9
1*4=4 2*4=8 3*4=12 4*4=16
1*5=5 2*5=10 3*5=15 4*5=20 5*5=25
1*6=6 2*6=12 3*6=18 4*6=24 5*6=30 6*6=36
1*7=7 2*7=14 3*7=21 4*7=28 5*7=35 6*7=42 7*7=49
1*8=8 2*8=16 3*8=24 4*8=32 5*8=40 6*8=48 7*8=56 8*8=64
1*9=9 2*9=18 3*9=27 4*9=36 5*9=45 6*9=54 7*9=63 8*9=72 9*9=81
本题要求对任意给定的一位正整数N,输出从11到NN的部分口诀表。
输入格式:
输入在一行中给出一个正整数N(1≤N≤9)。
输出格式:
输出下三角N*N部分口诀表,其中等号右边数字占4位、左对齐。
输入样例:
4
输出样例:
1*1=1
1*2=2 2*2=4
1*3=3 2*3=6 3*3=9
1*4=4 2*4=8 3*4=12 4*4=16
1.1.1数据处理
数据表达:将i,j,n定义为整型变量
数据处理:用到了for循环的嵌套,主要循环体结构是 (i=1;i<=n;i++) (j=1;j<=i;j++),%-4d表示等号右边数字占4位,还用到了if条件结构
伪代码:
include<stdio.h>
int main()
{
int i, j, n = 1; //定义i,j,n三个整型变量
scanf ("%d",&N);
for(i=1;i<=n;i++) //行累加
{
for(j=1;j<=i;j++) //列累加
{
printf ("%d%d=%-4d",j,i,ji); //此处注意%-4d表示的是等号右边数字占4位
}
printf ("\n"); //换行
}
return 0;
}
1.1.2实验截图代码
1.1.3造测试数据
输入数据 | 输出数据 | 说明 |
---|---|---|
4 | 1x1=1 1x2=2 2x2=4 1x3=3 2x3=6 3x3=9 1x4=4 2x4=8 3x4=12 4x4=16 | 此处用符号x代替了符号*,真实输出时是符号星字符 |
3 | 1x1=1 1x2=2 2x2=4 1x3=3 2x3=6 3x3=9 | 此处用符号x代替了符号*,真实输出时是符号星字符 |
1 | 1x1=1 | 此处用符号x代替了符号*,真实输出时是符号星字符 |
1.1.4 PTA提交列表及说明
1.2题目名 (换硬币)
将一笔零钱换成5分、2分和1分的硬币,要求每种硬币至少有一枚,有几种不同的换法?
输入格式:
输入在一行中给出待换的零钱数额x∈(8,100)。
输出格式:
要求按5分、2分和1分硬币的数量依次从大到小的顺序,输出各种换法。每行输出一种换法,格式为:“fen5:5分硬币数量, fen2:2分硬币数量, fen1:1分硬币数量, total:硬币总数量”。最后一行输出“count = 换法个数”。
输入样例:
13
输出样例:
fen5:2, fen2:1, fen1:1, total:4
fen5:1, fen2:3, fen1:2, total:6
fen5:1, fen2:2, fen1:4, total:7
fen5:1, fen2:1, fen1:6, total:8
count = 4
1.2.1数据处理
数据表达:将 x,i,w,a,b,c,d,count定义为整型
数据处理:进行了for循环的嵌套,使用了if语句,表达式是x=x-8;a=x/5;b=x-5i;c=b/2;d=x-5i-2*w;
1.2.2实验截图代码
1.2.3造测试数据
输入数据 | 输出数据 | 说明 |
---|---|---|
13 | fen5:2, fen2:1, fen1:1, total:4 fen5:1, fen2:3, fen1:2, total:6 fen5:1, fen2:2, fen1:4, total:7 fen5:1, fen2:1, fen1:6, total:8 count = 4 | 2个五分的硬币1个两分的硬币1个一分的硬币总共4个硬币,一个五分的硬币三个两分的硬币两个一分的硬币总共6个硬币,一个五分两个两分四个一分总共7个硬币,一个五分一个两分六个一分,总共八个硬币,四种换法 |
12 | fen5:1, fen2:3, fen1:1, total:5 fen5:1, fen2:2, fen1:3, total:6 fen5:1, fen2:1, fen1:5, total:7 count = 3 | 1个五分的硬币3个两分的硬币1个一分的硬币总共5个硬币,1个五分的硬币2个两分的硬币3个一分的硬币总共6个硬币,1个五分的硬币1个两分的硬币5个一分的硬币总共7个硬币,三种换法 |
1.2.4 PTA提交列表及说明
2代码互评
1.同学代码截图(李杰同学)
2.自己代码截图
说明:①输出的式子不同,他是 printf("%d%d=%d",j,i,ij);我的是 printf("%d%d=%-4d",j,i,ij);
②他运用了if-else结构我只用了if条件结构
3.学习总结
3.1学习进度条:
周/日期 | 这周所花的时间 | 代码行 | 学到的知识简介 | 目前比较迷惑的问题 |
---|---|---|---|---|
第4周/9.16~9.22 | 2h | 40 | 初步了解c语言,编写一些简单的代码 | 不知道为什么那样编写,不知道到每个字符的意思 |
第5、6周/9.23~10.6 | 50h | 90 | 学会用markdown语法写博客园,学会下载用编程软件并且初步了解,学会如何提问 | 还是不太熟悉编程软件的使用流程,PTA编程出错后还是要寻找半天 |
第7周/10.7~10.11 | 20h | 176 | 学会使用if-else语句,格式化输入语句scanf(),初步了解了各个数据类型 | 每个数据类型还是不太熟悉,每个语句的细节没有太了解 |
第8周/10.14~10.20 | 15h | 222 | 学会了for循环语句,循环结构以及语句的三个表达式,初步了解指定次数的循环程序4个部分 | for循环语句还不太熟练 |
第9周/10.21~10.26 | 20h | 266 | 学会如何在定义函数,并且学会如何调用它,然后学会如何检查函数出错处,学会运用系统的总结学习经验 | 对于如果调用和定义函数还不太熟悉,如果使用辅助工具还不太熟悉 |
第10周/10.27~11.2 | 13h | 364 | 续熟悉调用定义函数、了解字符型数据类型,熟悉逻辑运算符和分支结构 | dev-c++的运行出现问题,然后通过上了知乎才解决;然后那个字符型数据类型还不太会 |
第11周/11.3~11.8 | 10h | 456 | 了解熟悉多分支结构switch语句的使用 | 对于题目传化为代码还是比较迷惑 |
第12周/11.9~11.16 | 11h | 503 | 了解熟使用while和do-while循环结构解决问题 | 对于for,while,do-while等循环结构的运用和区分还是不太清楚 |
第13周/11.17~11.22 | 13h | 560 | 了解熟悉break、continue语句的使用 , 了解熟悉使用嵌套循环 | 对于嵌套循环的应用还不够熟悉,没有很好的区分break和continue语句的作用 |
3.2 累积代码行和博客字
3.3 学习内容总结和感悟
3.3.1 学习内容总结
请用思维导图的形式将到目前为止所学的内容进行整理
3.3.2学习体会
①这周相较于上周状态还是有比较明显的回升,但是对于作业问题还是属于那种拖拉的,不到最后不会想着做;
②对于c语言的学习现在处于一种懵懂的状态,还没成知识体系;
③临近期末考试我希望自己能够归纳好学期的知识点。