第二次作业

作业要求:https://edu.cnblogs.com/campus/hljkj/Cprogramming_2018Autumn_CST2018_4

/homework/2502

 

 

 

找两个数中最大者

 

int max(int a,int b)

{

  int _max=a;

  if(b>a)

  {

    _max=b;

  }

  return _max;

}

 

 

  1. 解题思路

(1)文字描述

1、根据题意定义代码

2、定义-max = a

3、b>a,则 -max  = b

4、返回-max

(2)流程图

 

 

运行截图

 

调试过程

 

 

 

 

 

 

符合题意,结束调试

  1. 遇到的问题:无

 

 

 

 

 

 

 求一组数中的最大值和次最大值

#include<stdio.h>

 

int main(void)

{

int max = 0, cmax = 0;

int a[10];

int i;

 

for(i = 0;i < 10;i++)

{

scanf("%d",&a[i]);

}

 

max = a[0];

for(i = 0;i < 10;i++)

{

if(a[i] > max)

max = a[i];

}

 

cmax = a[0];

for(i = 0;i < 10;i++)

{

if(a[i] > cmax && a[i] != max)

cmax = a[i];

}

 

printf("max=%d,cmax=%d", max, cmax);

 

system("pause");

}

 

 

文字描述

1、定义max = 0, cmax = 0   a[10]  i

2、输入数组内的数

3、假设a[0]是最大值,赋值给max

4、在数组中寻找是否有比max大的数,有则替换,找到最大值

5、假设a[0]是次大值,赋值给cmax

6、在数组中寻找是否有比cmax大且不与max相等的数,有有则替换,找到次大值

 流程图

 

 

 

 

遇到的问题

 

 

最大值和次大值无法改变。

解决方法:将max =a[0]cmax = a[0]移出循环

 

调试过程

 

 

 

 

最后依然等于5,无法改变

max =a[0]cmax = a[0]移出循环后

 

 

 

 

程序成功

 

 

查找整数 

#include <stdio.h>

main()

{

int i, n;

int a[20];

int j, num = 0;

 

scanf("%d%d", &i, &n);

for(j = 0;j < i;j++)

{

scanf("%d",&a[j]);

}

 

for(j = 0;j < i;j++)

{

if(n == a[j])

{

break;

}

num++;

}

 

if(num == i)

{

  printf("Not Found");

  return 0;

}

 

printf("%d",num);

system("pause");

 }

 

文字描述

1、定义i,a[20],j num = 0

2、输入i n

3、输入数组a[20]

4、a[20]开始查找与n相同的的数,找到则跳出循环

5、判断num是否与i相等 是则没有找到该数输出Not Found

6、输出num

 流程图

 

 

 

错误提示及解决方法

 

 

问题  会多输出一个5,如图:

 

 

原因,if(num == i)循环中没有结束程序的语句,导致下一个输出也输出了出来

解决方法,在循环中加入return 0

调试过程

找的到的情况:

 

 

 

 

找不到的情况:

 

 

 

 

 

个人总结:

1

1、在课上我们学习了数组及调用函数,这部分内容我都已经掌握,但有时还会犯迷糊,需要强加锻炼

2、在课外我学习了出入栈,虽然还不太懂,还需继续学习

2

难点:我认为数组的运用和确定全局变量比较难。

对于数组,我经常对于数组中的元素对应什么数值感到困惑,而且在更改数值时常发生混乱,例如作业数组2中的7-4选择法排序,我在跟改数值时改了前面没有改后面。

对于函数的调用的话,定义全局变量是我最不懂的地方,我常常不知道那个是全局变量

解决方法:看书,上网搜资料,对于数组的运用我问了我们宿舍的人,函数的调用我问了老师。

 

互评和学习进度

 点评:

1.张学健同学

2.周文豪同学

3.韩佳勒同学

 

 表格

 

代码行数

代码时间/min

博客字数

博客时间/min

第十二周

1500

360

1500

420

第十三周

1500

420

0

0

第十四周

1400

360

0

0

第十五周

1600

500

800

240

 

折现图

 

 

 

posted on 2018-12-18 19:30  danyunxx  阅读(151)  评论(8编辑  收藏  举报

导航