C语言I博客作业08

一.本周作业头

这个作业属于那个课程|C语言程序设计II
--|--|--
这个作业要求在哪里|作业链接
我在这个课程的目标是|掌握和熟悉C语言的各种结构和语句
这个作业在那个具体方面帮助我实现目标|更加熟悉三种循环语句
参考文献|C语言程序设计,PTA

二.本周作业

1.PTA实验作业

1.1求整数的位数及各位数字之和
对于给定的正整数N,求它的位数及其各位数字之和。

1.1.1数据处理

  • 数据表达:用到的变量N,count,sum;变量均为整型;
  • 数据处理:

int N,count=0,sum=0;//定义变量N数字,count位数,sum位数之和
scanf("%d",&N);
while(N!=0)//循环条件数字不等于0
count++;//位数加一
sum=sum+N%10;//位数之和 等于 位数之和 加 数字除以十取余
N=N/10;//数字N等于数字N除以十取整
printf("%d %d",count,sum);//输出位数和位数之和

1.1.2实验代码截图

1.1.3 造测试数据

输入数据 输出数据 说明
430 3 7 为三位数,位数之和为7
1610 4 8 为四位数,位数之和为8
79277 5 32 为五位数,位数之和为32

1.1.4 PTA提交列表及说明

  • 部分正确:没有注意输出格式,在输出时没在%d之间添加空格。

1.2 题目 韩信点兵

在中国数学史上,广泛流传着一个“韩信点兵”的故事:韩信是汉高祖刘邦手下的大将,他英勇善战,智谋超群,为汉朝建立了卓越的功劳。据说韩信的数学水平也非常高超,他在点兵的时候,为了知道有多少兵,同时又能保住军事机密,便让士兵排队报数:

  • 按从1至5报数,记下最末一个士兵报的数为1;
  • 再按从1至6报数,记下最末一个士兵报的数为5;
  • 再按从1至7报数,记下最末一个士兵报的数为4;
  • 最后按从1至11报数,最末一个士兵报的数为10;
    请编写程序计算韩信至少有多少兵。

1.2.1 数据处理

  • 数据表达:用到的变量number,且变量的类型为整型;
  • 数据处理:

int number;//定义变量number
for(number=1;;number++)//for循环,初始量number为1,每执行一次number加一
if((number%51)&&(number%65)&&(number%74)&&(number%1110))//循环体,循环条件,士兵数满足这四种报数方式
printf("%d",number);//输出士兵数number

1.2.2 实验代码截图

1.2.3 造测试数据

输入数据 输出数据 说明
无输入数据 2111 至少拥有的士兵数为2111

1.2.4 PTA提交列表及说明

  • 运行超时:将return 0;写到了循环体的后面;
  • 编译错误:for循环中的语句少加了一个分号。

2.代码互评

同学代码

我的代码

1)这位同学比我多定义一个变量:digit,digit在我的代码中代表N%10,数字除以10求余;
2)这位同学用的是do-while的循环结构,先执行在写循环条件;特别注意的是while语句写完循环条件之后要加分号;
3)这位同学还考虑了如果输入的数字为负数的话将数字变为正数。

3.学习总结

3.1 学习进度条

周/日期|这周所花的时间|代码行|学到的知识简介|目前比较迷惑的问题
--|:--😐:--😐:--😐:--😐--:
10/9--10/12|三天|75+|编写分支结构if-else语句,浮点型数据类型和scanf语句函数|平方根函数和幂函数的使用,双精度浮点型数据类型的使用
第四周/10-16到10-18|一天|100+|“for”循环结构语句,累加求和|分母的累加不熟练,有正负交替的求和不怎么会
第五周/10-23—10-25|一天| 90|调用函数先定义在调用|定义函数与调用函数的格式不熟练,主调函数与被调函数不清楚
第六周/10-30--11-2|一天| 120 |字符型数据的输入和输出,逻辑表达式|不熟悉逻辑运算符和逻辑表达式
第七周/11-6——11-8|一天| 90 |switch语句,case后必须为常量表达式|switch后的表达式是否有要求
第八周/11-13——11-15|一天|75|循环结构,for语句,while语句和do-while语句,及其三者的区别适用情况|不知道关于二进制和十进制的知识

3.2 累积代码行和博客字数

3.3 学习内容总结和感悟

3.3.1 学习内容总结

3.3.2 学习体会

本周学习了三种循环结构,for语句,while语句和do-while语句,三种语句适用于不同的情形。上周刚刚觉得能体会到其中的乐趣,这周的作业又看不懂题目,而且不懂关于二进制和十进制的知识,不知如何判断,和两者之间的转换。

posted @ 2019-11-15 19:43  陈double  阅读(168)  评论(3编辑  收藏  举报