第四次作业

预习作业:

一,你观看了几个视频?给出观看列表截图。

主要看来第一个视频,了解了数组不能直接赋值给数组,而是通过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\n");
    }
    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的大小来确定最小值的下标。

总结:学习了有关于数组的知识,和之前一样,需要多加练习,尤其是去最值和下标这一部分

对于现阶段的我来说,冒泡排序法还需多多练习,只是个难点但也是重点

学习进度:

posted on 2018-12-25 19:10  许楚鑫  阅读(98)  评论(1编辑  收藏  举报

导航