第二次作业
作业要求https://edu.cnblogs.com/campus/hljkj/Cprogramming_2018Autumn_CST2018_3/homework/2503
函数-2 找两个数中最大者
1.实验代码
#include <stdio.h> int max( int a, int b ); int main() { int a, b; scanf("%d %d", &a, &b); printf("max = %d\n", max(a, b)); return 0; } int max(int a,int b) { if(a>b) { return a; } else { return b; } }
2.解题思路
(1)主要描述题目算法
第一步,定义主函数和max函数
第二步,判断输入值大小
第三步,输出最大者
(2)流程图
3.本题调试过程碰到问题及解决办法
编译过程没有错误
数组1-2输出数组元素
1.实验代码
#include<stdio.h> main() { int a[10], b[10], i, j, n, count = 0; scanf("%d", &n); for (i = 0; i < n; i++) { scanf("%d", &a[i]); } for (j = 0; j < n - 1; j++) { b[j] = a[count + 1] - a[count]; count++; } count = 0; for (j = 0; j < n - 1; j++) { if (j == 0) { printf("%d", b[0]); } else if (count == 3) { printf("\n"); printf("%d",b[j]); count = 0; } else { printf(" %d", b[j]); } count++; } }
2.解题思路
(1)主要描述题目算法
第一步,定义并输入数组元素和其余所需要的量,
第二步,执行函数求出b[i]各项值
第三步,按照要求,每三项换一行进行输出b[i]各项的值
(2)流程图
3.本题调试过程碰到问题及解决办法
1.实验代码
#include<stdio.h> main() { int n,x,i,j=0,a[20]; 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) { j=1; printf("%d",i); } } if(j==0) { printf("Not Found"); } return 0; }
2.解题思路
(1)主要描述题目算法
第一步,定义函数和各个量,输入各个量的值
第二步,执行循环语句查找整数
第三步,如果找到整数则输出整数在数组里的位置即i,否则改变j的值,输出Not Found
(2)流程图
3.本题调试过程中遇到的问题及解决办法
(1)最近学习了数组的使用方法和一些能利用的场景,还有关于数组的冒泡排序法,选择排序法,还加深学习并使用了多重循环。
收获:能更加熟练的学习理解并使用学习的内容,使学习的理论变为实际应用
(2)在学习多重循环的过程中,需要一定的时间才能明白自己正在使用或者读的循环所要表示的含义,还有循环次数的划定范围
通过把循环拆分分开理解逐渐掌握多重循环使用方法和含义,多次实验理解规划范围的大小并熟练使用
互评和学习进度
1.https://www.cnblogs.com/cfy991213/p/10127646.html我评论了崔凤宇同学,在流程图中做得很好,对问题也比较深刻理解,
2.https://www.cnblogs.com/wsaldh/p/10127051.html 我评论了梁德辉同学,我没有在梁德辉同学的作业里看出什么问题,准确点来说有问题我好像也看不太出来,当然除了这个也太长了那么一点点的流程图以外还是相当不错的
3.https://www.cnblogs.com/7K7klz/p/10148787.html 我评论了卢泽同学,我没有在卢泽同学的作业里看出什么问题,而且学习进步很快,我要向他学习