最新C++笔试题目

合集下载

c程序设计试题及答案

c程序设计试题及答案

c程序设计试题及答案一、选择题(每题2分,共20分)1. 下列选项中,哪一个是C语言的标准输入输出库函数?A. printf()B. scanf()C. getchar()D. A和B答案:D2. 在C语言中,以下哪个关键字用于定义一个函数?A. intB. voidC. functionD. return答案:A3. 以下哪个语句用于结束C程序的执行?A. break;B. continue;C. exit();D. return;答案:C4. C语言中,哪个类型用于表示字符?A. charB. stringC. characterD. letter答案:A5. 在C语言中,以下哪个运算符用于判断两个值是否相等?A. ==B. !=C. <D. >答案:A6. 下列哪个选项是C语言中的逻辑运算符?A. &&B. ||C. +D. -答案:A7. 在C语言中,哪个关键字用于定义一个数组?A. arrayB. listC. vectorD. None of the above答案:D8. 下列哪个选项是C语言中的循环结构?A. ifB. whileC. switchD. case答案:B9. 在C语言中,哪个关键字用于声明一个变量为静态存储类别?A. staticB. autoC. registerD. extern答案:A10. 下列哪个选项是C语言中的位运算符?A. &B. |C. ^D. All of the above答案:D二、填空题(每空1分,共10分)1. 在C语言中,使用________关键字可以定义一个结构体。

答案:struct2. 一个C语言程序的执行从________函数开始。

答案:main3. 在C语言中,________运算符用于取反一个逻辑值。

答案:!4. 一个C语言数组的索引是从________开始的。

答案:05. 使用________函数可以在C语言中动态分配内存。

C笔试题及答案 产品经理笔试题及答案

C笔试题及答案 产品经理笔试题及答案

C笔试题及答案产品经理笔试题及答案C笔试题及答案篇1(1)算法的时间复杂度是指_______。

A)执行算法程序所需要的时间B)算法程序的长度C)算法执行过程中所需要的基本运算次数D)算法程序中的指令条数答案:C评析:所谓算法的时间复杂度,是指执行算法所需要的计算工作量。

(2)下列叙述中正确的是________。

A)线性表是线性结构 B)栈与队列是非线性结构C)线性链表是非线性结构 D)二叉树是线性结构答案:A评析:一般将数据结构分为两大类型:线性结构与非线性结构。

线性表、栈与队列、线性链表都是线性结构,而二叉树是非线性结构。

(3)下面关于完全二叉树的叙述中,错误的是_________。

A)除了最后一层外,每一层上的结点数均达到最大值B)可能缺少若干个左右叶子结点C)完全二叉树一般不是满二叉树D)具有结点的完全二叉树的深度为[log2n]+1答案:B评析:满二叉树指除最后一层外每一层上所有结点都有两个子结点的二叉树。

完全二叉树指除最后一层外,每一层上的结点数均达到最大值,在最后一层上只缺少右边的若干子结点(叶子结点)的二叉树。

(4)结构化程序设计主要强调的是_________。

A)程序的规模 B)程序的易读性C)程序的执行效率 D)程序的可移植性答案:B评析:结构化程序设计主要强调的是结构化程序清晰易读,可理解性好,程序员能够进行逐步求精、程序证明和测试,以保证程序的正确性。

(5)在软件生命周期中,能准确地确定软件系统必须做什么和必须具备哪些功能的阶段是________。

A)概要设计 B)详细设计 C)可行性分析 D)需求分析答案:D评析:需求分析是对待开发软件提出的需求进行分析并给出详细定义,即准确地确定软件系统的功能。

编写软件规格说明书及初步的用户手册,提交评审。

(6)数据流图用于抽象描述一个软件的逻辑模型,数据流图由一些特定的图符构成。

下列图符名标识的图符不属于数据流图合法图符的是_________。

100条经典C语言笔试题目(全)

100条经典C语言笔试题目(全)

100条经典C语言笔试题目1、请填写bool,float,指针变量与“零值”比较的if语句。

提示:这里“零值”可以是0,0.0,FALSE 或者“空指针”。

例如int变量n与“零值”比较的if语句为:if ( n == 0 )if ( n != 0 )以此类推。

(1)请写出 bool flag 与“零值”比较的 if 语句:【标准答案】if ( flag )if ( !flag )(2)请写出 float x 与“零值”比较的 if 语句:【标准答案】 const float EPSINON = 0.00001;if ((x >= - EPSINON) && (x <= EPSINON)不可将浮点变量用“==”或“!=”与数字比较,应该设法转化成“>=”或“<=”此类形式。

(3)请写出 char *p 与“零值”比较的 if 语句【标准答案】 if (p == NULL)if (p != NULL)2、以下为 Linux下的 32 位 C程序,请计算 sizeof 的值。

char str[] = “Hello” ;char *p = str ;int n = 10;请计算(1)sizeof (str ) =(2)sizeof ( p ) =(3)sizeof ( n ) =【标准答案】(1)6、(2)4、(3)4(4)void Func ( char str[100]) {……;} 请计算 sizeof( str ) = (5)void *p = malloc( 100 );请计算sizeof ( p ) =【标准答案】(4)4、(5)43、 long a=0x801010;a+5=?【标准答案】0x801010用二进制表示为:“1000 0000 0001 0000 0001 0000”,十进制的值为8392720,再加上5就是8392725。

4、用变量a给出下面的定义e) 一个有10个指针的数组,该指针是指向一个整型数的;f) 一个指向有10个整型数数组的指针 ;g) 一个指向函数的指针,该函数有一个整型参数并返回一个整型数;h) 一个有10个指针的数组,该指针指向一个函数,该函数有一个整型参数并返回一个整型数;【标准答案】e)int * a[10]; f)int (*a)[10]g)int (*a)(int); h) int (*a[10])(int)5、设有以下说明和定义:typedef union {long i; int k[5]; char c;} DATE;struct data { int cat; DATE cow; double dog;} too;DATE max;则语句 printf("%d",sizeof(struct date)+sizeof(max));的执行结果是:_____【标准答案】DATE是一个union, 变量公用空间. 里面最大的变量类型是int[5], 占用20个字节. 所以它的大小是20.data是一个struct, 每个变量分开占用空间. 依次为int4 + DATE20 + double8 = 32.所以结果是 20 + 32 = 52。

