科大讯飞笔试题目C++
2009讯飞软件开发笔试题目(C++)A卷
答案请写在答题纸上
第一部分 综合基础试题 共50分
1、(4分)用变量a给出下面的定义
a) 一个整型数;
b)一个指向整型数的指针;
c)一个指向指针的指针,它指向的指针是指向一个整型数;
d)一个有10个整型的数组;
e)一个有10个指针的数组,该指针是指向一个整型数;
f)一个指向有10个整型数数组的指针;
g)一个指向函数的指针,该函数有一个整型参数并返回一个整型数;
h)一个有10个指针的数组,该指针指向一个函数,该函数有一个整型参数并返回一个整型数
答案:
a)int a
b)int *a;
c)int **a;
d)int a[10];
e)int *a [10];
f) int a[10], *p=a;
g)int (*a)(int)
h) int( *a[10])(int)
2、(4分)请写出以下语句的输出结果:
Int i=43;
Int j=5;
Double f=25.45181;
a) printf(“i=%d,j=%d,f=%3.2f”,i,j,f);
b) printf(“i=%x,j=%06d,i/j=%d”,i,j,i/j);
答案:
A)i=43,j=5,f=25.45
(说明:本来应该输出最小3位有效数字,25.5,但是由于限定了2位小数,所以强制有2位小数,有效数字的个数就起不到强制作用了。如果是%3.1,则输出为25.5)
B)i=2b ,j=00005,i/j=8
(%x显示的是一个无符号的0x 16进制的整数,%06d输出的是6位数,不够6位数,前面补0,i/j两个整数相除,只取商的整数值)
3、(2分)请完成以下宏定义:
a)用预处理指令#define 声明一个常数,用以表明1年中有多少个秒(忽略闰年问题) b)写一个“标准”宏MIN,这个宏输入两个参数并返回较小的一个
答案:
a)#define seconds 365*24*60*60
b) #define MIN(a,b) ((a)<(b)?(a):(b))
扩展:MAX宏 #define MAX ((a)>(b)(a):(b))
ABS宏 #define ABS (((x)>0)?(x):(-(x)))
4、(6分)以下为32为windows下的c++程序,请计算:
a)
char str[]=”hello”;
char *p=str;
请计算:
sizeof(str)=
sizeof(p)=
strlen(p)=
答案:6,字符串数组以\0(空格为结尾,所以str数组空间大小为5+1)
4,
5,strlen函数区的字符指针str的长度,不包括空字符。
b)
void func(char str[100])
{
Void *p=malloc(100);
}
请计算:
sizeof(str)=101
sizeof (p)=4
c)
int a[3]={1,2,3};
int b=sizeof(a)/sizeof(a[0]);
请计算:
b=3
5、(2分) 设有定义:int n=0,*p=&n,**q=&p; 则以下选项中,正确的赋值语句是(d) a)p=1; b)*q=2; c)q=p; d)*p=5;
6、(2分)const关键字的用途?(至少说明两种)
答案:
(1)可以定义 const 常量
(2)const 可以修饰函数的参数、返回值,甚至函数的定义体。被const 修饰的东 西都受到强制保护,可以预防意外的变动,能提高程序的健壮性。
7、(2分)typedef的c语言中频繁用以声明一个已经存在的数据类型的同义词。也可以用以
预处理器做类似的事情。例如:
#define dps struct s*
Typedef struct s *tps;
以上两种情况的意图都是要定义dps和tps作为一个指向结构s指针。哪种方法更好一些呢?(如果有的话)为什么?
8、(8分) 以下是一组有关内存知识的问题,请仔细看题,回答:
Void GetMemory(char *p)
{
P=(char *)malloc(100);
}
Void Test(void)
{
Char *str=Null;
GetMemory(str);
Strcpy(str,”hello world”);
Printf(str);
}
请问运行Test函数会有什么样的结果?
a)_____________________________________
char *GetMemory(void)
{
Char p[]=”hello world”);
Return p;
}
Void Test(void)
{
Char *str=NULL;
Str=GetMemory();
Printf(str);
}
请问运行Test函数会有什么结果?
b)_______________________________________________
void GetMemory2(char **p,int num)
{
*p=(char *)malloc(num);
}
Void Test(void)
{
Char *str=NULL;
GetMemory(&str,100);
Strcpy(str,”hello”);
Printf(str);
}
请问运行Test函数会有什么结果?
c)__________________________________________________
void Test(void)
{
Char *str=(char *)malloc(100);
Strcpy(str,”hello”);
Free(str);
If(str!=NULL)
{
Strcpy(str,”world”);
Printf(str);
}
}
请问运行test函数会有什么样的结果?
9、(6分)请写出以下程序的输出结果:
Class A
{
Public:
A()
{ Printf(“A constructed.\n”);}
Virtual ~A()
{printf(“A deconstructed.\n”);}
Virtual void Fn()
{printf(“A fn called.\n”);}
};
Class B:public A
{
};
Class C:public B
{
Public: C() Public: B() {printf(“B constructed.\n”);} Virtual ~B() {printf(“B deconstructed.\n”);} Virtual void Fn() {printf(“B fn called.\n”);}
};
{printf(“C constructed.\n”);} Virtual ~C() {printf(“C deconstructed.\n”);} Virtual void Fn() {printf(“C fn called.\n”);}
Void main(int argc,char* grgv[])
{
If(pB!=NULL) pB->fn();
C * pC=static_cast<C*>(pA);
If(pC!=NULL)
pC->fn();
delete pA;
}
10.(2分)以下说法错误的是:()
A)指针和引用作为函数参数都可以改变实参
B)指针和引用都可以在定义后任意的改变指向
C)引用必须在创建的时候初始化,而指针则不需要
D)不能空引用,但是可以有空指针
11、(2分) 下列关于多态的描述,错误的是()
A)C++语言的多态性分为编译时的多态和运行时的多态性
B)编译时的多态性可以通过函数重载来实现
C)运行时的多态性可以通过模板和虚函数来实现
D)实现运行时多态性的机制称动态绑定
12、(2分) 运算符的重载形式有两种,重载为_____________和________________________
13、(2分) main主函数执行完毕后,是否可能会再执行一段代码?请说明理由?
14、(2分)C++中的空类,默认产生那些类成员函数?
A *pA=new B; If(pA!=NULL) pA->fn(); B *pB=static_cast<B*>(pA);
第二部分 概念简答 (共10分)
15、(4分)简述STL库的功能,并给出遍历一个包含一组整型数的vector的代码。
相关推荐:
- [专业资料]《蜜蜂之家》教学反思
- [专业资料]过去分词作定语和表语1
- [专业资料]苏州工业园区住房公积金贷款申请表
- [专业资料]保安管理制度及处罚条例细则
- [专业资料]2018年中国工程咨询市场发展现状调研及
- [专业资料]2015年电大本科《学前教育科研方法》期
- [专业资料]数字信号处理实验 matlab版 离散傅里叶
- [专业资料]“十三五”重点项目-虎杖白藜芦醇及功
- [专业资料]2015-2020年中国竹木工艺市场需求及投
- [专业资料]国际贸易理论与实务作业五:理论案例分
- [专业资料]财政部修订发布事业单位会计制度
- [专业资料]BCA蛋白浓度测定试剂盒(增强型)
- [专业资料]工程进度总计划横道图模板(通用版)
- [专业资料]七年级地理同步练习(天气与气候)
- [专业资料]X光安检机介绍火灾自动报警系统的组成
- [专业资料]衢州市人民政府办公室关于印发衢州市区
- [专业资料]经济全球化及其影响[1]
- [专业资料]质粒DNA限制性酶切图谱分析
- [专业资料]国家安全人民防线工作“六项”制度
- [专业资料]劳动力投入计划及保证措施
- 电子账册联网监管培训手册
- 人教版语文七年级上第1课《在山的那边
- 对我区担保行业发展现状的思考与建议
- 平面四边形网格自动生成方法研究
- 2016年党课学习心得体会范文
- 如何设置电脑定时关机
- 全球最美人妖排行榜新鲜出炉
- 社会实践调查报告及问卷
- Visual Basic习题集
- 《鱼我所欲也》课件2
- 浙江省会计从业资格考试试卷
- 全遥控数字音量控制的D 类功率放大器资
- 鞍钢宪法与后福特主义
- 电表的改装与校准实验报告(1)
- 2014年高考理科数学真题解析分类汇编:
- Windows 7 AIK 的使用
- 风电场全场停电事故应急处置方案
- 化工原理选填题题库(下)
- 关于产学研合作教育模式的学习与思考
- 西安先锋公馆项目前期定位报告




