第四次作业

作业要求:https://edu.cnblogs.com/campus/hljkj/CS201801/homework/2523

 预习作业

1.在中国大学mooc上我看了七个视频

2.通过观看视频,我学习到了怎么去定义一个数组,和数组的简单使用,也会用数组解决一些简单的问题,如,通过数组找到在一行数字中指定的数,还有如何使一行数字进行逆序,还有使一行数字从小到大排序或者从大到小排序,知道了两种排序方法,同时学了最基础的二位数组的知识。

3.在数组的学习过程中,对于二维数组更进一步的应用,还有冒泡排序还有一些疑惑,二维数组虽然会去定义,但是用起来还是很不流畅,而冒泡排序中对于内外两层for循环的关系还是没有搞得太懂,用起来出现的错误比较多。

第14次作业(数组)
题目7-2 求最大值及其下标

1.实验代码

#include<stdio.h>
int main(){
  int n,i,max=0;
  scanf("%d",&n);
  int a[n];
  for(i=0;i<n;i++){
    scanf("%d",&a[i]);
    if(a[i]>a[max]){
   max=i;
  }}
  printf("%d %d",a[max],max);
  return 0;
}

2.解题思路
(1)

第一步:先定义三个整型变量,循环用的i,输入数的个数n,最大值的下标max,并初始化为0;

第二步:再定义一个有n个数的数组;

第三步:接着进入循环,并输入需要比较的数,循环n次,每次循环都比较此时a[i]与a[max]大小,如果大于,就把此时的下                标i的值给max,使a[max]的值保持最大;

第四步:循环结束输出最大值和最大值的下标值max的值。

(2)流程图

3.本题调试过程碰到问题及解决办法:

 运行结果截图:

 

调试截图

遇到的问题及解决方法:

 在最开始的时候,我没有输入n的值就定义a[n],在de-c++上运行时发现,程序出现了错误,但我一行一行看还是没感觉有什么错误,不过当我调试时,在定义a[n]那里出现了错误,最后我先输入n的值,再去定义a[n],解决了这个错误。

个人总结: 

通过本周的学习我知道了最基本的数组的知识,知道可以在对数组定义时就对数组元素赋初始值,知道数组如果没有初始化,系统自动为所有元素赋0;虽然老师没讲二维数组,但通过中国大学mooc和书本上的内容,学习了简单的二维数组的知识,同时也学会通过数组的知识,为一些数字进行排序,学会了两种排序法。

 第13次作业(数组)

 题目7-3 查找整数

 1.实验代码 

 
#include<stdio.h>
int main()
{
    int  i=0,n=0,x=0,flag=2;
    scanf("%d %d",&n,&x);
    int a[n];
    for(;i<n;i++)
    {
        scanf("%d",&a[i]);
    }
    for(i=0;i<n;i++)
    {
        if(x==a[i]){
            flag=i;
            break;
        }
    }
    if(flag!=100){
        printf("%d",flag);
    }
    else{
        printf("Not Found");
    }
    return 0;
}

2.解题思路:

(1)

第一步:先定义四个整形变量,i(循环所用),n(输入数字的个数),x(要查找的数),flag(x的位置),再定义数组a[n];

第二步:通过第一个for循环,输入n个数字;

第三步:再用一个for循环,使i从0开始增加,并且每一次循环都判断a[i]是否等于要找的数x,如果是的话,就把i的值赋给flag,并弹出循环;

第四步:最后判断flag是否等于100,是的话输出Not Found,不是就输出x的位置。

(2)流程图:

 

3.本题调试过程碰到问题及解决办法:

 运行结果截图:

 调试截图

 

个人总结:

(1) 

通过本周的学习,我学会了简单的数组的应用,有找出最小值和最小值的下标等问题,也有为一行数排序的问题,在解题的过程中,我也学会两种有用的方法,选择排序法和冒泡排序,这两种方法对于现在的我来说,还是非常简便的方法,同时也学习了字符串转换为整数的方法,会了二维数组的简单应用。

 (2)

 在我看来,理解选择排序法和冒泡排序之间的差别,并且能够根据题目的情况,正确的选择合适的方法来解决这个问题是一个难点,不过,在仔细的观察了这两种方法的程序,并且自己也做了一些相关的题目,加深了对它们的理解之后,最后解决了这个问题。

 互评和学习进度

互评

 (1)[https://www.cnblogs.com/zcybky/p/10152047.html]

 (2)[https://www.cnblogs.com/wangxiangbo/p/10165493.html]

 (3)[https://www.cnblogs.com/1a2B3c4D/p/10160490.html]

原文地址:https://www.cnblogs.com/wu1263344154/p/10171473.html