全国计算机等级考试c语言试题及答案

全国计算机等级考试c语言试题及答案

全国计算机等级考试c语言试题及答案一、选择题(每题2分,共20分)1. 下列关于C语言的描述中,错误的是:A. C语言是一种高级编程语言B. C语言可以直接在操作系统上运行C. C语言具有结构化的特点D. C语言具有丰富的库函数答案:B2. 在C语言中,用于定义数组的关键字是:A. structB. enumC. unionD. int答案:D3. 下列关于指针的描述中,正确的是:A. 指针可以存储函数的地址B. 指针不能存储变量的地址C. 指针不能存储数组的地址D. 指针不能存储指针的地址答案:A4. 在C语言中,用于定义结构体的关键字是:A. structB. unionC. enumD. typedef答案:A5. 下列关于循环的描述中,错误的是:A. for循环可以嵌套使用B. while循环不能嵌套使用C. do-while循环至少执行一次D. 循环语句可以没有循环体答案:B6. 在C语言中,用于定义函数的关键字是:A. structB. unionC. enumD. int答案:D7. 下列关于文件操作的描述中,错误的是:A. 文件指针是指向文件的指针B. 文件操作需要包含头文件stdio.hC. 文件操作只能使用二进制方式打开D. 文件操作可以使用"r"、"w"、"a"等模式答案:C8. 在C语言中,用于定义枚举的关键字是:A. structB. unionC. enumD. typedef答案:C9. 下列关于预处理指令的描述中,错误的是:A. #include用于包含头文件B. #define可以定义宏C. #ifdef可以用于条件编译D. #pragma可以用于编译器指令答案:C10. 在C语言中,用于定义联合的关键字是:A. structB. unionC. enumD. typedef答案:B二、填空题(每题2分,共20分)1. 在C语言中,表示逻辑“与”的运算符是______。

c语言笔试考试题及答案

c语言笔试考试题及答案

c语言笔试考试题及答案C语言笔试考试题及答案一、选择题(每题2分,共20分)1. 下列哪个选项是C语言中的关键字?A. intB. floatC. doubleD. string答案:A2. C语言中,int类型变量的默认初始值是多少?A. 0B. 1C. -1D. 随机值答案:A3. 以下哪个是正确的C语言函数声明?A. int function(int a, int b)B. void function(int a, int b)C. int function(int a, int b) {}D. int function(int a, int b) {return a + b;}答案:B4. 在C语言中,哪个运算符用于求两个数的余数?A. /B. %C. *D. -答案:B5. 下列哪个是C语言中正确的数组声明?A. int array[10];B. int array = 10;C. int array(10);D. int [10] array;答案:A6. C语言中,哪个语句用于结束程序的执行?A. break;B. continue;C. return;D. exit;答案:C7. 在C语言中,哪个函数用于计算两个数的和?A. sum(int a, int b)B. add(int a, int b)C. plus(int a, int b)D. None of the above答案:D8. 在C语言中,哪个关键字用于定义一个函数?A. functionB. defC. methodD. void答案:A9. 下列哪个选项是C语言中的控制流语句?A. ifB. switchC. caseD. All of the above答案:D10. 在C语言中,哪个语句用于实现循环?A. forB. whileC. do-whileD. All of the above答案:D二、填空题(每空2分,共20分)1. C语言中,____ 用于定义一个字符常量。

C笔试题目及答案c语言笔试题目及答案

C笔试题目及答案c语言笔试题目及答案

C笔试题目及答案c语言笔试题目及答案c笔试题目及答案:c语言笔试题目及答案c笔试题目汇总篇11.谋下面函数的返回值(谷歌)intfunc(x){intcountx=0;while(x){countx++;x=x&(x-1);}returncountx;}假定x=。

答案:8思路:将x转变为2十进制,看看所含的1的个数。

2.什么是“引用”?申明和使用“引用”要注意哪些问题?请问:提及就是某个目标变量的“别称”(alias),对应用领域的操作方式与对变量轻易操作方式效果完全相同。

言明一个提及的时候,切勿必须对其展开初始化。

提及声明完后,相等于目标局部变量存有两个名称,即为该目标原名称和提及名,无法再把该提及名做为其他局部变量的别称。

声明一个提及,不是崭新定义了一个变量,它只则表示该提及名就是目标局部变量的一个别称,它本身不是一种数据类型,因此提及本身不占到存储单元,系统也不给提及分配存储单元。

无法创建数组的提及。

3.将“引用”作为函数参数有哪些特点?(1)传达提及给函数与传达指针的效果就是一样的。

这时,被调函数的形参就沦为原来主调函数中的实参变量或对象的一个别称去采用,所以在被调函数中对形参变量的操作方式就是对其适当的目标对象(在主调函数中)的操作方式。

(2)使用引用传递函数的参数,在内存中并没有产生实参的副本,它是直接对实参操作;而使用一般变量传递函数的参数,当发生函数调用时,需要给形参分配存储单元,形参变量是实参变量的副本;如果传递的是对象,还将调用拷贝构造函数。

因此,当参数传递的数据较大时,用引用比用一般变量传递参数的效率和所占空间都好。

(3)采用指针做为函数的参数虽然也能够达至与采用提及的效果,但是,在被调函数中同样必须给形参分配存储单元,且须要重复使用"*指针局部变量"的形式展开运算,这很难产生错误且程序的写作性极差;另一方面,在主调函数的调用点处,必须用变量的地址做为实参。

c语言笔试考试题及答案

c语言笔试考试题及答案

