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

1.1 题目名1
对于给定的正整数N,求它的位数及其各位数字之和。
输入格式:输入在一行中给出一个不超过pow(10, 9)的正整数N。
输出格式:在一行中输出N的位数及其各位数字之和,中间用一个空格隔开。
输入样例:321
输出样例:3 6
1.1.1数据处理
数据表达:用了n,count,i,N四个变量,i的值是通过赋值运算出来的,n,N的值由定义知,count通过累加得,都是整型变量。
数据处理:
伪代码:
count←0 /*count记录整数的位数,开始时位数为0*/
N←n /*输入的整数赋值给N*/
i←N%10 /*为解决个位数漏加,在循环之前先加上*/
IF (n<0) /*将输入的负数转换为正数*/
n←-n
do
n←n/10 /*整除后减少一位个位数,组成一个新数*/
count←count+1 /*位数加1*/
i←i+n%10 /*各位数字之和*/
until n←10 /*判断循环条件*/
1.1.2实验代码截图

1.1.3 造测试数据
| 输入数据 | 输出数据 | 说明 |
|---|---|---|
| 321 | 3 6 | 与题目样例一样正确 |
| 70581 | 5 21 | 随机取数检验代码是否正确 |
| 85428963 | 8 45 | 随机取数检验代码是否正确 |
1.1.4 PTA提交列表及说明

1.编译错误:scanf()里面n后面多了一个逗号;去掉逗号变成了部分正确。
2.部分正确:代码考虑的不完整,各位数字之和不正确,没有考虑个位数。在前面又定义了一个N,加了N=n,i=N%10就正确了。
3.答案正确。
1.2 题目2
在中国数学史上,广泛流传着一个“韩信点兵”的故事:韩信是汉高祖刘邦手下的大将,他英勇善战,智谋超群,为汉朝建立了卓越的功劳。据说韩信的数学
水平也非常高超,他在点兵的时候,为了知道有多少兵,同时又能保住军事机密,便让士兵排队报数:
按从1至5报数,记下最末一个士兵报的数为1;
再按从1至6报数,记下最末一个士兵报的数为5;
再按从1至7报数,记下最末一个士兵报的数为4;
最后按从1至11报数,最末一个士兵报的数为10;
请编写程序计算韩信至少有多少兵。
输入格式:本题无输入
输出格式:输出韩信至少拥有的士兵人数。
1.2.1 数据处理
数据表达:用了n1个变量,n的值通过循环得出,是整型变量。
数据处理:
伪代码:
while 1
IF (n%5==1 && n%6==5 && n%7==4 && n%11==10) THEN
printf ("%d", n);
break;
ELSE
n←n+1; /*若不合题意,n加1继续循环*/
END IF
1.2.2 实验代码截图

1.2.3 造测试数据
| 输入数据 | 输出数据 | 说明 |
|---|---|---|
| 无 | 2111 | 韩信至少拥有的士兵人数 |
1.2.4 PTA提交列表及说明

1.答案错误:不太清楚为什么。后面把n++;前后加了{},把这后面的printf("%d", n)去掉了,在if语句的printf("%d", n)后面加了break。编译错
误。
2.编译错误:PTA上说break语句不在循环和switch里面打破,不太明白什么意思。把break去掉了,在后面又加上了printf("%d", n)。答案错误。
3-4.答案错误:没有注意题目要求,在前面加了scanf(),去掉后正确。
5.答案正确。
2.代码互评(5分)
| 同学代码截图1 | 自己代码截图 |
|---|---|
![]() |
![]() ![]() |
同学1的代码只设了两个变量,而且用的是whlie(1)+if+break+else这样的一个类型的循环,代码比较简洁。后面我们两个都用了if-else语句,就是里面的表达式不太一样。
| 同学代码截图2 | 自己代码截图 |
|---|---|
![]() |
![]() |
同学2的代码只设了4个变量,在while语句里面用了两次if-else,且我们的表达式都不一样,我的代码较简短一点。
3.学习总结
3.1 学习进度条
| 周/日期 | 这周所花的时间 | 代码行 | 学到的知识点简介 | 目前比较迷惑的问题 |
|---|---|---|---|---|
| 第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 学习体会
每次做PTA总是看不懂题目,有时候看懂了不知道怎么表达那些内容,而且我这次做作业又有点拖,好多东西都不太懂。char,学了,可是...这次作业还学了伪
代码,都不知道我写的对不对,和同学比较了一下,差别太大了,还是要好好理解,不然真的就懵逼了!
C语言Ⅰ博客作业08的更多相关文章
- C语言博客作业08
C语言I博客作业08](https://www.cnblogs.com/490-85-00-58-/p/11863312.html) 问题 回答 这个作业属于那个课程 C语言程序设计II 这个作业要求 ...
- C语言|博客作业08
这个作业属于哪个课程 C语言程序设计II 这个作业的要求在哪里 https://edu.cnblogs.com/campus/zswxy/CST2019-1/homework/9976 我在这个课程的 ...
- 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语言1博客作业08
一.本周作业头 这个作业属于那个课程 C语言程序设计II 这个作业要求在哪里 http://edu.cnblogs.com/campus/zswxy/SE2019-3/homework/9982 我在 ...
随机推荐
- http method
get: 获取资源get方法用来请求访问已被URL识别的资源 post: 传输实体主体POST方法用来传输实体的主体 put: 传输文件PUT方法用来传输文件. head: 获取报文首部head方法与 ...
- jQuery属性操作之DOM属性操作
DOM属性操作是对DOM元素的属性进行读取.设置和移除操作, 比如prop(). removeProp(). 1. prop() 1.1 使用prop()获取返回值 prop() 用于返回属性值时, ...
- ubuntu nvidia驱动安装教程
1. 安装显卡切换软件 sudo add-apt-repository ppa:nilarimogard/webupd8 #添加PPA更新源 sudo apt-get update #刷新更新源列 ...
- mui.toast样式风格及位置修改教程
mui.toast样式风格及位置修改教程 使用了mui.toast来实现可自动消失的信息提示效果. 但默认的显示效果太差了,很不显示,而且是在底部的. 如下图: 想改到屏幕的中间位置,再改大一点. 但 ...
- HearthBuddy 复生 reborn
https://hearthstone.gamepedia.com/Reborn Reborn is an ability that causes a minion to be resummoned ...
- 【VMWare】虚拟机启动遇到黑屏,在命令行窗口输入netsh winsock reset并不管用 重新启动客户机就好了
现象:虚拟机启动后是莫名其妙的黑屏,而且它上面安装的MySql也无法访问了. 处置:上网百度方案,看到大多数网文推荐:“以管理员身份打开cmd,输入netsh winsock reset,然后重启机器 ...
- 2.1 Go语言基础之运算符
运算符用于在程序运行时执行数学或逻辑运算. 一.运算符 Go 语言内置的运算符有: 1. 算术运算符 2. 关系运算符 3. 逻辑运算符 4. 位运算符 5. 赋值运算符 1.1 算数运算符 运算符 ...
- UM概述
历史 UML创始于1994年10月,主要创始人Grady Booch.Jim Rumbaugh和Ivar Jacobson. UML(Unified modeling language统一建模语言) ...
- ExcelUtility 对excel的序列化与反序列化,支持当单元格中数据为空时将属性赋值为指定类型的默认值
源码https://github.com/leoparddne/EPPlusHelper 安装: Install-Package ExcelUtility -Version 1.1.4 需要为对象添加 ...
- 语法错误 : 缺少“;”(在“<”的前面)
该错误有可能是由错误所指行“<”附近的某个类型忘记#include <>所造成的




