第二次作业

第二次作业要求:https://edu.cnblogs.com/campus/hljkj/Cprogramming_2018Autumn_CST2018_4/homework/2502

一.计算机18-函数

6-2.找两个数的最大值

1.实验代码

int max( int a, int b )
{
    int max;
    if(a>b)
    max=a;
    else 
    max=b;
    return max;
    
}

2.设计思路

(1)文字描述

第一步:定义两个数a,b

第二步:比较a,b 若a>b则a为最大值,反之,b为最大值。

(2)流程图

3.错误提示及运行结果

4.调试截图

 

5.遇到的问题及解决办法:

用if语句时末尾加了分号,应该把分号去掉

二.数组1   7-4求一组数中的最大值和次大值

1.实验代码

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

2.解题思路

(1)文字描述

第一步:定义变量。

第二步:输入数组,建立循环。

第三步:判断语句,输出结果。

(2)流程图

3.错误提示和运行结果

4.调试截图

三.数组2 7-4选择法排序

1.实验代码

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

2.解题思路

(1)文字描述

第一步:定义变量,数组

第二步:进行趟数控制

第三步:起始交换位置

第四步:输出结果

(2)流程图

3.错误截图和运行结果

4.调试截图

5.遇到的问题及解决办法

控制趟数时多了i=3 应该改为i<3

三.个人总结

(1)通过这几周学习了函数和数组,并对数组进行了大致的复习

(2)难点:数组的排序,以及函数的调用

解决:上网查阅相关资料,通过中国mooc和ppt学习

四.(1)互评和学习进度

闫慧欣

李婧

袁于纯

(2)表格和折线图

 

posted @ 2018-12-21 21:43  眉眼如初ckx  阅读(277)  评论(8编辑  收藏  举报