1.作业头
| 这个作业属于哪个课程 | C语言程序设计II |
| ---- | ---- | ---- |
| 这个作业属于哪个课程 | 班级的链接 |
| 这个作业要求在哪里 | 作业的要求 |
| 这个作业的目标 | 学好函数的定义和调用,对函数理解深一点! |
| 参考文献 | C语言程序设计 |
| 学号 | 20208970 |
1.PTA实验作业(20/题)
1.1题目一
1.1.1数据处理
数据表达:定义整型变量n1,n2,i,cnt,还用整型数组定义了b(10),其中i进入for循环,b进行累加,N进入主函数。
数据处理:
表达式:int b[10]={0};
int num=N;
int a=sqrt(N);
if(a*a==num){
while(num!=0){
b[num%10]++;
num=num/10;
}
for(int i=0;i<10;i++){
if(b[i]>1){
流程结构:for循环,while语句,if-else语句。
1.1.2实验代码截图
1.1.3造测试数据
输入 |
输出 |
说明 |
105 500 |
cnt = 6 |
测试用例 |
121 221 |
cnt = 1 |
随机取的三位数 |
100 400 |
cnt = 5 |
随机取的三位数 |
1.1.4 PTA提交列表及说明
提交列表说明:
答案错误 1:将num!=0写成了num==0,不会从变量到数组,导致多种错误,后来别人教了就会了。
运行超时 2:包括负数,cnt为0,这一项运行超时,原因也是等于号的问题。
1.2题目名
1.2.1数据处理
数据表达:用整型定义了a,b,c,x,y,z,用a控制是几元几次方程,其他变量控制条件。
数据处理:
表达式:z = b * b - 4 * a * c;
if (z >= 0)
{
x = (-b + sqrt(z)) / (2 * a);
y = (-b - sqrt(z)) / (2 * a);
if(x == y|| fabs(x - y) <= 0.01)
{
printf("x1 = x2 = %g", x);
}
else
{
printf("x1 = %g, x2 = %g", x, y);
}
}
else
{
x = sqrt(-z) / (2 * a);
z = -(b / (2 * a));
if(z == 0)
z = 0;
流程结构:多次运用if-else语句
1.2.2实验代码截图
1.2.3造测试数据
输入 |
输出 |
说明 |
0 2 4 |
x=-2 |
方程为一元一次方程一个解为-2 |
1 2 1 |
x1=1 x2=-1 |
为一元二次方程两个解为1 -1 |
0 0 0 |
无穷多解 |
测试用例 |
1.2.4PTA提交列表说明
提交列表说明:
部分正确:忘记注意实数的负零问题和误差问题。忘记讨论无穷多解这一情况了。
编译错误:多加了一个括号,之前删了一个,然后加的时候就懵了。
2.代码互评
同学代码截图1
自己代码截图1
1.该同学掉用了pow函数和sqrt,而我则是用sqrt,意思差不多,但该同学想法还是不错
2.都是多次使用if-else语句,但是该同学的代码紧凑繁琐,让人看着不舒服,而我的代码就比较简洁。
同学的代码截图1
我的代码截图2
1.该同学定义多种变量然后运用switch语句一个一个的读取存储,而我则是全放在一个地址里面。
2.虽然该同学想法是对的,但是我觉得这样就使一个简单的代码变的复杂化了。
3.学习总结(15分)
3.1 学习进度条(5分)
周/日期 |
这周所花时间 |
所学知识点简介 |
目前所迷惑的问题 |
第十六周/12.15-12.12 |
35个小时 |
函数的定义和函数的调用和函数的传递 |
看到函数的题目一头雾水不知道从何开始,不知道函数的程序怎么跑 |
第十五周/12.7-12.14 |
30个小时 |
双for循环,continue和break的运用 |
遇到题没有思路 |
第十四周/11.30-12.5 |
34个小时 |
学习的while语句和do while语句 |
逻辑有点不清晰,很容易思路就乱了 |
第十三周/11.23-11.28 |
35小时 |
学习switch语句和温习多分枝结构 |
不熟练程序是怎么跑的,条件多了就不知道怎么办了 |
第十二周/11.16-11.22 |
30小时 |
学习了分支结构,else-if语句 |
无 |
第十一周/11.10-11.14 |
40小时 |
学了如何调用其他函数 |
不熟练 |
第十周/11.2-11.8 |
20小时 |
学了for循环 |
复杂一点就不知道怎么打了,运用不机灵,死板 |
第九周/10.26-11.1 |
18小时 |
学了一些基本函数 |
不知道为什么要这样打代码,不会分析题 |
第八周/10.19-10.25 |
10小时 |
了解本专业是学什么 |
不知道怎么打代码 |
3.2累计代码和博客字数(5分)
时间 |
博客字数 |
代码行数 |
第八周/10.19-10.25 |
1008 |
5 |
第九周/10.26-11.1 |
1882 |
45 |
第十周/11.2-11.8 |
2942 |
80 |
第十一周/11.10-11.14 |
4003 |
200 |
第十二周/11.16-11.22 |
5600 |
156 |
第十三周/11.23-11.28 |
6800 |
320 |
第十四周/11.30-12.5 |
6000 |
320 |
第十五周/12.5-12.14 |
5958 |
326 |
第十六周/12.15-12.12 |
5657 |
328 |
|
|
|
3.3 学习内容总结和感悟(5分)
3.3.1 学习内容总结
3.3.2学习体会
1.学了函数之后,感觉自己啥都会了,结果一看题目人傻了,啥也不会了,虽然题目很难但是我觉得也要认真写,借鉴别人的也要写完!
2.题目是真的越来越难了,要努力,要深造,不然专业人士都算不上,甚至还可能挂科,现在没有晚自习了,要好好利用时间敲代码!练题!
3.函数,数组真的把我给写懵逼了,有时候是真的想放弃计科,但是我又很想当程序员,所以我要加油,加油,一定要加油!