| |
---|:--:-----
这个作业属于那个课程|C语言程序设计II
这个作业要求在哪里| 作业要求
我在这个课程的目标是|制作一个属于自己的小程序
这个作业在那个具体方面帮助我实现目标|使用while和do-while结构解决问题
参考文献|C语言程序设计 百度文献
1.PTA实验作业(20分/题)
1.1求整数的位数及各位数字之和
对于给定的正整数N,求它的位数及其各位数字之和。
输入格式:
输入在一行中给出一个不超过10
9
的正整数N。
输出格式:
在一行中输出N的位数及其各位数字之和,中间用一个空格隔开。
输入样例:
321
输出样例:
3 6
1.1.1数据处理
- 数据表达:运用了变量N,he,sum,i,都为整型,分别代表输入的整型数,储存整型数,位数,各位数字之和
- 数据处理:int N,he;( 输入二个整型变量)
int i=0,sum=0; (赋值为0 )
scanf("%d",&N); (变量为整型)
he=N;
while(he)
{
sum+=he%10;
he=he/=10;
i=i+1;
1.1.2实验代码截图
1.1.3 造测试数据
| | | |
---|:--:-----
110|3 2|该数字为三位数,其各位数字之和为2
2345|4 14|该数字为四位数,其各位数字之和为14
88888|5 40|该数字为五位数,其各位数字之和为40
1.1.4 PTA提交列表及说明
- Q1:答案错误 %d%d打成了%d,%d
- Q2:编译错误 %d %d打成%d,%d
- A1A2:将符号修改为%d %d
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 ,move,x都为整型
- 数据处理:int N,U,D; 输入变量
int x=0; 赋值
int move=0; 移动时间为0
scanf("%d%d%d",&N,&U,&D); 输入语句
while(x<N) 判断的条件
{
x+=U;
move=move+1;已知蠕虫每1分钟可以向上爬U寸,但必须休息1分钟才能接着往上爬
if(x>=N)只要在某次上爬过程中蠕虫的头部到达了井的顶部,那么蠕虫就完成任务了
{
break;
}
else
{
x-=D;
move=move+1;
1.2.2 实验代码截图
1.2.3 造测试数据
| | | |
---|:--:-----
输入数据|输出数据|说明
50 15 10|15|爬到顶部15分钟
19 10 5|5|5分钟爬到顶部
20 20 10|1|刚好一分钟爬到顶部
1.2.4 PTA提交列表及说明
- Q1:编译错误 printf语句后面打成:
- A1:将:改为;
- Q2:答案错误 >=误写成>
- A2: >=改为>
2.代码互评(5分)
-
同学代码截图
-
自己代码截图
-
本题是关于古代韩信点兵的题,
按从1至5报数,记下最末一个士兵报的数为1;
再按从1至6报数,记下最末一个士兵报的数为5;
再按从1至7报数,记下最末一个士兵报的数为4;
最后按从1至11报数,最末一个士兵报的数为10 我们定义的变量不同 我定义的为N 他定义的为x 但都为整型
同学的代码也不太规范 我的比较简短 都使用了for循环语句
3.学习总结(15分)
3.1 学习进度条(5分)
周/日期* | 这周所花的时间 | 代码行 | 学到的知识点简介 | 目前比较困惑的问题 |
---|---|---|---|---|
第十二周 | 10 | 260 | 使用while和do-while结构解决问题 | 抖音上看到了贪吃蛇的代码,何时自己才能编出 |
3.2 累积代码行和博客字数(5分)
3.3 学习内容总结和感悟(5分)
3.3.1 学习内容总结
3.3.2 学习体会
- 本周是不同的一周 感觉过得超快 也学习到了新的do-while语句
为了增加对C语言学习的热情 11.11特意买了《啊哈C语言!》虽然还没开始看 但是这个书名就极大地吸引了我
希望能结合书本 进一步提升自己 冲!