C语言Ⅰ博客作业09
| 这个作业属于那个课程 | C语言程序设计II |
|---|---|
| 这个作业要求在哪里 | https://edu.cnblogs.com/campus/zswxy/CST2019-3/homework/10029 |
| 我在这个课程的目标是 | 熟练掌握C语言基础 |
| 这个作业在哪个具体方面帮助我实现目标 | 掌握C语言知识,有效的完成PTA作业 |
| 参考文献 | C语言程序设计,百度 |
1.PTA实验作业

1.1 题目名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,输出从1*1到N*N的部分口诀表。
输入格式:
输入在一行中给出一个正整数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数据处理
数据表达:用了n,j,i三个变量,i,j的值是通过不断循环得到,n的值是输入的,都是整型变量。
数据处理:
伪代码:
int i,j,n; /*定义三个整型变量,i,j,n*/
scanf ("%d", &n); /*调用scanf()函数输入范围1-9内的任意一位正整数n*/
for i←1 to n /*嵌套循环,外层循环执行n次,求累加和*/
do for j←1 to i /*内层循环重复i次,算出结果*/
do printf ("%d*%d←%-4d",j,i,j*i); /*其中“%-4d”表示等号右边数字占4位、左对齐*/
printf ("\n"); /*输出下三角n*n部分口诀表*/
1.1.2实验代码截图

1.1.3 造测试数据
| 输入数据 | 输出数据 | 说明 |
|---|---|---|
| 4 | ![]() |
与题目样例一样正确 |
| 5 | ![]() |
随机取1-9之间的数检验代码是否运行正确 |
1.1.4 PTA提交列表及说明

1.编译错误:j=1后面多了一个/,去掉后部分正确;
2-3.部分正确:第十行中代码里面是“i,j,i*j”,其顺序不合题意,将i,j位置换了之后,答案正确;
4.答案正确。
1.2 题目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,count,i,j,a个变量,i,j,a,count的值通过不断循环得出,x的值是输入的,都是整型变量。
数据处理:
伪代码:
int x,count,i,j,a; /*定义五个整型变量,i,j,x,count,a*/
count←0 /*变量初始化*/
scanf ("%d",&x); /*调用scanf()函数输入(8,100)的任意一位零钱数额x*/
for i←x/5 downto 0 /*循环嵌套,开始循环*/
do for j←x/2 downto
do for a←x downto 0
do IF 5*i + 2*j + a= x THEN /*若符合该条件,则进行以下程序*/
do printf("fen5:%d, fen2:%d, fen1:%d, total:%d\n",i,j,a,i+j+a);
count←count+1
END IF
printf("count ← %d",count);
1.2.2 实验代码截图

1.2.3 造测试数据
| 输入数据 | 输出数据 | 说明 |
|---|---|---|
| 13 | ![]() |
与题目样例一样正确 |
| 20 | ![]() |
随机取(8,100)之间的正整数检验代码是否运行正确 |
| 30 | ![]() |
随机取(8,100)之间的正整数检验代码是否运行正确 |
1.2.4 PTA提交列表及说明

1.编译错误,12行没有打换行符"\n",加上后编译错误
2.编译错误,发现等于符号用成了=,没有用==,改正后编译错误
3.编译错误,for语句后面都没有打{},加上去后还是编译错误
4.编译错误,把错误信息翻译了一下,说i,j,a没有声明,我不太懂是什么意思,就把它们都变量初始化,赋值为0,可是还是编译错误
5.编译错误,感觉可能是空格的错误,改了一下,不过还是编译错误
6.编译错误,感觉有时候for语句中的i,j,a可以不用int,就把它们删了,可是还是错的
7.编译错误,重新把i,j,a加上去后,还有一些空格去掉后,答案错误
8.答案错误,发现最后printf()里是"%d", count的格式不合题意,改成"count = %d",count后正确了
9.答案正确。
2.代码互评
| 同学代码截图1 | 自己代码截图 |
|---|---|
![]() |
![]() |
同学1和我的代码里面都用了循环嵌套,不过同学1在for循环里面用了if语句,其实我没太看懂!感觉这个其实麻烦一点!用一个“%-4d”就直接ok了。
| 同学代码截图2 | 自己代码截图 |
|---|---|
![]() |
![]() |
他只用了两个for语句,没有用if语句,感觉同学2写的代码比较麻烦,我看的不太懂,x=x-8不知道这个是什么意思,自己的代码比较明了一点!
3.学习总结
3.1 学习进度条
| 周/日期 | 这周所花的时间 | 代码行 | 学到的知识点简介 | 目前比较迷惑的问题 |
|---|---|---|---|---|
| 第13周/11.22 | 两天 | 99 | 循环嵌套,break语句,continue语句 | 伪代码的正确示范?打代码时什么时候要空格,什么时候不要 |
| 第12周/11.14 | 两天 | 107 | whlie语句,do-whlie语句的使用方法,伪代码 | 不太清楚字符型的使用方法 |
| 第11周/11.9 | 一天 | 137 | switch语句 | scanf语句在int后面和在for或其他语句后面有什么区别吗 |
| 第10周/11.4 | 一天 | 112 | if语句的嵌套,字符型,逻辑运算符 | 怎么活用已学知识点做PTA |
| 第9周/10.25 | 一天半 | 88 | 函数的定义,调用 | “/=”是什么意思 |
| 第8周/10.18 | 两天左右 | 84 | 循环结构,for语句 | 在Dev-C++里面正确的代码到PTA上是答案错误怎么解决 |
| 第7周/10.8-10.12 | 两天左右 | 49 | scanf()函数,if-else语句,常用的数学函数,关系运算符... | PTA作业怎么能好好的做完! |
3.2 累积代码行和博客字数

