return0;
}
四、简答题(每小题4分,共12分)
1.试分析字符串常量"abc\\e\tfg\101\102"由哪几个字符构成?
该字符串占用多少个字节?
若用cout<<"abc\\e\tfg\101\102";会看到的输出结果是什么?
2.若有如下定义:
structstype
{floaty;
shortintm;
charcode[3];
};
stypesdat;
试画出变量sdat的内存构造图(示意图),并指出该变量占用内存的字节数。
3.下面程序有错误:
#include
usingnamespacestd;
voidfun(intb[])
{for(inti=0;i<7;i++)
cout<<*(b++)<<"";//
(1)
cout<}
intmain()
{intb[7]={10,20,30,40,50,60,70};
for(inti=0;i<7;i++)
cout<<*(b++)<<"";//
(2)
cout<fun(b);
return0;
}
源程序中
(1)和
(2)之处写法一样,但编译时
(2)处出错而
(1)处正确,试指出原因,并将
(2)处改正。
五、程序设计题(每小题8分,共24分)
1.设计程序输出数列{An}的前36个数,输出时要求每行输出6个数。
数列有下列规律:
2.逆置是指将数组中的值按逆序重新存放。
例如:
数组原值是{4,7,3,1,5,6},逆置后数组变成{6,5,1,3,7,4}。
试设计一个将数组逆置的函数reverse,其形式参数有2个:
数组(该数组存放一组待逆置的数据)、数据个数。
在主函数中输入一组数据存放在数组中,然后调用函数reverse将数组逆置,最后在主函数中显示出逆置后的数组。
3.需要求2个不同的圆柱体的体积,设计一个面向对象的程序。
数据成员包括:
radius(半径),height(高);还可根据需要定义其它数据成员。
要求分别用成员函数实现以下功能:
(1)由键盘输入圆柱体的半径、高;
(2)计算圆柱体的体积;
(3)输出圆柱体的体积。
请编写程序。