一 . 把数组中偶数位置和基数位置的数相加起来
int arrAdd(int a[],int start,int end,int flag)
{
int i;
double sum=0;
//将起始位置之间的数相加
if(flag==0)
{
for(i=start;i<=end;i++)
sum+=a[i];
}
//将起始位置之间的基数相加
if(flag==1)
{
if(start%2!=0)
i=start;
else
i=start+1;
for(;i<=end;i+=2)
sum+=a[i];
}
//将起始位置之间的偶数相加
if(flag==2)
{
if(start%2==0)
i=start;
else
i=start+1;
for(;i<=end;i+=2)
sum+=a[i];
}
return sum;
}
int main()
{
int len,i=0;
cout<<"输入数组的长度:";
cin>>len;
int *a=new int[len];
cout<<"请输入元素:"<<endl;
for(i=0;i<len;i++)
{
cin>>a[i];
}
cout<<"你输入的元素为:"<<endl;
for(i=0;i<len;i++)
{
cout<<"a["<<i<<"]"<<"="<<a[i]<<endl;
}
cout<<endl;
int start,end;
cout<<"请输入你操作的元素的起始位置:";
cin>>start>>end;
cout<<endl<<"数组从"<<start<<"到"<<end<<"之间的数相加和为:"
<<arrAdd(a,start,end,1)<<endl;
return 0;
}
二 . 将指定范围内的数乘以一个常数
void Exop(int a[],const float num,int start,int end)
{
int i=start;
cout<<"结果为:";
for(;i<=end;i++)
{
a[i]*=num;
cout<<a[i]<<" ";
}
cout<<endl;
}
int main()
{
int len,i;
cout<<"输入数组的长度:";
cin>>len;
int *arr=new int[len];
cout<<"输入数据:";
for(i=0;i<len;i++)
{
cin>>arr[i];
}
cout<<endl;
const float num=5;
int start,end;
cout<<"请输入你操作的起始下标:";
cin>>start>>end;
cout<<endl;
Exop(arr,num,start,end);
return 0;
}