预习作业:
一,你观看了几个视频?给出观看列表截图。
主要看来第一个视频,了解了数组不能直接赋值给数组,而是通过for循环成遍历数组
二,通过观看视频你学习到哪些知识点或者编程题目?
懂得了判断数组的大小可以使用sizeof,以及可以使用数组来判断素数。
三,对于所学知识点还有哪些疑问?有哪些知识点没有学会?
认为冒泡法排序这个知识点比较困难,因为它对于我现在来说过于复杂。这需要我不断练习的同时,多和同学一起交流,相互学习。必要时可以在网络上查找资料,对于我们的学习会有很大的帮助。
作业要求 https://edu.cnblogs.com/campus/hljkj/CS201802/homework/2522
【第十六周】
第13次作业(数组)
7-3 查找整数
一,作业代码
#include<stdio.h> int main() { int i, N, X, count; int a[20]; scanf("%d", &N); scanf("%d", &X); for (i = 0; i < N; i++) { scanf("%d", &a[i]); } for (i = 0; i < N; i++) { if (a[i] == X) { count = i; printf("%d", count); break; } } if (i == N) { printf("Not Found "); } return 0; }
二,解题思路
1,定义整形变量i,N,X,count,定义整型数组a[20]
2,输入N,X的值
3,判断循环体于循环语句,并在循环语句中输入数组a[ ]的值
4,再设置一个循环语句,判断a[ i ]中是否有和X相等的数,如果有令count=i并输出count,如果没有,及i=N,输出Not Found。
三,流程图
四,调试结果
正确结果如下:
错误图如下
i的取值范围导致本题答案错误,学习书上知识后发现问题并更改。
【第十七周】
第14次作业(数组)
7-2 求最大值及其下标
一,作业代码
#include<stdio.h> int main(){ int n,i,b; scanf("%d",&n); int f[10]; for(i=0;i<n;i++){ scanf("%d",&f[i]); } for(b=0;b<n;b++){ if(f[0]<f[b]){ f[0]=f[b]; i=b; } if(f[0]==f[b]){ f[0]=f[b]; if(i>b){ i=b; } } } printf("%d %d",f[i],i); return 0; }
二,解题思路
1,定义整型变量n,i,b,定义整型数f[10]
2,输入n的值
3,判断循环体于循环语句,并在循环语句中输入f[ i ]的值
4,再次判断循环体于循环语句,判断f[0]与f[b]的大小如果f[0]<f[b],f[b]就是最大值令i=b,如果f[0]=f[b],及最大值为f[0],令i=b。
5,输出最大值与最大值的下标。
三,流程图
四,调试结果
正确结果如下
这次调试一次就过,要注意的是假设f[ 0 ]是最值,让它与其它值比较,并赋值给它,还要判断i与b的大小来确定最小值的下标。
总结:学习了有关于数组的知识,和之前一样,需要多加练习,尤其是去最值和下标这一部分
对于现阶段的我来说,冒泡排序法还需多多练习,只是个难点但也是重点
学习进度: