第二次作业
一、作业问题链接
二、PTA作业:
- 函数中题目6-4 判断奇偶性
- 实验代码:
int even(int n) { int result; if(n%2==0) { result=1; } else { result=0; } return result; }
- 设计思路:
第一步:检查裁判测试程序与题目要求
第二步:根据测试程序发现子函数位置
第三步:编写子函数
第四步:带回主函数
- 流程图:
遇到的错误:
- 错误截图
- 断点与调试
- 问题:对子函数的奇偶性的返回值设置错误
-解决办法:从主函数开始一步步测试
- 数组[1]中问题7-2 输出数组元素
- 代码:
#include<stdio.h> int main() { const int N=10; int a[N]; int i; int p,q,n; scanf("%d",&n); for(i=0;i<n;i++) { scanf("%d",&a[i]); } q=n; if(n==1) { printf("%d\n",a[0]); } else { for(i=1;i<n;i++) { p=a[i]-a[i-1]; if(q==2) { printf("%d\n",p); } else if(i%3==0) { printf("%d\n",p); } else if(q!=1&&i%3!=0) { printf("%d ",p); } q--; } } return 0; }
- 遇到问题:
- 错误截图:
- 流程图:
- 断点调试:
-问题:最后的判断没有想到可以定义逐渐减少的变量q
- 解决办法:设置减少变量q
- 数组[2]中问题7-2 查找整数
- 代码:
#include<stdio.h> int main() { const int N=20; int a[N]; int x,n,i,flag=0; scanf("%d%d",&n,&x); for(i=0;i<n;i++) { scanf("%d",&a[i]); } for(i=0;i<n;i++) { if(a[i]==x) { flag=1; break; } else { flag=-1; } } if(flag==1) { printf("%d",i); } else { printf("Not Found"); } return 0; }
- 错误截图:
- 流程图:
- 断点与调试
- 问题: 未设置标志变量flag
- 解决办法: 设置标志变量
三、 总结
1.本周我学习了数组的使用, 函数的定义,排序法
收获: 能通过数组更简便的解决程序的编写, 同时能保存输入的数以便查看
2.难点: 数组的使用, 主函数调用, 排序法
解决:通过在线上观看翁凯老师的视频,同时在线下抽出时间打代码
四、 互评与学习进度
1.评论:
(1)刘昱淞
(2)邱作鹏
(3)周文豪
2.学习情况:
周数 | 代码行数 | 博客字数 | 知识点 |
第十四周 | 1500 | 500 | 分支结构 |
第十五周 | 2000 | 0 | 循环结构 |
第十六周 | 1000 | 1500 | 循环结构 |
第十七周 | 2000 | 1000 | 数组(一维) |