c语言笔试考试题及答案C语言笔试考试题及答案一、选择题(每题2分,共20分)1. C语言中,以下哪个是合法的变量名?A. 2variableB. variable-nameC. variable_nameD. variable$name答案:C2. 下列哪个选项是C语言的关键字?A. defineB. intC. integerD. float答案:B3. 以下哪个语句不能通过编译?A. int a = 10;B. int b = 10.5;C. int c = 'a';D. int d = 1.0;答案:B4. C语言中,以下哪个函数用于计算两个数的和?A. pow()B. sqrt()C. sin()D. sum()答案:D(注意:sum()不是C语言标准库函数,这里假设它是一个自定义函数)5. 以下哪个选项是正确的C语言数组声明?A. int numbers[];B. int numbers[10] = {};C. int numbers = 10;D. int [10] numbers;答案:B6. 以下哪个是C语言中正确的字符串字面量?A. "Hello World"B. 'Hello World'C. "Hello\nWorld"D. "Hello\"World"答案:A7. 在C语言中,以下哪个是正确的函数声明?A. void myFunction();B. int myFunction;C. myFunction();D. int myFunction()答案:A8. 下列哪个选项不是C语言的标准输入输出库函数?A. printf()B. scanf()C. cout()D. getchar()答案:C9. 在C语言中,以下哪个是正确的逻辑运算符?A. &&B. ||C. ||D. ++答案:A10. 下列哪个选项是C语言的预处理指令?A. #includeB. defineC. ifD. else答案:A二、简答题(每题5分,共20分)1. 请简述C语言中数组和指针的区别。

浙江心理c证笔试题目

浙江心理c证笔试题目

浙江心理c证笔试题目C证心理辅导笔试题篇1单项选择题(共15分,每小题1分)( C )1、学校心理辅导的最终目标就是。

A.提高学生的心理素质B.帮助学生认识自我,悦纳自我C.推动学生人格的完善发展D.协助学生研发自身创造力( B )2、下列有关心理辅导的描述,判断错误的是。

A..它不是一种具有命令性的嘲弄B.它主要通过规范与劝阻,将价值观传授给学生C.它以他助—互助—自助为机制D.它是一种协助与服务( A )3、在所有个别辅导理论中,就是历史最古老、影响最深刻的一种理论流派。

A.精神分析理论B.行为主义理论C.人本主义理论D.认知主义理论( C )4、根据艾里克森的人生八阶段理论,小学生正处于。

A. 自主性对羞怯或疑虑B. 主动性与退缩内疚C. 刻苦坚忍对加官自卑D. 同一感对同一性纷乱( B )5、要了解学生的个性发展状况,应选用的测验是。

A. 瑞文测验B. 卡特尔16PFC. SCL-90D. 韦氏儿童智力测验( C )6、自我意识主要包括三种心理成分,分别是。

A.自我概念、自我体验、自我评价B.自我概念、自我评价、自我掌控C.自我认识、自我体验、自我控制D.自我认识、自我评价、自我控制( B )7、在弗洛伊德的人格结构理论中,占有核心地位的人格结构就是。

A.本我B.自我C.欲我D.超我( C )8、为了消除考试恐惧,学生在考试前引导自己:“我存有信心说读!我一定能够考过自己的水平”,这种表明属。

A.轻易表明B.间接表明C.自我暗示 D.反华表明体( B )9、根据心理困惑的轻重程度,多动症属于。

A.神经症B.轻度心理障碍C.心理轻微紊乱D.重度心理障碍( A )10、在职业指导中,有必要对学生进行________,使他们在毕业时,面对纷繁的职业门类和专业种类,面对众说纷纭的社会舆论,能够以正确的态度来选择自己的职业和专业。

A.职业观教育B.职业道德教育C.职业理想教育D.职业技术教育( D )11、下列家庭环境中,________是影响孩子心理健康的最重要、最深刻的因素。

c语言笔试题目

c语言笔试题目

c语言笔试题目
以下是一些C语言笔试题目:
1. 什么是C语言?C语言有哪些特点?
2. C语言程序的基本结构是什么?
3. 什么是数据类型?C语言中有哪些常见的数据类型?
4. 什么是变量?变量在C语言中的作用是什么?
5. C语言中的运算符有哪些?它们的优先级和结合性是如何的?
6. 写出C语言中常用的控制结构,如if语句、for循环、while循环等。

7. 什么是函数?函数在C语言中的作用是什么?如何定义和调用函数?
8. 什么是数组?数组在C语言中的作用是什么?如何定义和初始化数组?
9. 什么是指针?指针在C语言中的作用是什么?如何定义和初始化指针?
10. 什么是结构体?结构体在C语言中的作用是什么?如何定义和初始化结构体?
11. C语言中如何进行文件操作,如文件的打开、读写和关闭等?
12. C语言中的内存管理是如何进行的?什么是动态内存分配和释放?
13. C语言中的位运算有哪些?它们的作用是什么?
14. C语言中的预处理器指令有哪些?它们的作用是什么?
15. C语言中的错误处理机制是如何的?如何进行错误处理?
以上是一些常见的C语言笔试题目,希望对你有所帮助。

c语言程序设计比赛试题及答案

c语言程序设计比赛试题及答案

c语言程序设计比赛试题及答案一、选择题(每题2分,共20分)1. 下列哪个选项是C语言中的合法整数常量?A. 0x1AB. 01AC. 0b1010D. 1.23答案:A2. C语言中,哪个关键字用于定义一个函数?A. structB. intC. voidD. return答案:B3. 下列哪个选项是C语言中正确的注释方式?A. // 这是注释B. /* 这是注释 */C. //* 这是注释D. /* 这是注释答案:B4. C语言中,哪个运算符用于求两个数的和?A. +B. -C. *D. /答案:A5. 在C语言中,哪个关键字用于定义一个结构体?A. structB. unionC. enumD. typedef答案:A6. C语言中,哪个关键字用于定义一个枚举类型?A. structB. unionC. enumD. typedef答案:C7. 下列哪个选项是C语言中合法的变量名?A. 2variableB. variable2C. _variableD. variable$2答案:B8. 在C语言中,哪个关键字用于定义一个指针?A. intB. floatC. charD. *答案:D9. C语言中,哪个函数用于将字符串复制到另一个字符串?A. strcpyB. strcatC. strcmpD. strlen答案:A10. 在C语言中,哪个函数用于计算字符串的长度?A. strcpyB. strcatC. strcmpD. strlen答案:D二、填空题(每题2分,共20分)1. C语言中,用于定义一个整型数组的关键字是________。

