#c语言l博客作业08

这个作业属于哪个课程 C语言程序设计ll
这个作业的要求 https://edu.cnblogs.com/campus/zswxy/SE2019-4
我在这个课程的目标 能够使用C语言并且灵活运用
这个作业在哪个具体方面帮我实现目标 学会使用while,do-while循环语句
参考文献 百度、C语言程序设计

7-1 求整数的位数及各位数字之和

数据表达:定义变量count、sum、n
数据处理:运用while循环以及+=、%等运算符
include<stdio.h>
int main(void)
{
int count,sum,n; (定义变量数字位数、各数字和、数字)
count=sum=0;
scanf("%d",&n); (输入)
while(n)
{
sum+=n%10; (计算各数字之和)
n=n/10; (除去个位)
count++; (计算位数)
}
printf("%d %d\n",count,sum); (输出)
return 0;
}

实验代码


造测试数据

输入数据 输出数据 说明
120 3 3 位数为3,各数字和为3
2034 4 9 位数为4,各数字和为9
42 2 6 位数为2,各数字和为6

  • sum+=后面没有写导致编译错误,改为sum+=n%10

7-5 爬动的蠕虫

数据表达:定义变量n,u,d分别代表一口井的深度,上每分钟爬的高度,每分钟下滑的长度(单位寸)
数据处理:运用while循环语句,+=运算符
include<stdio.h>
int main()
{
int n,u,d; (定义深度,上爬速度,下滑的速度)
scanf("%d%d%d",&n,&u,&d); (输入)
int sum=0,t=0;
while(n)
{
sum+=u; (计算上爬距离)
t++; (计算时间)
if(sum>=n) (爬出井)
break; (跳出)
sum=sum-d; (下滑后距离)
t++; (计算时间)
}
printf("%d\n",t); (输出)
return 0;
}

实验代码

造测试数据

输入数据 输出数据 说明
12 3 1 11 虫子需要爬11分钟
15 5 2 10 虫子需要爬10分钟
16 5 1 8 虫子需要爬8分钟


*if(sum>=n)没有加等于导致部分正确

代码互评
我的代码

同学的代码

  • 我使用的是if语句来表示题目士兵的条件
  • 同学直接用在while条件中给出条件
  • 我使用的是for与if嵌套,同学只用了while循环语句
    我的代码

    同学的代码
  • 我们都用了while里面加if的语句但是往往只有一个if语句
  • 等于0时输出表达的方式不一样

    学习总结

    周/星期 这周所花的时间 代码行 学到的知识点简介 目前比较迷惑的问题
    第八周 9h 270 for循环语句 小数点位数的保留
    第九周 13h 400 自定义函数 表格和图的一些格式问题
    第十周 12h 550 多分支else-if以及字符型 一些字符型表示的运算
    第十一周 11h 680 switch语句 返回值被忽略的问题
    第十二周 13.5h 815 while、do-while循环语句 while、do-while循环语句与某些数学问题的结合使用


    1.这次进一步学习了while和都-while语句,未明确循环次数一般不用for语句
    2.do-while无论如何都活执行一次
    3.巩固各种学过的语句嵌套使用
    4.遇到一些题开始会难以有明确思路

思维导图

猜你喜欢

转载自www.cnblogs.com/yzc2416686584/p/11858138.html