问题
单项选择题
有以下程序: #include <iostream> #include <cstdlib> using namespace std; int main() {int arraysize;int *array;cout<<"Please input the size of the array:";cin>>arraySiZe;array=new int[arraysize];if(array==NULL){ cout<<"allocate Error\n"; exit(1);}for(int i=0;i<arraysize;i++) array[i]=i*i;int j;cout<<"which element you want to check:";cin>>j;cout<<array[j]<<end1;return 0; } 执行程序输入:10<空格>5,则输出结果为( )。
A.allocate Error
B.1
C.0
D.25
答案
参考答案:D
解析: 程序中利用new()申请动态分配数组。利用for循环给数组array赋值。最后输出想要检查元素的值。程序输10,即数组array元素个数为10。程序输入5,即检查元素array[5]的值。由for循环的赋值运算可知array[5]的值为25,所以程序最后输出25。