答案:int2. C语言中,用于定义一个字符型数组的关键字是________。

答案:char3. C语言中,用于定义一个浮点型数组的关键字是________。

答案:float4. C语言中,用于定义一个双精度浮点型数组的关键字是________。

答案:double5. C语言中,用于定义一个字符串的关键字是________。

c语言笔试题及答案

c语言笔试题及答案

c语言笔试题及答案# C语言笔试题及答案## 一、选择题1. 题目:以下哪个是C语言的标准输入输出库函数? - A. `printf()`- B. `scanf()`- C. `cout`- D. `cin`答案:A、B2. 题目:C语言中,哪个关键字用于声明一个函数? - A. `int`- B. `void`- C. `return`- D. `function`答案:A3. 题目:以下哪个语句是正确的C语言语句?- A. `int a = 5;`- B. `int a = 5.5;`- C. `int a = "5";`- D. `int a = true;`答案:A## 二、简答题1. 题目:简述C语言中指针的概念及其用途。

答案:指针是一种变量,它存储了另一个变量的内存地址。

指针的主要用途包括动态内存分配、数组操作、函数参数传递等。

通过指针,可以间接访问和修改其他变量的值,实现数据共享和高效内存使用。

2. 题目:解释C语言中的递归函数。

答案:递归函数是指在函数内部调用自身的函数。

递归函数通常用于解决可以分解为相同问题的子问题的问题,如阶乘计算、斐波那契数列等。

递归函数需要有一个明确的结束条件,以避免无限递归。

## 三、编程题1. 题目:编写一个C语言程序,实现求两个整数的最大公约数。

```c#include <stdio.h>int gcd(int a, int b) {if (b == 0)return a;return gcd(b, a % b);}int main() {int num1, num2;printf("请输入两个整数:");scanf("%d %d", &num1, &num2);printf("最大公约数是:%d\n", gcd(num1, num2)); return 0;}```2. 题目:编写一个C语言程序,实现字符串的反转。

c语言笔试题目100及最佳答案

c语言笔试题目100及最佳答案

c语言笔试题目100及最佳答案1. 以下哪个关键字用于定义一个结构体?A. structB. unionC. enumD. typedef答案:A2. 在C语言中,以下哪种数据类型是用于存储字符的?A. intB. charC. floatD. double答案:B3. 以下哪个选项不是C语言中的控制语句?A. ifB. whileC. forD. switch答案:D4. 在C语言中,以下哪个运算符用于执行算术运算?A. %B. &&C. ==D. +答案:D5. 如何定义一个具有10个元素的整型数组?A. int array[10];B. int array(10);C. int array[10] = {0};D. int array = 10;答案:A6. 在C语言中,以下哪个函数用于将字符串转换为浮点数?A. atoiB. atofC. itoaD. sprintf答案:B7. 在C语言中,以下哪个函数用于计算数组中元素的数量?A. sizeofB. lengthC. countD. size答案:A8. 在C语言中,以下哪个关键字用于定义一个函数?A. functionB. defC. voidD. int答案:C9. 在C语言中,以下哪个关键字用于声明一个全局变量?A. externB. staticC. globalD. local答案:A10. 在C语言中,以下哪个函数用于打开一个文件?A. fopenB. openC. readD. write答案:A11. 在C语言中,以下哪个函数用于关闭一个文件?A. fcloseB. closeC. endD. finish答案:A12. 在C语言中,以下哪个函数用于读取一个字符?A. getcharB. getcC. fgetcD. scanf答案:A13. 在C语言中,以下哪个函数用于写入一个字符?A. putcharB. putcC. fputcD. printf答案:A14. 在C语言中,以下哪个函数用于格式化输出?A. printfB. sprintfC. fprintfD. all of the above答案:D15. 在C语言中,以下哪个函数用于格式化输入?A. scanfB. sscanfC. fscanfD. all of the above答案:D16. 在C语言中,以下哪个函数用于计算字符串的长度?A. strlenB. lengthC. sizeD. count答案:A17. 在C语言中,以下哪个函数用于连接两个字符串?A. strcatB. strncatC. strcpyD. strncpy答案:A18. 在C语言中,以下哪个函数用于复制一个字符串?A. strcatB. strncatC. strcpyD. strncpy答案:C19. 在C语言中,以下哪个函数用于比较两个字符串?A. strcmpB. strcpyC. strcatD. strncpy答案:A20. 在C语言中,以下哪个函数用于查找字符串中子串的位置?A. strstrB. strchrC. strrchrD. strcspn答案:A。

c c 笔试试题及答案

c c 笔试试题及答案

c c 笔试试题及答案1. 选择题(每小题2分,共40分)1) 下列哪个选项不是计算机科学的基本原理?A. 算法B. 数据结构C. 程序设计D. 物理学2) 在C语言中,下列哪个选项不属于逻辑运算符?A. &&B. ||C. !D. ==3) 哪个存储器层次结构中存取速度最快?A. 寄存器B. 缓存C. 主存D. 辅助存储器4) 在面向对象编程中,继承关系中的"父类"和"子类"分别对应什么?A. 接口、实现类B. 派生类、基类C. 子类、父类D. 父类、子类5) 下列哪个排序算法的时间复杂度最好?A. 冒泡排序B. 插入排序C. 堆排序D. 快速排序2. 编程题(共40分)题目:编写一个Python程序,它接受用户输入的一个数字n,并计算出n的阶乘。

