- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
上海交通大学2014-2015C期末考卷A卷
选择填空:(每题2分,共20分)
1. 已知各变量的类型说明如下:
int a = 0;
double x = 1.42;
char ch;
则以下不符合C++语言语法的表达式是
A、a += 0x123fd B、x = 12e-8 C、ch = “y” D、ch = ‘\0’
2.函数: void f(int i)
{
int j;
for(j=0; j20; j++)
i++;
}
当f执行完退出后,i的值为____ ______
A、 12 B、无定义 C、 40 D、 24
3. 取出无符号整型变量n的个位数的表达式是
A、n % 10 B、n / 10 C、n/10+’\0’ D、n%10+‘0’
4. 一个文件中的全局变量,如果不允许其他的文件引用,则需要在声明时加上 关键词。
A、auto B、register C、extern D、static
5.在循环单链表中,head指向头结点,设P为指向结点的指针,则判断P为尾结点的条件
是 。
A、P==NULL B、p-next==NULL C、p-next==head D、p==head
6. 关于抽象类,以下哪个说法是正确的? 。
A、有私有的成员函数 B、有虚成员函数
C、有纯虚成员函数 D、可以声明抽象类的对象
7.下面关于类模板的哪个说法是正确的?
A、是模板类的实例化 B、类模板的每个成员函数都是函数模板
C、类模板的每个成员函数都是模板函数 D、类模板一定含有虚函数
8.假定A为一个类,则执行 “A a[2], *p[4],b=4,c=b;”语句时共调用构造函数。 A、3 B、5 C、4 D、9
9. 对友元(friend)正确的描述是: 。
A、 友元关系是对称关系。
B、 友元声明只能出现在public部分。
C、 类的友元函数必须在类的作用域以外被定义。
D、 一个类的部分成员函数或者整个类都可以声明为另一个类的友元。
10. 在随机读取文件中,读指针和写指针可以利用函数来调节指向的位置,其中seekg(2)的含义为: 。
A、将写指针调节到文件倒数第2个字节 B、将写指针调节到文件第2个字节
C、将读指针调节到文件第2个字节 D、将读指针调节到文件倒数第2个字节
二、在每题右侧空白处写出程序段的运行结果:(每题3分,共18分)
1. #include iostream
#include cstring
using namespace std;
int main()
{ int *p; char *q;
p = new int(10);
q = new char[10]; strcpy(q, abcdef);
cout *p endl; cout q endl;
delete p; delete []q;
return 0;
}
2.
#include iostream
using namespace std;
int main()
{ int k;
int x[3][3]={9,8,7,6,5,4,3,2,1};
for (k = 0; k 3; ++k)
if (k%2)
cout x[k][k];
return 0;
}
3.
#include iostream
using namespace std;
template class T
T avg(T x[],int n);
int main()
{
int a[] = {3.5,6.7,2,5.2,9.2};
double b[] = {3.5,6.7,2,5.2,9.2};
cout average of A: avg(a,5) endl;
cout average of B: avg(b,5) endl;
return 0;
}
template class T
T avg(T x[],int n)
{ int i;
T maxv = x[0];
for(i=1;in;i++)
if (maxv x[i]) maxv = x[i];
return maxv;
}
文档评论(0)