第四次作业
作业要求:https://edu.cnblogs.com/campus/hljkj/CS201801/homework/2523
一.预习作业:
二.(1)第13次作业(数组)
7-3 查找整数
1.代码:
#include<stdio.h> int main() { int N, X, i, location = 0; scanf("%d %d",&N,&X); int a[N]; for(i=0;i<N;i++) { scanf("%d",&a[i]); if(a[i] == X){ printf("%d",location); break; } location++; } if(location >= N){ printf("Not Found"); } return 0; }
解题思路:
1>先定义整形变量N, X, i, location,输入N, X;
2>定义一个数组a[n];
3>令变量i的初始值是0;并在for 循环中嵌入if-else,当i<N,判断,如果a[i] == X,则输出location,每当依次循环结束令location++;
4>最后if判断如location>=N,则输出"Not Found";
流程图:
结果:
调试:
错误调试:
遇到的问题:
1>对于数组变量不了解,导致无法正确输入数组变量;
2>不知道数组变量应该什么时候输入;
3>不了解在循环中如何再一次循环后让循环重新开始;
解决办法:
1>查看C语言书,知道在什么时候用什么样的数组变量;
2>通过上网搜索,知道要想每一次循环都重新开始在结束后加break;
(2)第14次作业(数组)
7-2 求最大值及其下标
代码:
#include<stdio.h> int main() { int n,max,i,number = 0; scanf("%d",&n); int a[n]; for(i=0;i<n;i++) { scanf("%d",&a[i]); } max = a[0]; for(i=0;i<n;i++) { if(max < a[i]){ max = a[i]; number = i; } } printf("%d %d",max,number); return 0; }
解题思路:
1>首先定义整形变量n,max,i,number,输入n;
2>定义一个数组a[n];
3>令变量i的初始值是0;
4>令变量i的初始值是0;并在for 循环中嵌入if-else,当i<N时,判断如果max<a[i],则max=a[i],nember=i,并且i++直到循环结束;
5>输出就max,number;
流程图:
结果:
调试:
错误调试:
遇到的问题:
1>在写代码时有思路,但是总有想不到的地方;
2>找到最大值之后不知道如何与别的值代换;
解决办法:
1>通过在书上查找相类似的题,来梳理自己的解题思路;
2>通过询问同学知道了如何代换;
三.个人总结
通过之前几个星期的t学习 ,对数组有了更深层次的了解,但是还不够,应该继续努力;
图表:
评价:
1>https://www.cnblogs.com/zhaoxuan/p/10165311.html
2>https://www.cnblogs.com/1a2B3c4D/p/10160490.html
3>https://www.cnblogs.com/zcybky/p/10152047.html