```pythondef factorial(n):if n == 0 or n == 1:return 1else:return n * factorial(n-1)n = int(input("请输入一个数字:"))result = factorial(n)print("{}的阶乘是:{}".format(n, result))```3. 简答题(每小题10分,共20分)题目:简述什么是机器学习,并举例说明。

机器学习是一种利用计算机技术和统计方法来使计算机能够从数据中自动学习并改善性能的方法。

它通过训练模型来对未知数据进行预测和决策。

机器学习可以分为监督学习和无监督学习两种类型。

举例说明:假设我们要训练一个垃圾邮件过滤器。

我们可以使用监督学习算法,提供一些已标记为垃圾邮件和非垃圾邮件的样本数据作为训练集,然后让算法学习识别垃圾邮件和非垃圾邮件的特征。

之后,当我们将新的邮件输入到模型中时,模型可以自动进行分类,将其标记为垃圾邮件或非垃圾邮件。

这就是机器学习在实际问题中的应用之一。

c语言考试题及答案大一

c语言考试题及答案大一

c语言考试题及答案大一一、选择题(每题2分,共20分)1. C语言中,以下哪个关键字用于定义一个结构体?A. structB. unionC. enumD. typedef答案:A2. 下列哪个选项不是C语言中的运算符?A. %B. &&C. ::D. #答案:D3. 在C语言中,以下哪个函数用于将字符串复制到另一个字符串?A. strcpyB. strcatC. strcmpD. strlen答案:A4. 下列哪个选项不是C语言中的控制语句?A. ifB. switchC. forD. while答案:B5. 在C语言中,以下哪个关键字用于定义一个函数?A. functionB. defC. voidD. int答案:C6. C语言中,以下哪个选项是正确的数组声明?A. int arr[5] = {1,2,3};B. int arr[] = {1,2,3};C. int arr[5] = {1,2,3,4,5,6};D. int arr = {1,2,3};答案:B7. 在C语言中,以下哪个关键字用于定义一个指针?A. ptrB. refC. *D. &答案:C8. 下列哪个选项是C语言中正确的注释方式?A. /* This is a comment */B. // This is a commentC. # This is a commentD. //* This is a comment答案:A9. 在C语言中,以下哪个函数用于将一个整数转换为字符串?A. sprintfB. printfC. scanfD. atoi答案:A10. C语言中,以下哪个选项是正确的文件操作函数?A. fopenB. fcloseC. freopenD. All of the above答案:D二、填空题(每题2分,共20分)1. 在C语言中,使用________运算符可以进行取模操作。

c语言笔试题(答案)

c语言笔试题(答案)

c语言笔试题(答案)笔试题一、填空题(每个空4分,共28分)1)struct tagABC{char name[10];char sex;long sno;float score[4];}*pAbc;(四字节对齐)pAbc=NULL;那么,执行pAbc+=2;之后pAbc的值为(64 )2)如下代码,最终value的值是(8)int *p1,*p2;int value;p1=(int*)0×400;p2=(int*)0×408;value = p2-p1;3)如下代码,printf的结果为(2)#include〈stdio.h〉#include〈string.h〉void main(void){char acNew[20]= “\\0\0”;printf(“%d\n”,strlen(acNew));}4) 有如下程序段,运行该程序的输出结果是(33)main (){int y=3,x=3,z=1;printf(“%d%d\n”,(++x,y++),z+2);}5)设有:int a=1,b=2,c=3,d=4,m=2,n=2;执行(m=a>b)&&(n=c>d)后,n的值为(2)6)struct tagAAA{Unsigned char ucId:1;Unsigned char ucPara0:2;Unsigned char ucState:6;Unsigned char ucTail:4;Unsigned char ucAvail;Unsigned char unTail2:4;Unsigned long ulData;}AAA_S问:AAA_S在字节对齐分别为1,4情况下,占用的空间大小分别是多少?( 9)(12 )二、选择题(每题2分,共34分)1)若有说明int(*p)[3];以下叙述正确的是( D )A:p是指针数组B:(*p)[3]和*p[3]等价C:p是指向一维数组中任何一个元素的指针D:p是指向含有3个整型元素的一维数组的指针2)以下关于单元测试的描述,哪些是对的?(D)A:黑盒测试针对软件的功能,不考虑功能的实现细节;B:白盒测试针对源代码的测试,从程序功能的具体实现上找错;C:路径覆盖是黑盒测试的一种方法,编写测试用例使程序的每条语句都能走到;D:条件覆盖是百盒测试的一种方法, 编写测试用例使程序的每个判断的各种情况都能到3)以下可以用于任务间通信的有(ABCD)A:共享内存 B:信号量C:消息队列和管道 D:socket调用4)有关结构,以下哪些描述是对的?(BC)A:为了测试方便,尽量把一个结构的功能设计得多一些B:不同结构间的关系不要过于复杂C:结构中的各元素应代表同一事务的不同侧面,而不应把描述没有关系或关系很弱的不同事务的元素放到同一结构中D:结构中元素的布局与排列顺序可以随意设计5)关于强制类型转化,下面说法正确的是(ABCD)A:当目的结构的空间大于源结构的空间时,要重点关注内存访问超过源结构范围的情形,可能越界;B:当目的结构的空间小于源结构的空间时,要重点关注对目的结构赋值不能完全覆盖源结构范围的情形,可能遗漏;C:结构体之间的强制类型转换时,其成员字段的数据类型的差异也是要格外小心的; D:与结构体之间的强制类型转换相比,基本数据结构的强制类型转换更容易出现上面描述的情况,使用的时候,一定要慎之又慎;6)正确的使用assert,软件系统不会对人为原因造成的错误进行处理。

c语言笔试题目及答案

c语言笔试题目及答案

