今天课上老师给我们出了一个结对开发的题目,让我们学会进行一个人编程一个人监督和引导的开发模式。
题目是求一个数组子数组中最大的,并且输出该值,可以有正负0。
课堂上我们的思路是进行分组,1个数,两个数,到6个数的子数组和都求出来然后求最大值。但是由于在进行
循环实现数组数字个数的变化时没有做出来,所以课上没做出来。
中午我们采纳了一开始想到的把前面求到的和利用起来的方式,比如a1,a2,求和后,用其值求a1,a2,a3的和
下面是我们的源代码,不足之处还忘多多指正。
#include<stdio.h>
int main()
{
int a[6],b[6];
int i,m,n;
int j=0;
for(i=0;i<6;i++)
scanf("%d",&a[i]);
for(i=0;i<6;i++)
{
m=a[i];
n=a[i];
j=i;
while(j<6)
{
if(m<n)
{
m=n;
}
if(j<5)
{
j++;
n=a[j]+n;
}
else
j++;
}
b[i]=m;
}
m=b[0];
for(i=0;i<6;i++)
{
if(m<b[i])
m=b[i];
}
printf("%d
",m);
return 0;
}
遇到了错误比如对变量初值的设定,要用数组中的数,因为会有负数,不可以设零,还有小的格式问题,
数组输入时&符号的使用。
小组成员:王丹
祁子梁