第四次作业

https://edu.cnblogs.com/campus/hljkj/CS201802/homework/2522

1.我观看了三个视频,截图如下

2.通过观看视频我学习到了数组的概念及定义方法、使用方法,知道了一些需要赋很多值的题目的解决方法。

3.对于所学感觉还可以。

第十四次作业

7-2 求最大值及其下标 (20 分)

1.代码如下

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

2.解题思路
1).首先,本题所需的变量数为n,所以我们不能用通常的方法来定义几个变量,因为变量数不确定,这就需要运用数组来解决问题。

2).因本题n<10,所以我们定义一个数组长度为10的数组,本题涉及到换位问题,所以我们需要定义一个变量当做容器。

流程图如下

3.调试如下

第十四次作业7-3

1.实验代码

#include <stdio.h>
int main()
{
    int i, j = 0, k = 0, t, n, min, max, a[10];

    scanf("%d", &n);
    if (n == 2)
    { 
        scanf("%d %d", &a[0],&a[1]);
    
        for (i = 1; i > -1; i--)
      printf("%d ",a[i]);

    }
    else{

        scanf("%d", &a[0]);
        max = a[0]; min = a[0];
        for (i = 1; i < n; i++)
        {
            scanf("%d", &a[i]);
            if (max<a[i]) { max = a[i]; j = i; }
            if (min>a[i]) { min = a[i]; k = i; }
        }
        t = a[k]; a[k] = a[0]; a[0] = t;
        t = a[j]; a[j] = a[n - 1]; a[n - 1] = t;

        for (i = 0; i < n; i++)
            printf("%d ", a[i]);
    }
}

2.解题思路
1)首先本题涉及交换问题,所以容器是必不可少的,最大值最小值交换则要定义两个变量来分别存储最大值和最小值。

2)要找出最大最小值就必须进行判断,需要循环来比较找出最值。

3.流程图如下

 

3.调试过程

4.总结

1).本周我们学习了数组的定义,赋值与使用方法,可以用来解决一些既需要结果又需要保留原始数据的问题,除此之外,还可以解决一些变量个数不确定的问题。

2).我认为本周的难点在于数组加循环来实现一些互换问题,我觉得这个需要多做练习就能做好。

折线图及图表如下

https://www.cnblogs.com/xiaofengqaq/p/10115956.html

https://www.cnblogs.com/wafx/p/10157289.html

https://www.cnblogs.com/0224ming/p/10164004.html

posted on 2018-12-24 09:31  陈悦安2018023950  阅读(166)  评论(8编辑  收藏  举报

导航