c语言笔试题目及答案一、选择题(每题2分,共10分)1. 下列哪个关键字用于定义一个结构体?A. structB. unionC. enumD. typedef答案:A2. C语言中,用于定义一个字符常量的是?A. 'a'B. "a"C. aD. 1答案:A3. 下列哪个选项是正确的C语言函数定义?A. int function();B. int function;C. int function int x;D. int function(int x)答案:D4. 以下哪个选项不是C语言中的运算符?A. %=B. &&C. ::D. ||答案:C5. 在C语言中,一个变量的声明应该放在?A. 函数内部B. 函数外部C. 函数内部或外部D. 只能放在函数内部答案:C二、填空题(每题2分,共10分)1. 在C语言中,____关键字用于声明一个外部变量。

答案:extern2. C语言中,用于定义一个指针的语法是____。

答案:*变量名3. 用于在C语言中声明一个函数的关键字是____。

答案:int4. 在C语言中,____运算符用于计算两个整数的差。

答案:-5. 用于在C语言中声明一个数组的语法是____。

答案:类型名数组名[数组大小]三、简答题(每题5分,共20分)1. 简述C语言中数组和指针的关系。

答案:在C语言中,数组名可以被看作是一个指向数组首元素的指针,数组的每个元素可以通过指针运算来访问。

2. 解释C语言中的递归函数是什么?答案:递归函数是指在函数定义中调用自身的函数,它通常用于解决可以分解为更小、相似问题的任务。

3. 什么是C语言中的预处理指令?答案:预处理指令是C语言编译过程中处理的特殊指令,它们不是C语言的一部分,但对编译过程有影响,如#include、#define等。

4. 描述C语言中如何实现文件的读写。

答案:在C语言中,可以使用fopen、fprintf、fscanf、fclose 等函数来实现文件的打开、写入、读取和关闭。

C1考驾照笔试题目及答案

C1考驾照笔试题目及答案

C1考驾照笔试题目及答案C1考驾照笔试题目及答案「篇一」1、道路养护车辆、工程作业车进行作业时,过往车辆和人员A、应当加速超越B、应当注意避让C、应当连续鸣号D、应各抢其道正确答案:B2、驾驶人在超车时,发现前方车辆正在超车,应A、紧跟其后,伺机超越B、加速强行超越C、连续鸣喇叭催前车让路D、停止超车,让前方车辆先超车正确答案:D3、车辆在高速公路上发生故障,依法采取必要的安全措施后,车上人员应当A、在车内不得下车B、到车后帮助指挥其他车辆让行C、迅速离开车辆并转移到右侧路肩上或应急车道内D、帮助将车推到路边正确答案:C4、使用伪造、变造机动车号牌、行驶证、驾驶证或者使用其他机动车号牌、行驶证的,由公安机关交通管理部门予以收缴,扣留该机动车,并处200元以上20xx元以下罚款,记分。

A、2B、3C、6D、12正确答案:D5、行车途中,仪表板上的“如图”灯亮时,表示A、车内温度过高B、发动机温度过低C、燃油温度过高D、发动机温度过高或冷却液不足正确答案:D1、图中标志的含义是A、慢行B、禁止慢行C、快行D、拥堵路段正确答案:A2、救助有害气体中毒伤员的急救措施是A、采取保暖措施B、将伤员移到有新鲜空气的地方C、进行人工呼吸D、进行胸外心脏按压正确答案:B3、被保险人与保险公司对赔偿有争议的,可以依法申请仲裁或向A、保监会投诉B、保险公司反映情况C、当地公安机关交通管理部门报告D、人民法院提起诉讼正确答案:D4、当驾驶车辆行经两侧有行人且有积水的路面时,应A、加速通过C、减速慢行D、连续鸣喇叭正确答案:C5、夜间道路环境对安全行车的主要影响是A、能见度低,不利于观察道路交通情况B、路面复杂多变C、驾驶人体力下降D、驾驶人易产生冲动、幻觉正确答案:A6、驾驶车辆上道路行驶前,应系好安全带,其主要目的是A、避免受到管理部门的处罚B、固定乘坐位置C、使后背紧靠背椅D、在车辆发生碰撞或紧急制动时,有效保护身体正确答案:D7、机动车在道路上临时停车时,应当,机动车驾驶人不得离车,上下人员或者装卸物品后,立即驶离。

c招聘试题及答案

c招聘试题及答案

c招聘试题及答案C招聘试题及答案1. 选择题- 1.1 以下哪个选项是C语言中的关键字?A. intB. stringC. varD. void答案:A- 1.2 C语言中,用于定义函数的关键字是什么?A. functionB. defineC. defD. int答案:D2. 填空题- 2.1 在C语言中,定义一个整型变量的正确语法是____。

答案:int variable_name;- 2.2 如果要声明一个指向整型变量的指针,正确的语法是____。

答案:int *pointer_name;3. 简答题- 3.1 请解释C语言中的数组和指针的区别。

答案:数组是一种数据结构,用于存储相同类型的多个元素,而指针是一个变量,它存储了另一个变量的内存地址。

数组名本身代表数组首元素的地址,而指针变量可以被赋值指向不同的地址。

- 3.2 描述C语言中如何实现函数的递归调用。

答案:递归调用是指函数在其定义中调用自身。

在C语言中,实现递归调用需要定义一个函数,该函数在其内部调用自身,并且有一个递归结束的条件,以避免无限递归。

4. 编程题- 4.1 编写一个C语言函数,计算并返回两个整数的和。

答案:```cint add(int a, int b) {return a + b;}```- 4.2 编写一个C语言程序,实现字符串的反转。

答案:```c#include <string.h>#include <stdio.h>void reverseString(char* str) {int length = strlen(str);for(int i = 0; i < length / 2; i++) {char temp = str[i];str[i] = str[length - i - 1];str[length - i - 1] = temp;}}int main() {char str[] = "Hello, World!";reverseString(str);printf("Reversed string: %s\n", str);return 0;}```5. 论述题- 5.1 讨论C语言中结构体和联合体的区别。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

C++笔试题目(不错的!!)1.实现双向链表删除一个节点P,在节点P后插入一个节点,写出这两个函数;答://假设线性表的双向链表存储结构typedef struct DulNode{struct DulNode *prior; //前驱指针ElemType data; //数据struct DulNode *next; //后继指针}DulNode,*DuLinkList;//删除操作Status ListDelete_DuL(DuLinkList &L,int i,ElemType &e){if(!(p=GetElemP_DuL(L,i))) //此处得到i位置的节点指针,如果有需要也得写出具体函数实现return ERROR;e=p->data;p->prior->next=p->next;p->next->prior=p->pror;free(p);return OK;}//插入操作Status ListInsert_DuL(DuLinkList &L,int i,ElemType &e){if(!(p=GetElemP_DuL(L,i)))return ERROR;if(!(s=(DuLinkList)malloc(sizeof(DuLNode))))return ERROR;s->data=e;s->prior=p->prior;p->prior->next=s;s->next=p;p->prior=s;return OK;}2.写一个函数,将其中的\t都转换成4个空格。

答:该函数命名为convert,参数的意义为:*strDest目的字符串,*strSrc源字符串,length源字符串的长度函数实现为:char* convert(char *strDest, const char *strSrc,int length){char * cp = strDest;int i=0;while(*strSrc && i<length) // 跳出条件{if (*strSrc==\t) //将\t转换成4个空格{for(int j=0;j<4;j++)*cp++= ;}else //否则直接拷贝*cp++=*strSrc;strSrc++;i++;}return strDest;}3.Windows程序的入口是哪里?写出Windows消息机制的流程。

答:Windows程序的入口是WinMain函数消息机制:系统将会维护一个或多个消息队列,所有产生的消息都会被放入或是插入队列中。

系统会在队列中取出每一条消息,根据消息的接收句柄而将该消息发送给拥有该窗口的程序的消息循环。

每一个运行的程序都有自己的消息循环,在循环中得到属于自己的消息并根据接收窗口的句柄调用相应的窗口过程。

而在没有消息时消息循环就将控制权交给系统。

4.如何定义和实现一个类的成员函数为回调函数?答:所谓的回调函数,就是预先在系统的对函数进行注册,让系统知道这个函数的存在,以后,当某个事件发生时,再调用这个函数对事件进行响应。

定义一个类的成员函数时在该函数前加CALLBACK即将其定义为回调函数,函数的实现和普通成员函数没有区别 5.C++里面是不是所有的动作都是main()引起的?如果不是,请举例。

答:不是,比如中断引起的中断处理不是直接由main()引起的,而是由外部事件引起的。

6.C++里面如何声明const void f(void)函数为C程序中的库函数?答:在该函数前添加extern “C”声明7.下列哪两个是等同的int b;A const int* a = &b;B const* int a = &b;C const int* const a = &b;D int const* const a = &b;答:各式表示的意思分别为:A const int* a = &b; //*a是const,但指针a可变B const* int a = &b; //a是const,但*a可变C const int* const a = &b; //a和*a都是const,常量和指针的值都不能改变D int const* const a = &b; //a和*a都是const,常量和指针的值都不能改变因此C,D两者是相同的。

总结个技巧:如果const位于星号的左侧,则const就是用来修饰指针所指向的变量,即指针指向为常量;如果const位于星号的右侧,const就是修饰指针本身,即指针本身是常量。

8. 内联函数在编译时是否做参数类型检查?答:做类型检查,因为内联函数就是在程序编译时,编译器将程序中出现的内联函数的调用表达式用内联函数的函数体来代替。

普天微软华为笔试c、c++笔试题公司笔试c、c++试题现在的公司招聘,都要笔试面试.如果你不是那种编程功底非常深厚的人,又不好好准备一番,在笔试面试中往往会处于被动局面.虽然有些笔试题是故意为难我们,有点钻牛角尖.但是很多笔试题面试题确实能够很好地看出我们的基础.在这里,我就略去那些钻牛角尖的题.我近半年的收集中选出10道有代表性的题目,难度基本上是逐渐加大.对数组,指针,数据结构,算法,字符串,文件操作等问题都有覆盖.主要以c语言的实现为主,也有c++的题.大家可以先做做这10道题,测试一下自己的水平.1. 下面这段代码的输出是多少(在32位机上).char *p;char *q[20];char *m[20][20];int (*n)[10];struct MyStruct{char dda;double dda1;int type ;};MyStruct k;printf("%d %d %d %d",sizeof(p),sizeof(q),sizeof(m),sizeof(n),sizeof(k));2.(1)char a[2][2][3]={{{1,6,3},{5,4,15}},{{3,5,33},{23,12,7}} };for(int i=0;i<12;i++)printf("%d ",_______);在空格处填上合适的语句,顺序打印出a中的数字(2)char **p, a[16][8];问:p=a是否会导致程序在以后出现问题?为什么?3.用递归方式,非递归方式写函数将一个字符串反转.函数原型如下:char *reverse(char *str);4.strcpy函数和memcpy函数有什么区别?它们各自使用时应该注意什么问题?5.写一个函数将一个链表逆序.一个单链表,不知道长度,写一个函数快速找到中间节点的位置.写一个函数找出一个单向链表的倒数第n个节点的指针.(把能想到的最好算法写出).6.用递归算法判断数组a[N]是否为一个递增数组。

7.有一个文件(名为a.txt)如下,每行有4项,第一项是他们的名次,写一个c程序,将五个人的名字打印出来.并按名次排序后将5行数据仍然保存到a.txt中.使文件按名次排列每行.2,07010188,0711,李镇豪,1,07010154,0421,陈亦良,3,07010194,0312,凌瑞松,4,07010209,0351,罗安祥,5,07010237,0961,黄世传,8.写一个函数,判断一个unsigned char 字符有几位是1.写一个函数判断计算机的字节存储顺序是升序(little-endian)还是降序(big-endian).9.微软的笔试题.Implement a string class in C++ with basic functionality like comparison, concatenation, input and output. Please also provide some test cases and using scenarios (sample code of using this class).Please do not use MFC, STL and other libraries in your implementation.10.有个数组a[100]存放了100个数,这100个数取自1-99,且只有两个相同的数,剩下的98个数不同,写一个搜索算法找出相同的那个数的值.(注意空间效率时间效率尽可能要低).这十道题还是能够看出自己的水平如何的.如果你能不假思索地做出这10道题,估计去国外大公司是没有问题了,呵呵.答案我在整理中,以后陆续发布.................下面有些题也不错,可以参考.1.下面的代码输出是什么,为什么?void foo(void){unsigned int a = 6;int b = -20;(a+b>6)?puts(">6"):puts("<=6");//puts为打印函数}输出>6.就是考察隐式转换.int型变量转化成unsigned int,b成了正数.2. b)运行下面的函数会有什么结果?为什么?void foo(void){char string[10],str1[10];int i;for(i=0;i<10;i++){str1[i] = a;}strcpy(string, str1);printf("%s",string);}首先搞清strcpy函数的实现方法,char * strcpy(char * strDest,const char * strSrc){if ((strDest==NULL)||(strSrc==NULL))throw "Invalid argument(s)";char * strDestCopy=strDest;while ((*strDest++=*strSrc++)!=\0);return strDestCopy;}由于str1末尾没有\0’结束标志,所以strcpy不知道拷贝到何时结束.printf函数,对于输出char* 类型,顺序打印字符串中的字符直到遇到空字符('\0')或已打印了由精度指定的字符数为止.下面是微软的两道笔试题....3. Implement a string class in C++ with basic functionality like comparison, concatenation, input and output. Please also provide some test cases and using scenarios (sample code of using this class).Please do not use MFC, STL and other libraries in your implementation.我的实现方案如下,这道题真地对c++的主要特性都进行了较好地考察.String.h:#ifndef STRING_H#define STRING_H#include <iostream>using namespace std;class String{public:String();String(int n,char c);String(const char* source);String(const String& s);//String& operator=(char* s);String& operator=(const String& s);~String();char& operator[](int i){return a[i];}const char& operator[](int i) const {return a[i];}//对常量的索引.String& operator+=(const String& s);int length();friend istream& operator>>(istream& is, String& s);//搞清为什么将>>设置为友元函数的原因. //friend bool operator< (const String& left,const String& right);friend bool operator> (const String& left, const String& right);//下面三个运算符都没必要设成友元函数,这里是为了简单.friend bool operator== (const String& left, const String& right);friend bool operator!= (const String& left, const String& right);private:char* a;int size;};#endifString.cpp:#include "String.h"#include <cstring>#include <cstdlib>String::String(){a = new char[1];a[0] = \0;size = 0;}String::String(int n,char c){a = new char[n + 1];memset(a,c,n);a[n] = \0;size = n;}String::String(const char* source){if(source == NULL){a = new char[1];a[0] = \0;size = 0;}else{ size = strlen(source);a = new char[size + 1];strcpy(a,source);}}String::String(const String& s){size = strlen(s.a);//可以访问私有变量.a = new char[size + 1];//if(a == NULL)strcpy(a,s.a);}String& String::operator=(const String& s){ if(this == &s)return *this;else{delete[] a;size = strlen(s.a);a = new char[size + 1];strcpy(a,s.a);return *this;}}String::~String(){delete[] a;//}String& String::operator+=(const String& s){ int j = strlen(a);int size = j + strlen(s.a);char* tmp = new char[size+1];strcpy(tmp,a);strcpy(tmp+j,s.a);delete[] a;a = tmp;return *this;}int String::length(){return strlen(a);}main.cpp:#include <iostream>#include "String.h"using namespace std;bool operator==(const String& left, const String& right) {int a = strcmp(left.a,right.a);if(a == 0)return true;elsereturn false;}bool operator!=(const String& left, const String& right) {return !(left == right);}ostream& operator<<(ostream& os,String& s){int length = s.length();for(int i = 0;i < length;i++)//os << s.a[i];这么不行,私有变量.os << s[i];return os;}String operator+(const String& a,const String& b){ String temp;temp = a;temp += b;return temp;}bool operator<(const String& left,const String& right){ int j = 0;while((left[j] != \0) && (right[j] != \0)){if(left[j] < right[j])return true;else{if(left[j] == right[j]){j++;continue;}elsereturn false;}}if((left[j] == \0) && (right[j] != \0))return true;elsereturn false;}bool operator>(const String& left, const String& right) { int a = strcmp(left.a,right.a);if(a > 0)return true;elsereturn false;}istream& operator>>(istream& is, String& s){delete[] s.a;s.a = new char[20];int m = 20;char c;int i = 0;while (is.get(c) && isspace(c));if (is) {do {s.a[i] = c;i++;/*if(i >= 20){cout << "Input too much characters!" << endl;exit(-1);}*/if(i == m - 1 ){s.a[i] = \0;char* b = new char[m];strcpy(b,s.a);m = m * 2;s.a = new char[m];strcpy(s.a,b);delete[] b;}}while (is.get(c) && !isspace(c));//如果读到空白,将其放回.if (is)is.unget();}s.size = i;s.a[i] = \0;return is;}int main(){String a = "abcd";String b = "www";//String c(6,b);这么写不对.String c(6,l);String d;String e = a;//abcdString f;cin >> f;//需要输入...String g;g = a + b;//abcdwwwif(a < b)cout << "a < b" << endl;elsecout << "a >= b" << endl;if(e == a)cout << "e == a" << endl;elsecout << "e != a" << endl;b += a;cout << a << endl;cout << b << endl;cout << c << endl;cout << d << endl;cout << e << endl;cout << f << endl;cout << g << endl;cout << g[0] << endl;return 0;}4. Implement a single-direction linked list sorting algorithm. Please first define the data structure of linked list and then implement the sorting algorithm.5.编写一个函数,返回两个字符串的最大公串!例如,“adbccadebbca”和“edabccadece”,返回“ccade”联想笔试题1.设计函数int atoi(char *s)。

相关文档
最新文档