问答题 使用VC6打开 下的源程序文件modi2.cpp。阅读下列函数说明和代码。函数func(int d[],mt n)的功能是将长度为num的数组d的每一个数字是奇数的扩大1倍,并存储到数组d中。
例如:1 2 3 4 5 6 7 8 9
返回:2 2 6 4 10 6 14 8 18
将func(int d[],int num)补充完整。
注意:请勿改动主函数。
#include <iostream.h>
void func(int d[],int num)
{
}
int main ()
{
int Data[]={1,2,3,4,5,6,7,8,9};
func(Data, 9);
for(int i=0;i<sizeof(Data)/sizeof(int); i++)
{
cout < < Data[i] < < " ";
}
cout < < endl;
return 0;
}
【正确答案】
【答案解析】for(int i=0;i<num;i++)
{
if(d[i]%2!=0)
d[i]=2*d[i];
}
答案考生文件夹 [解析] 函数func(int d[],int n)功能是将长度为num的数组d的每一个数字是奇数的扩大1倍,并存储到数组d中,因此可利用循环来查找该数组,如果该元素为奇数则变为原来的两倍。
(1)由审题分析可知,利用循环来逐个判断d[]中的元素,d[]中元素个数为num,因此循环变量从0变化至num。
(2)在循环内,用if判断该元素是不是奇数,即if(d[i]%2!=0),将满足条件的d[i]扩大一倍。