设为首页 加入收藏

TOP

C++笔试题库之编程、问答题 200~300道(一)
2014-11-23 21:26:43 来源: 作者: 【 】 浏览:44
Tags:试题库 编程 答题 200 300

201下面的代码有什么问题?并请给出正确的写法。


void DoSomeThing(char* p)


{


char str[16];


int n;


assert(NULL != p);


sscanf(p, “%s%d”, str, n);


if (0 == strcmp(str, “something”))


{


}


}


A:


sscanf(p, “%s%d”, str, n); 这句该写成: sscanf(p, “%s%d”, str, &n); ————————————————————————–


202.下面代码有什么错误



Void test1()


{



char string[10];


char *str1=”0123456789″;


strcpy(string, str1);



}


数组越界



203.下面代码有什么问题



Void test2()



{



char string[10], str1[10];



for(i=0; i<10;i++)


{


str1[i] =’a';


}


strcpy(string, str1);


}


}


数组越界



204下面代码有什么问题 LUPA开源社区+j H2B F,c U



Void test3(char* str1)


{


char string[10];


if(strlen(str1)<=10)


{


strcpy(string, str1);


}


}


==数组越界


==strcpy拷贝的结束标志是查找字符串中的\0 因此如果字符串中没有遇到\0的话 会一直复制,直到遇到\0,上面的123都因此产生越界的情况


建议使用 strncpy 和 memcpy



205.写出运行结果:


{


char str[] = “world”; cout << sizeof(str) << “: “;


char *p = str; cout << sizeof(p) << “: “;


char i = 10; cout << sizeof(i) << “: “;


void *pp = malloc(10); cout << sizeof(p) << endl;


}


6:4:1:4



————————————————————————–


206.C和C++有什么不同


从机制上:c是面向过程的(但c也可以编写面向对象的程序);c++是面向对象的,提供了类。但是,c++编写面向对象的程序比c容易


从适用的方向:c适合要求代码体积小的,效率高的场合,如嵌入式;c++适合更上层的,复杂的; llinux核心大部分是c写的,因为它是系统软件,效率要求极高。


从名称上也可以看出,c++比c多了+,说明c++是c的超集;那为什么不叫c+而叫c++呢,是因为c++比


c来说扩充的东西太多了,所以就在c后面放上两个+;于是就成了c++


C语言是结构化编程语言,C++是面向对象编程语言。LUPA开源社区 } n*r2C/M8f


C++侧重于对象而不是过程,侧重于类的设计而不是逻辑的设计。



207在不用第三方参数的情况下,交换两个参数的值


#include


void main()


{


int i=60;


int j=50;


i=i+j;


j=i-j;


)


i=i-j;


printf(“i=%d\n”,i);


printf(“j=%d\n”,j);


}


方法二:


i^=j;


j^=i;


i^=j;


方法三:


// 用加减实现,而且不会溢出


a = a+b-(b=a)



208.下面的函数实现在一个固定的数上加上一个数,有什么错误,改正



int add_n(int n)


{


static int i=100;


i+=n;


return i;


}


答:


因为static使得i的值会保留上次的值。


去掉static就可了



209.union a {


int a_int1;


double a_double;


int a_int2;


};


typedef struct


{ a a1;


char y;


} b;



class c


{


double c_double;


b b1;


a a2;


};


输出cout<

答:


VC6环境下得出的结果是32


我(sun)在VC6.0+win2k下做过试验:


int-4


float-4


double-8


指针-4




210. unsigned short array[]={1,2,3,4,5,6,7};


int i = 3;


*(array + i) =


答:4



211. class A


{


virtual void func1();


void func2();


}


Class B: class A


{


void func1(){cout << “fun1 inclass B” << endl;}


virtual void func2(){cout << “fun2 inclass B” << endl;}


}


A, A中的func1和B中的func2都是虚函数.


B, A中的func1和B中的func2都不是虚函数.


C, A中的func2是虚函数.,B中的func1不是虚函数.


D, A中的func2不是虚函数,B中的func1是虚函数.


答:


A



212输出下面程序结果。


#include


class A


{


public:


virtual void print(void)


{


cout<<”A::print()”<

}


};



class B:public A


{


public:


virtual void print(void)


{


cout<<”B::print()”<


};


};


class C:public


{


public:


virtual void print(void)


{


cout<<”C::print()”<

}


};


void print(A a)


{


a.print();


}



void main(void)


{


A a, *pa,*pb,*pc;


pa=&a;


pb=&b;


pc=&c;



a.print();


b.print();


c.print();



a->print();


pb->print();


pc->print();



print(a);


print(b);


print(c);


}


A::print()


A::print()



B::print()


C::print()



A::print()



B::print()



C::print()



A::print()




A::print()



A::print()




213 C++语言是在___ C ______语言的基础上发展起来的。


214 C++语言的编译单位是扩展名为____ .cpp______的____程序______文件。


215. 行尾使用注释的开始标记符为____ //_____。


216 多行注释的开始标记符和结束标记符分别为_____ /*_____和___ */_______。


217. 用于输出表达式值的标准输出流对象是____ cout_____。


218 用于从键盘上为变量输入值的标准输入流对象是__ cin______。


219. 一个完整程序中必须有一个名为____ main____的函数。


220一个函数的函数体就是一条____复合_____语句。


221. 当执行cin语句时,从键盘上输入每个数据后必须接着输入一个___空白_____符,然后才能继续输入下一个数据。


222在C++程序中包含一个头文件或程序文件的预编译命令为____#include ______。


223. 程序中的预处理命令是指以___#___字符开头的命令。


224. 一条表达式语句必须以___分号___作为结束符。


225. 在#include命令中所包含的头文件,可以是系统定义的头文件,也可以是___用户(或编程者_____定义的头文件。


226. 使用#include命令可以包含一个头文件,也可以包含一个__程序____文件。


227.一个函数定义由__函数头______和__函数体_____两部分组成。


228.若一个函数的定义处于调用它的函数之前,则在程序开始可以省去该函数的__原型(或声明)____语句。


229.C++头文件和源程序文件的扩展名分别为__.h ___和___.cpp ___。


230.程序文件的编译错误分为____警告(warning)____和____致命(error) ____

首页 上一页 1 2 3 下一页 尾页 1/3/3
】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
分享到: 
上一篇软件测试需求的分析方法 下一篇智力面试题集

评论

帐  号: 密码: (新用户注册)
验 证 码:
表  情:
内  容: