这个作业属于哪个课程 | C语言程序设计II |
---|---|
这个作业要求在哪里 | http://edu.cnblogs.com/campus/zswxy/CST2019-1/homework/9976 |
我在这个课程的目标是 | 掌握while语句用法 |
这个作业在那个具体方面帮助我实现目标 | 进一步熟悉了while和do-while用法 |
参考文献 | 百度百科、primer plus |
1.PTA实验作业
1.1题目名:爬动的蠕虫
一条蠕虫长1寸,在一口深为N寸的井的底部。已知蠕虫每1分钟可以向上爬U寸,但必须休息1分钟才能接着往上爬。在休息的过程中,蠕虫又下滑了D寸。就这样,上爬和下滑重复进行。请问,蠕虫需要多长时间才能爬出井?
1.1.1数据处理
数据表达:定义整形变量N,U,D,L
数据处理:定义N,U,D,L
0赋值给L,t
输入N,U,D;
while(L<N寸){
L=L+U;
t++;
if(L>=N寸)
跳出循环;
else
L=L-D;
t++;。
}
printf("输出蠕虫到井口总时间");
程序结束;
1.1.2实验代码截图
1.1.3 造测试数据
数据输入 | 数据输出 | 说明 |
---|---|---|
12 3 1 | 11 | 输入样例 |
1 1 1 | 1 | 输入较小数据 |
20 10 5 | 5 | 输入较大数据 |
1.1.4 PTA提交列表及说明
部分正确:没能考虑到只要头过就算到顶的条件所以公式L=N不正确
解决办法:重新读题目,请教同学,把题目按数学题方法做一次,发现问题,将L=N改为L>=N,解决
1.2 题目名jmu-c-二进制转10进制
输入一组二进制字符,输出其对应的十进制数。当输入回车键时,输入结束。若输入非二进制字符,输出error input!
1.2.1数据处理
数据表达:定义字符型变量ch和常量number
数据处理:
定义整型变量number;
定义字符变量ch,调用ch用getchar函数;
while(不按下回车键)
{
switch(ch)
{
case 字符0:
case 字符1:number=number*2+ch-'0';跳出;
default:输出结果"error input";结束
}
ch=getchar();
}
printf("输出n对应的十进制数");
程序结束;
1.2.2 实验代码截图
1.2.3 造测试数据
数据输入 | 数据输出 | 说明 |
---|---|---|
11111111 | 255 | 输入样例数据 |
11101 | 29 | 输入随机数据 |
29 | error input! | 输入非二进制数 |
1.2.4 PTA提交列表及说明
编译错误:ch=getchar()未加;导致错误
解决办法:在用dev-c++试验后发现漏掉,后补齐
部分正确:default之后用break,但循环出错
解决办法:请教同学后,改用return 0,结束所有语句解决
2.代码互评
同学代码
我的代码
1他使用了数组来解决,而我用了逻辑运算ch=getchar();
2我用了switch来处理但他用for循环处理
3我的代码比他的更简单,简洁
同学代码
我的代码
1我定义了让两个整形常量,他只定义了一个
2我的while循环条件为L>N他为N>0,运算方式也不同
3我的代码更加简洁
3.学习总结
3.1 学习进度条
周/日期 | 这周所花的时间 | 代码行 | 学习到的知识点简介 | 目前比较疑惑的问题 |
---|---|---|---|---|
10/8-10/12 | 10小时 | 120 | if-else语句和输入输出格式 | 变量问题,输入输出格式 |
10/12-10/18 | 8小时 | 126 | for语句和输入输出格式 | 公式的表达 |
10.18-10.25 | 8小时 | 130 | 自定义函数来编程和生成乘方表和阶乘表 | 函数的调用 |
10.25-11.1 | 8小时 | 139 | 关系符和逻辑符号 | 各个符号之间的优先级不明确 |
11.1-11.7 | 8小时 | 115 | switch语句 | for和switch之间变换 |
11.7-11.14 | 7小时 | 140 | while语句 | do-while和while的区别 |
3.2 累积代码行和博客字数
3.3 学习内容总结和感悟
3.3.1 学习内容总结
3.3.2 学习体会
这周学习的是do-while和while语法,算比较简单的了,但while语句中判断的条件有时并不能很好的弄清楚,到底何时循环何时结束还把握不好,不过我还是会努力的尽管很多东西看不懂,辅导书也终于到了,上面的知识比课本详细很多,作业也是一如既往,必须自学后面的内容才能做出来,果然自学很重要,dev-c++也不够熟练要自己多加练习