编写一个 C++ 程序,实现一个功能,即将数组中的每个元素值翻倍。程序应定义一个函数 doubleArray
,该函数接收一个整数数组的指针和数组的大小,然后将数组中的每个元素都翻倍。
代码
#include <iostream>void doubleArray(int* arr,int size){for (int i=0;i<size;i++){arr[i]*=2;}
}int main(){int oriArray[]={1,2,3,4,5};//原始数组 int len=sizeof(oriArray)/sizeof(oriArray[0]);doubleArray(oriArray,len);//打印 for (int i = 0; i < len; ++i) {std::cout << oriArray[i] << " ";}}
优化
应该考虑传入的数组为空的情况。处理这种情况可以增加代码的健壮性,确保即使在边界条件或异常情况下,程序也能正确运行而不会引发运行时错误。
#include <iostream>void doubleArray(int* arr,int size){if (arr==NULL || size==0){std::cerr<<"输入空数组!"<<std::endl;return;} for (int i=0;i<size;i++){arr[i]*=2;}
}int main(){int oriArray[]={};//原始数组 int len=sizeof(oriArray)/sizeof(oriArray[0]);if (len==0){std::cerr<<"输入空数组!"<<std::endl;return 1;}doubleArray(oriArray,len);//打印 for (int i = 0; i < len; ++i) {std::cout << oriArray[i] << " ";}}
int oriArray[]={1,2,3,4,5};//原始数组