第四次作业

作业要求: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

 

posted @ 2018-12-25 00:10  ‘泡沫’  阅读(166)  评论(6编辑  收藏  举报