C语言作业|08
这个作业属于那个课程 | C语言程序设计II |
---|---|
这个作业要求在哪里 | C语言I作业08 |
我在这个课程的目标是 | 熟练掌握C语言 |
这个作业在那个具体方面帮助我实现目标 | 在PTA上老师布置的类型作业 |
参考文献 | Markdown基本语法 |
一、PTA实验作业排名
1.1求整数的位数及各位数字之和
对于给定的正整数N,求它的位数及其各位数字之和。
输入格式:
输入在一行中给出一个不超过十的九次方的正整数N。
输出格式:
在一行中输出N的位数及其各位数字之和,中间用一个空格隔开。
输入样例:
321
输出样例:
3 6
1.1.1 数据处理
数据表达:用了整形变量N, a, i = 0, sum = 0;
sum表示各位数字之和,i表示它的位数,
数据处理:用了while语句,
用了表达式sum += a % 10除以10取余数
用了表达式 a /= 10除以10取余数
用了表达式 i++使用i之后再加一
伪代码
int main(void)
{
int N, a, i = 0, sum = 0;
scanf("%d", &N);
a = N;
while (a)
{
sum += a % 10;
a /= 10;
i++;
}
printf("%d %d\n", i, sum);
return 0;
}
1.1.2 实验代码截图
输入数据 | 输出数据 | 说明 |
---|---|---|
33 | 3 6 | 33它的位数是2及其各位数字之和是6 |
356 | 3 14 | 356它的位数是3及其各位数字之和14 |
466 | 3 16 | 466它的位数是3及其各位数字之和是16 |
1.1.4 PTA提交列表及说明
提交列表说明:
在编译器中提前编译,所以没有错误
1.2爬动的蠕虫
一条蠕虫长1寸,在一口深为N寸的井的底部。已知蠕虫每1分钟可以向上爬U寸,但必须休息1分钟才能接着往上爬。在休息的过程中,蠕虫又下滑了D寸。就这样,上爬和下滑重复进行。请问,蠕虫需要多长时间才能爬出井? 这里要求不足1分钟按1分钟计,并且假定只要在某次上爬过程中蠕虫的头部到达了井的顶部,那么蠕虫就完成任务了。初始时,蠕虫是趴在井底的(即高度为0)。
输入格式:
输入在一行中顺序给出3个正整数N、U、D,其中D<U,N不超过100。
输出格式:
在一行中输出蠕虫爬出井的时间,以分钟为单位。
输入样例:
12 3 1
输出样例:
11
1.2.1 数据处理
数据表达:用了整形变量N,U,D,L,t下滑了D寸,m表示高度,N表示深为N寸,向上爬U寸
数据处理:用了while语句和if语句,
用了表达式t表示时间的变化;
用了表达式 m=m+U表示蠕虫爬的高度;
用了表达式 m>=N,break;m=m-D;t++;表示蠕虫爬出的时间
伪代码
include<stdio.h>
int main()
{
int N, U, D, t, m;
scanf("%d%d%d", &N,&U,&D);
m=t=0;
while(m<N){
t++;
m=m+U;
if(m>=N)
break;
m=m-D;
t++;
}
printf("%d",t);
return 0;
}
1.2.2 实验代码截图
1.2.3 造测试数据
输入数据 | 输出数据 | 说明 |
---|---|---|
15 5 3 | 11 | 深为15寸的井,蠕虫每1分钟可以向上爬5寸,蠕虫需要11分钟才能爬出井 |
10 5 2 | 5 | 深为10寸的井,蠕虫每1分钟可以向上爬5寸,蠕虫需要10分钟才能爬出井 |
14 5 3 | 11 | 深为14寸的井,蠕虫每1分钟可以向上爬5寸,蠕虫需要11分钟才能爬出井 |
1.2.4 PTA提交列表及说明
编译错误:变量没有统一,时间t和m搞错了
编译正确:改了回来。
2.代码互评
同学代码
我的
同学的代码变量复杂一些,而且题目要求为N,所以觉得自己更接近题目要求。
学习总结
周| 这周所花的时间代码行| 学到的知识点简介|目前比较困惑的问题
-|-|-
第五周|4小时|20行|初期开始学习“Hello World!"|不知道如何开始编译
第六周|8小时|27行|提问的智慧及编译器的下载|编译有些符号和格式问题
第七周|10小时|75行|流程结构类型及变量类型分类方法|代码分析不明白以及编译格式问题
第八周|12小时|120行|循环程序设计及Dev-C++编译运行等方法|用专业术语将代码解释出来及各种赋值运用
第九周|16小时|170行|四种流程结构及主调,被调函数,实参与形参的识别|PTA作业中有些语句的繁琐
第十周|20小时|210行|分支结构的部分代码|有没有更简便的方式来进行编译
第十一周|22小时|320|while语句的运用|感觉比较麻烦
3.3 学习内容总结和感悟
3.3.2 学习体会
感觉循环结构的运用度一般,但是循环结构容易理解,每次写循环结构只要把握好循环开始和终止条件就感觉比较容易,但是也离不开数学对题目的帮助。
do-while的结构运用不太熟练,以为感觉每次写do-while会很麻烦,还需要努力。