| 这个作业属于那个课程 | C语言程序设计II |
|---|---|
| 这个作业要求在哪里 | |
| 我在这个课程的目标是 | 能够熟悉掌握所学编程语言并在做作业的过程中熟悉语法 |
| 这个作业在那个具体方面帮助我实现目标 | 写博客的过程中回顾做作业的过程巩固所学知识 |
| 参考文献 | 百度百科,学长的帮助 |
1.PTA实验作业

1.PTA实验作业
1.1 题目名

1.1.1数据处理
数据表达:
定义int类型变量sum和字符字符型变量N。sum用来累计二进制转化为的十进制,N用来按位输入并判断是否为二进制数
*
数据处理:
{
定义int变量sum=0
定义字符型变量N='0'
当N不等于\n时
{
输入字符N
如果N为\n跳出循环
如果N为1或0则执行sum=sum2+N-'0'
否则输出error input!
}
}
输出sum
1.1.2实验代码截图

1.1.3 造测试数据
| 输入数据 | 输出数据 | 说明 |
|---|---|---|
| 111 | 7 | 测试较小二进制数 |
| 11111111 | 255 | 按照题目要求测试二进制数 |
| 34 | error input! | 测试不是二进制的数 |
1.1.4 PTA提交列表及说明

说明:首先要考虑的是如何判断输入的数为二进制数,我一开始使用的方法是用int类型的N然后用%的方式逐步判断,这种方法在输入数据较小时可以使用,但是int的范围很小,一旦超出范围就会变成奇奇怪怪的值,于是就改成了long int和long long int,但是范围依然不够,于是在室友的提醒下改用了字符型的N,输入字符是“%c”,字符串是“%s”,如果输入的是字符串但是用的却是“%c”的话就会在循环体中一位一位的输入,这样就可以达到按位判断的目的。接下来是二进制转十进制,十进制转二进制的一种方法是用二去除然后看余出来的数字,在这里转换的方法也就是倒过来,二进制的位数实际上就是余出来的数,只要把余出来的数乘二再加上下一位二进制数一或是零就可以把它转化为原来的十进制数。
1.
2.
1.2 题目名

1.1.1数据处理
数据表达:
定义了int型变量o,S,r,i。o用来存放计算出的光棍,S用来输入题目要求的数,r用来存放o%S得到的数,i用来对光棍计数。
*
数据处理:**
1.1.2实验代码截图
1.1.3 造测试数据
| 输入数据 | 输出数据 | 说明 |
|---|
1.1.4 PTA提交列表及说明
1.
2.
2.代码互评
同学代码
个人代码
1.
2.
同学代码
个人代码
1.
2.
3.学习总结
3.1 学习进度条
| 周/日期 | 这周所花的时间 | 代码行 | 学到的知识点简介 | 目前比较迷惑的问题 |
|---|---|---|---|---|
| 第八周 | ||||
| 第七周 | 7个小时 | 300 | 学会使用switch | 对于switch的使用还不够熟练 |
| 第六周 | 每天2个小时 | 260 | 学会了使用if ,for的嵌套 | 无 |
| 第五周/10-24 | 每天90分钟 | 160 | for循环语句和自定义函数 | 在自定义函数时有时理不清逻辑 |
| 第四周 | 每天90分钟 | 240 | for循环语句 | 有时候不知道如何判断数据是整型还是浮点型 |
| 第三周 | 每天一个小时 | 426 | if-else语句和else-if多分支结构 | 还没有 |
3.2累计代码行和博客字数
| 时间 | 博客字数 | 代码行数 |
|---|---|---|
| 第一周 | 600 | 50 |
| 第二周 | 800 | 70 |
| 第三周 | 1200 | 90 |
| 第四周 | 1400 | 100 |
| 第五周 | 1600 | 160 |
| 第六周 | 1700 | 240 |
| 第七周 | 2000 | 300 |
| 第八周 |
3.3学习感悟
3.3 学习内容总结和感悟