3.3 学习内容总结和感悟
3.3.1 学习内容总结



3.3.2 学习体会
这周写代码学到了一些新知识,“%-4d”是数字占4位、左对齐的意思;“for i←1 to n do”是伪代码中For循环的一种,表示for(i=1;i⇐n;i++){};“for i←n
downto 1 do”表示for(i=n;i>=1;i–){};还有就是伪代码中“==”用“=”表示。可是对于伪代码我还是不太清楚,正确的格式到底是怎样的?我发现每周打代码
出现的错误都会有因为空格多或少错,不太理解为什么?上周我翻了翻以前写的博客,第一次博客作业里我的大一规划写着“每天花2小时编程,代码量达到每天15
行;每天记25个单词,为4级英语做准备”,现在好像没有做到过,哈哈哈,有点搞笑。希望自己认真一点吧!
C语言Ⅰ博客作业09的更多相关文章
- C语言|博客作业09
这个作业属于哪个课程 C语言程序设计II 这个作业的要求在哪里 https://edu.cnblogs.com/campus/zswxy/CST2019-1/homework/10027 我在这个课程 ...
- C语言博客作业06——结构体&文件
C语言博客作业06--结构体&文件 1.本章学习总结 1.1思维导图 1.2.本章学习体会 在本周的学习中,我们学习了关于结构体和文件的内容.结构体的本身并不难,但以结构体为基础的链表还是让我 ...
- C语言博客作业6---结构体&文件
C语言博客作业6---结构体&文件 1.本章学习总结(2分) 1.1思维导图 请以思维导图总结本周的学习内容.如下图所示: 1.2.学习体会 描述本周学习感受,也可以在这里提出你不理解地方.对 ...
- C语言博客作业5--指针
C语言博客作业5--指针 1.本章学习总结(2分) 1.1思维导图 请以思维导图总结本周的学习内容,如下图所示: 1.2本章学习体会及代码量学习体会 1.2.1学习体会 描述本周学习感受,也可以在这里 ...
- C语言博客作业4--数组
C语言博客作业4--数组 1.本章学习总结 1.1思维导图 请以思维导图总结本周的学习内容,如下图所示: 1.2本章学习体会及代码量学习体会 1.2.1学习体会 描述本周学习感受,也可以在这里提出你不 ...
- C语言博客作业3--函数
C语言博客作业3--函数 1.本章学习总结 1.1思维导图 请以思维导图总结本周的学习内容,如下图所示: 1.2本章学习体会及代码量学习体会 1.2.1学习体会 描述本周学习感受,也可以在这里提出你不 ...
- C语言|博客作业10
问题 回答 C语言 博客作业10 这个作业要求在哪里 作业要求 我在这个课程的目标是 熟练循环语句的用法 这个作业在哪个具体方面帮助我实现目标 pta作业 参考文献 <C语言程序设计> 1 ...
- C语言博客作业08
C语言I博客作业08](https://www.cnblogs.com/490-85-00-58-/p/11863312.html) 问题 回答 这个作业属于那个课程 C语言程序设计II 这个作业要求 ...
- C语言|博客作业12-学期总结
我学到的内容 我的收获 第一次:https://www.cnblogs.com/tongyingjun/p/11563433.html:总结:初步了解了C语言.代码.博客园和Markdown语法. 第 ...
随机推荐
- 爬虫代理池源代码测试-Python3WebSpider
元类属性的使用 来源: https://github.com/Python3WebSpider/ProxyPool/blob/master/proxypool/crawler.py 主要关于元类的使用 ...
- Vue + Vuex 简单使用
我们要实现的很简单,就是点击+1的count加一,点击-1的时候count-1 一.mutation 在vue 中,只有mutation 才能改变state. mutation 类似事件,每一个mu ...
- EM算法 小结
猴子吃果冻 博客园 首页 新随笔 联系 管理 订阅 随笔- 35 文章- 0 评论- 3 4-EM算法原理及利用EM求解GMM参数过程 1.极大似然估计 原理:假设在一个罐子中放着许多白球和 ...
- Docker容器常用命令汇总
Docker常用命令总结如下: # 查看docker详细信息 docker info # 获取当前节点所有容器 docker ps -a # 管理容器生命周期 docker [start|stop|r ...
- QObject 的拷贝构造和赋值操作
QOject 中没有提供一个拷贝构造函数和赋值操作符给外界使用,其实拷贝构造和赋值的操作都是已经声明了的,但是它们被使用了Q_DISABLE_COPY () 宏放在了private区域.因此所有继承自 ...
- Qt学习之如何启动和终止一个线程
先来给出每个文件的相关代码然后再加以分析 //*************dialog.h**************// #ifndef DIALOG_H #define DIALOG_H #incl ...
- koa 项目实战(九)passport验证token
1.安装模块 npm install koa-passport -D npm install passport-jwt -D 2.解析token 根目录/config/passport.js cons ...
- springboot 获取控制器参数的几种方式
这里介绍springboot 获取控制器参数有四种方式 1.无注解下获取参数 2.使用@RequestParam获取参数 3.传递数组 4.通过URL传递参数 无注解下获取参数无注解下获取参数,需要控 ...
- vsCode安装todo插件
使用过IDEA或者WebStrom的阿媛应该都知道他们都有一个TODO功能,方便我们跟踪注释,或者说是我们在项目代码里面所做的标记:但是如果你现在在使用vsCode,你会发现,没有TODO功能,幸好, ...
- webstrom配置node语法提示
一.mac下打开设置 二.输入node,找到node.js npm,勾选上对勾就好了. 第三.按住ctr,点击右键可以点进去就可以了.








