基础部分和C语言程序设计(考试时间120分共9页

合集下载

2020-2021大学《C语言程序设计》课程考试试卷(含答案)

2020-2021大学《C语言程序设计》课程考试试卷(含答案)

某大学《C语言程序设计》课程考试试卷适用专业:考试日期:年月日考试时间:120分钟考试形式:闭卷试卷分数:100分一、填空题(每空1分,共25分)1、变量名和指针作函数参数时,变量名传递的是,指针传递的是。

2、表达式!!5的值是______。

3、printf("%xn", (0x19 <<1) & 0x17);的输出结果是______。

4、只能被本文件中的其它函数所调用的函数称为,在定义此类函数时,在函数名和函数类型前应加关键字。

能被其他文件中的函数所调用的函数称为,在定义此类函数时,一般应在该函数名和函数类型前面加上关键字。

5、下列程序段的输出结果是_____。

char *st[ ]={"abcd","efgh","ijkl","mnop"};printf("%s", *(st+1)+1);6、表示“x≥y≥z”的C表达式是_______。

7、执行下列程序段,输出结果,。

#define f(a, b, x) a*x+bprintf("%d, %dn", f(3,2,1), f(6, 5, f(3, 2, 1)));8、若#define PRICE 30,则PRICE称为。

9、在C 语言程序中,在函数内部定义的变量称为______。

10、若变量c为char类型,则能正确判断出c为小写字母的表达式是。

11、执行putchar(getchar( ));语句时,当通过键盘输入字符A时,则屏幕上输出。

12、C语言中的三种基本程序结构是、和。

13、如果X = 3;Y = 5; Y += X + 8; ,则Y = 。

14、如果i = 3;j = 5; j = i + +; ,则j = , i = 。

15、如果char ch[][4] = {“abcd”,“efgh”,“ijklm”,“nopq”}; ,则*((ch+2)+2) = ,*(ch[1]+2) = , *(ch+1) 代表元素的地址。

《C语言程序设计》考试大纲

《C语言程序设计》考试大纲

《C语言程序设计》考试大纲Ⅰ考试性质普通高等学校本科插班生招生考试是由专科毕业生参加的选拔性考试。

高等学校根据考生的成绩,按已确定的招生计划,德、智、体全面衡量,择优录取。

因此,本科插班生考试应有较高的信度、效度、必要的区分度和适当的难度。

本大纲适用于所有需要参加《C语言程序设计》考试的各专业考生。

Ⅱ考试内容总体要求:考生应按本大纲的要求了解或理解“C语言程序设计”中的数据类型、运算符与表达式、顺序结构、选择结构、循环控制、数组、函数、指针、预处理命令、结构体与共用体、文件的基本概念。

熟练掌握程序设计的基本方法和C语言本身的语法、语句和使用方法。

掌握一般问题的分析思路、数据存储结构表达及建立在存储结构之上的程序设计方法,具备初步运用C语言解决问题的程序设计能力;能熟练地阅读、理解和编制简单的C程序;具备进一步学习计算机各专业后续课程的能力和基础。

一、数据类型、运算符与表达式⒈考试内容⑴关键字与标识符的概念:关键字的含义,标识符的定义,常量和变量的分类。

⑵数据类型:数据类型的含义、特点,不同类型常量的表达,不同类型变量的定义、赋初值方法。

⑶运算符:各类运算符的含义、优先级,各类表达式的表示方法、运算特点、值的类型和计算方法,各类公式的表达式描述和各类表达式的混合运算。

⒉考试要求⑴理解关键字与标识符的概念、应用特点,理解数据类型的含义和常量、变量的分类。

⑵掌握各数据类型的含义、特点,不同类型常量的表达,不同类型变量的定义和赋初值方法。

⑶熟练掌握各类运算符的含义、优先级,各类表达式的表示方法、运算特点、值的类型和计算方法。

能够进行各类公式的表达式描述和各类表达式的混合运算。

二、顺序结构程序设计⒈考试内容⑴输入输出:常用的输入输出函数,基本的输入输出格式。

⑵赋值语句:赋值语句功能和表达方法。

⑶顺序程序设计:编写顺序结构语句及程序。

⒉考试要求⑴了解数据输入输出的概念以及在C语言中的实现方法。

⑵掌握赋值语句表达方法;掌握两组输入输出函数的格式、表达方式和使用功能、特点。

2018年全国计算机等级考试二级C语言真题及答案7

2018年全国计算机等级考试二级C语言真题及答案7

2018 年全国计算机等级考试笔试试卷及答案二级公共基础知识和 C 语言程序设计(考试时间120 分钟,满分100 分)一、选择题(( 1) -( 10)每小题 2 分,( 11) -(50)每小题 1 分,共 60 分)( 1)下列选项中不符合良好程序设计风格的是()。

A )源程序要文档化B)数据说明的次序要规范化C)避免滥用 goto 语句D)模块设计要保证高耦合、高内聚( 2)从工程管理角度,软件设计一般分为两步完成,它们是()。

A )概要设计与详细设计B)数据设计与接口设计C)软件结构设计与数据设计D)过程设计与数据设计( 3)下列选项中不属于软件生命周期开发阶段任务的是()。

A)软件测试 B )概要设计 C)软件维护D)详细设计( 4)在数据库系统中,用户所见的数据模式为()。

A )概念模式 B )外模式 C)内模式D)物理模式( 5)数据库设计的 4 个阶段是:需求分析、概念设计、逻辑设计和()。

A )编码设计B )测试阶段C)运行阶段 D )物理设计( 6)设有如下 3 个关系表下列操作中正确的是()。

A )T=R ∩ S B)T=R ∪ SC)T=R ×S D )T=R/S( 7)下列叙述中正确的是()。

A)一个算法的空间复杂度大,则其时间复杂度也必定大B)一个算法的空间复杂度大,则其时间复杂度必定小C)一个算法的时间复杂度大,则其空间复杂度必定小D)上述三种说法都不对( 8)在长度为64 的有序线性表中进行顺序查找,最坏情况下需要比较的次数为()。

A )63B) 64 C ) 6 D ) 7( 9)数据库技术的根本目标是要解决数据的()。

A )存储问题B)共享问题C)安全问题D)保护问题( 10)对下列二叉树进行中序遍历的结果是()。

A) ACBDFEG B ) ACBDFGEC) ABDCGEF D ) FCADBEG(11)下列叙述中错误的是()。

A)一个 C 语言程序只能实现一种算法B) C 程序可以由多个程序文件组成C) C 程序可以由一个或多个函数组成D)一个 C 函数可以单独作为一个 C 程序文件存在(12)下列叙述中正确的是()。

C语言程序设计试题及答案

C语言程序设计试题及答案

《C语言程序设计》(卷)考核班级学生数印数考核方式闭卷考核时间120 分钟(本试卷包括第一卷和第二卷,答卷时间总共120分钟)第一卷第一部分:基础知识(20项,共40分)1.一个C语言程序是由()组成的。

A.主程序B.子程序C.函数D.过程2.转换说明符%x的输出形式是()。

A.十进制B.八进制C.十六进制D.二进制3.若a、b均为int型变量,且a=100,则关于循环语句for(b=100;a!=b;++a,++b) printf ( “------------“) ;的正确说法是()。

A.循环体只执行一次B.死循环C.循环体一次也不执行D.输出-----------4.若x、y、z均为int 型变量,则执行下列语句后的z值为()。

x=1; y=2; z=3; z=(x>y)?z :y ; z = (z<y)?z:x;A.1 B.4 C.2 D.35.下面标识符中,合法的用户标识符为()。

A.P#Ad B.12a C.char D._int6.‘A’+ 3 的结果是()。

A.’A’B.’D’的ASCⅡ码C.65 D.37.语句char str[20];说明str是一个字符串,最多能表示()。

A.20个字符B.19个字符C.18个字符D.21个字符8.将int 型变量n转换成float型变量的方法是()。

A.float n B.(float)n C.float(n) D.21个字符9.以下不正确的描述是()。

A.使用while和do-while循环时,循环变量初始化的操作应在循环语句之前完成B.while循环是先判断表达式后执行循环体语句C.do-while和for循环均是先执行循环体语句,后判断表达式D.for、while、do-while循环中的循环体均可以由空语句构成10.在循环中使用break 语句的功能是()。

A.使程序的执行跳出break所在的那一重循环B.使程序执行结束C.跳出包含此break语句的所有循环D.终止本次循环,继续下次循环11.下面是一个初始化指针的语句:int *px = &a;其中指针变量的名字应该是()。

计算机科学与技术专业《C语言程序设计》科目考试大纲

计算机科学与技术专业《C语言程序设计》科目考试大纲

计算机科学与技术专业《C语言程序设计》科目考试大纲一、课程性质与考试基本要求《C语言程序设计》课程是计算机专业的专业基础课程。

这门课程的主要特点是实践性强,不仅要学习基本理论知识,更要注重上机实践,通过上机实践验证程序的正确性,掌握和巩固算法的设计知识。

设立本门课程的目的是通过学习C语言,使学生学会用计算机语言编程序解决实际问题。

通过本课程的学习,使学生了解算法的基本概念,会根据算法编制相应的程序,并初步掌握软件开发的基本技巧,同时也为后继课程的学习打下坚实的基础。

提高学生分析和解决问题的能力。

二、考试方式与试题类型(含各题型分数)1 .考试方式:闭卷、笔试。

2 .试卷结构:考试题型为单项选择题(70分)、读程序写结果(30分)、程序填空(20分)、编程题(30分)。

3 .试卷分数:试卷满分150分。

4 .考试时间:120分钟。

三、课程考试内容及要求第1部分程序设计和C语言本章重点:C语言的结构与上机的环境、上机步骤。

考试内容:程序的构成要素:main函数,其他的函数等。

源程序的书写格式。

C语言的风格。

C语言出现的历史背景。

C语言的特点。

简单的C程序介绍。

C程序的上机步骤。

考核要求:(1)了解C语言的背景。

(2)理解C语言程序的结构,C语言程序设计的风格。

(3)应用C程序的上机环境、步骤。

第2部分顺序程序设计本章重点:常用数据类型、常用运算符、数学公式转化为C语言表达式的基本能力、数据的输入输出,顺序结构程序设计。

主要内容:C的数据类型(基本类型、构造类型、指针类型、空类型)及定义变量的方法;C运算符的种类、运算优先级和结合性;不同类型数据间的转换与运算;数据的输入与输出、输入输出函数的调用:常用输入输出函数:scanf›Printf、getchar、PUtChar、gets、puts等。

考核要求:(1)了解基本类型及其常量的表示法。

(2)理解变量的定义及初始化方法,运算符与表达式的概念,C语言的自动类型转换和强制类型转、赋值的概念。

计算机基础(含程序设计)考试大纲

计算机基础(含程序设计)考试大纲

计算机基础(含程序设计)考试大纲计算机基础考试内容包含计算机基础、简单程序设计,其中程序设计试题在C、VFP程序设计语言中任选一种。

【C程序设计语言】(一)C程序设计语言的结构1.程序的构成,main函数和其它函数。

2.头文件、数据说明、函数的开始和结束标志。

3.源程序的书写格式。

4.C程序设计语言的风格。

(二)数据类型及其运算1.C程序设计语言的数据类型(基本类型、构造类型、指针类型、空类型)及其定义方法。

2.C程序设计语言运算符的种类、运算优先级、结合性。

3.不同类型数据间的转换与运算。

4.C程序设计语言表达式类型(赋值表达式、算术表达式、关系表达式、逻辑表达式、条件表达式、逗号表达式)和求值规则。

(三)基本语句1.表达式语句,空语句,复合语句。

2.数据的输入与输出,输入输出函数的调用。

3.复合语句。

4.go to 语句和语句标号的使用。

(四)选择结构程序设计1.有if语句实现选择结构。

2.用switch语句实现多分支选择结构。

3.选择结构的嵌套。

(五)循环结构程序设计1.for 循环结构。

2.while和do while循环结构。

3.continue语句、break语句。

4.循环的嵌套。

(六)数组的定义和引用1.一维数组和多维数组的定义、初始化和引用。

2.字符串与字符数组。

(七)函数1.库函数的正确调用。

2.函数的定义方法。

3.函数的类型和返回值。

4.形式参数与实在参数,参数值的传递。

5.函数的正确调用,嵌套调用,递归调用。

6.局部变量和全局变量。

7.变量的存储类别(自动、静态、寄存器、外部),变量的作用域和生存期。

8.内部函数与外部函数。

(八)编译预处理1.宏定义:不带参数的宏定义;带参数的宏定义。

2.“文件包含”处理。

(九)指针1.指针与指针变量的概念,指针与地址运算符。

2.变量、数组、字符串、函数、结构体的指针以及指向变量、数组、字符串、函数、结构体的指针变量。

通过指针引用以上各类型数据。

计算机应用技术专升本考试试题精选全文

计算机应用技术专升本考试试题精选全文

精选全文完整版可编辑修改计算机应用技术专升本考试试题一、考试对象:计算机应用技术、计算机软件2个专业的专科学生二、考核内容:笔试(闭卷)三、考试时量:120分钟四、卷面分数:总分100分(其中C语言部分40分,数据结构部分60分)五、试卷结构:《C语言程序设计》部分(40分)1、单项选择题(4小题,每小题1分,共4分)2、阅读程序,写出程序运行结果(3小题,每小题4分,共12分)3、程序填空(5空,每空2分,共10分)4、程序设计题(2个题,共14分)《数据结构》部分(60分)1、单项选择题(10小题,每小题2分,共20分)2、判断题(1小题,每小题1分,共10分)2、简答题(4小题,每小题6分,共24分)3、算法填空题(6空,每空3分,共18分)5、算法设计题(2小题,基础题1个8分,综合题1个10分,共18分)六、参考教材:[1] 严蔚敏吴伟民编著《数据结构(C语言版)》清华大学出版社[2] 谭浩强编著《C 语言程序设计(第二版)》清华大学出版社七、考核内容第一部分 C语言程序设计(共40分)1、C语言概念(2分)C语言的历史(识记)现状和特点(识记)C语言的基本结构(识记)2、基本数据类型和表达式(4分)C语言的基本数据类型、常量和变量、符号常量、变量的初始化、表达式和运算符,并能够运用进行数据处理(理解)3、简单的C程序设计(2分)C语句概述,掌握赋值语句、数据输出,数据输入,逻辑运算和条件控制,关系运算符和关系表达式,逻辑运算符和逻辑表达式,IF语句,SWITCH语句(理解,运用)4、循环语句(6分)循环结构程序设计概念,WHILE语句、DO-WHILE语句、FOR语句、BREAK 语句和CONTINUE 语句,编程实现运用双重循环的嵌套解决问题。

(理解,运用)5、数组(6分)一维数组、二维数组、字符数组和字符串的基本概念和典型算法。

(理解,运用)6、函数(10分)函数的定义,掌握函数的一般调用、函数的嵌套调用和函数的递归调用,函数参数的作用、变量的作用域和编译预处理。

2022年秋《c语言编程技术》正考复习资料

2022年秋《c语言编程技术》正考复习资料

1.基础知识:完全理解C语言程序设计的基本概念,比如常量、变量、数据类型、表达式、运算符、循环结构、条件判断,熟练掌握C语言程序
设计的基本语法,掌握C语言的结构、函数式编程、指针和静态存储类型。

2.数据结构:深入理解C语言中的数据结构,熟练运用线性表、栈、
队列和字符串,掌握算法的基本概念,如排序、查找、图等,熟悉基本数
据结构的实现和应用。

3.程序设计:掌握C语言程序设计的基本设计思想,学习算法设计,
能够编写程序,分析问题,设计算法。

能够分析和解决真实问题,并能够
用C语言编写程序求解问题。

4. 标准库函数:要能熟练使用C语言标准库函数,如printf、
scanf等函数,能充分利用C语言提供的标准库函数,熟练掌握C语言提
供的文件访问和操作函数。

5.其他:学习面向对象编程,掌握面向对象的特性,熟悉类的设计和
继承等概念,熟悉操作系统的基本概念,掌握操作系统的服务函数,接口
和工具的使用。

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

基础部分和C语言程序设计(考试时间:120分,满分:100分)一,选择题((1-40)每小题1分,(41)-(50)每小题2分, 四个选项中,只有一个选项是正确的,共60分)(1) 扫描仪是 A)输出设备 B)输入设备 C)存储设备 D)显示设备(2) 下列DOS组合控制键中,能使标准输出同时送到屏幕与打印机的是A)CTRL+BREAK B)CTRL+P C)CTRL+C D)CTRL+H(3) 通常所说的386机是 A)8位机 B)16位机 C)32位机 D)64位机(4) 二进制数01100100转换成十六进制数是 A)64 B)63 C)100 D)144(5) 八进制数100转换成十进制数是 A)1024 B)512 C)64 D)128(6) 对于存有重要数据的5.25英寸软盘,防止计算机病毒感染的方法是A) 不要与有病毒的软盘放在一起 B) 在写保护口贴上胶条 C) 保持软盘清洁 D) 定期对软盘格式化(7) 在启动DOS系统时,启动盘的根目录上必须包含的文件有A)START B)COMMAND C)FORMAT D)BOOT(8) DOS系统启动后,下列文件中常驻内存的是 A)DOS B)COMMAND C)DISKCOPY D)SYS(9) 下列名字中,不能作为DOS磁盘文件名的是 A)JTU B)93GZ.PRG C)CON D)ATT&T.BAS(10) 下列命令中属于内部命令的是 A) SYS B)COMP C)DIR D)DISKCOPY(11) 下列文件名中,能与ABC?.?匹配的是 A)AB12.C B)ABCD.FOR C)ABC>TXT D)ABCD.C(12) 要列出当前盘当前目录中第三个字符为"B"的所有文件的清单,可使用的命令为A)DIR **B*.* B)DIR ??B*.* C)DIR ??B.* D)DIR ??B*.*(13) 设当前盘为C盘,其根目录下有两个子目录D1与D2,且当前目录为D1,若要进入子目录D2.可使用的命令为A)CD D2 B)CD D2\ C)CD \D2 D)CD D1\D2(14) 设当前盘为C盘,A盘当前目录为根目录.为了删除A盘目录\WS下扩展名为.TXT的所有文件,可用的命令为A)DEL \WS\*.TXT B)DEL\WS\*.TXT C)DEL A:\WS\->.TXT D )DEL A:\WS\*.TXT(15) 设当前盘为C盘,C盘当前目录为\AAA\BBB\A\B\X.下列命令中能正确执行的是A)MD \AAA\BBB\A B)MD X C)MD\ D)MD\AAA\BBB\A\B\X(16) 在下列各组的两个命令中,根据给定的条件,执行效果互相等价的是A) DEL\DOS与RD\DOS(当前盘上有目录\DOS) B)FORMAT A:与DEL A:*.*(A盘为启动盘)C)DISKCOPY A: B:与COPY A:*.* B:(A盘为启动盘) D)COPY F1 F2与TYPE F1>F2(当前盘当前目录下有文件F1(17) 为了在1.2MB的高密驱动器A中格式化一张360KB的启动盘,可用的命令为A)FORMAT A: B)FORMAT A:/S/1 C)FORMAT A:/S/4 D)FORMAT A:/S(18) 要在打印机上输出当前盘当前目录下扩展名为.TXT的所有文件内容,正确的命令为A) COPY *.TXT PRN B)COPY *.TXT>PRN C)TYPE *.TXT PRN D)TYPE *.TXT>PRNB:\根目录—— F1子目录—— F11子目录—— FA.TXTF2子目录——— F21子目录—— FB.BASF22子目录—— FC.TXTF3子目录设B盘的当前目录为\F2,要将A盘当前目录下的文件P.BAS复制到B盘的F3子目录中,可用的命令为A)COPY P.BAS B: B)COPY A:P.BAS B:\ C)COPY A:P.BAS B:\F3 D)COPY A:P.BAS B:F3\(20) 设当前盘为A盘,要将B盘当前目录下的两个文件A.TXT与X.TXT连接后以文件名Y.TXT存放到A盘的当前目录中,可用的命令为A)COPY A.TXT+X.TXT A:Y.TXT B)COPY B:A.TXT+X.TXT A:Y.TXTC)COPY B:A.TXT+B:X.TXT>Y.TXT D)COPY B:A.TXT+B:X.TXT Y.TXT(21) C语言中最简单的数据类型包括 A)整型,实型,逻辑型 B)整型,实型,字符型C )整型,字符型,逻辑型 D)整型,实型,逻辑型,字符型(22) C语言中,运算对象必须是整型的运算符是 A)% B)\ C)%和\ D)* *(23) 为表示关系X>=Y>=Z,应使用C语言表达式A)(X>=Y)&&)Y>=Z) B)(X>=Y)AND(Y>=Z) C)(X>=Y>=Z) D)(X>=Y)&(Y>=Z)(24) 下述对C语言字符数组的描述中错误的是A) 字符数组可以存放字符串 B)字符数组中的字符串可以整体输入,输出C)可以在赋值语句中通过赋值运算符"="对字符数组整体赋值 D)不可以用关系运算符对字符数组中的字符串进行比较(25) 设有如下定义: int x=10,y=3,z;则语句 printf("%d\n",z=(x%y,x/y)); 的输出结果是A)1B)0 C)4 D)3(26) 以下程序的输出结果是main() {int x=10,y=10; printf("%d %d\n",x--,--y);} A)10 10 B)9 9 C)9 10 D)109(27) 定义如下变量和数组:int I;int x[3][3]={1,2,3,4,5,6,7,8,9};则下面语句的输出结果是 for(I=0;I<3;I++)printf("%d",x[I][2-I] A)1 5 9 B)1 4 7 C)3 5 7D)3 6 9(28) 若要求在IF后一对圆括号中表示A不等于0的关系,则能正确表示这一关系的表达式为A)A<>0 B)!AC)A=0 D)A(29) 阅读程序:#include<stdio.h>main(){int a[10]={1,2,3,4,5,6,7,8,9,0},*p;printf("%x\n",p); printf("%x\n",p+9); }该程序有两个PRINTF语句,如果第一个PRINTF语句输出的是194,则第二个PRINTF语句的输出结果是A)203 B)204 C)1A4 D)1A6(30) 设有如下函数定义:int f(char *s){ char *p=s;while(*p!='\0')p++; return(p-s); }如果在主程序中用下面的语句调用上述函数,则输出结果为:printf("%d\n",f("goodbye!")); A)3 B)6C)8 D)0(31) 以下说法中正确的是:A) C语言程序总是从第一个定义的函数开始执行 B)在C语言程序中,要调用的函数必须在main()函数中定义C)C语言程序总是从main()函数开始执行 D)C语言程序中的main()函数必须放在程序的开始部分(32) 执行下面的程序后,a的值为:main(){int a,b;for(a=1,b=1;a<=100;a++){if(b>=20) break;if(b%3==1){b+=3;continue; }b-=5; }} A) 7 B) 8 C) 9 D) 10(33) 以下程序段的输出结果是:int x=3;do {printf("%3d",x-=2);}while(!(--x)); A)1 B)30 C)1-2 D)死循环(34) 定义如下变量:int n=10;则下列循环的输出结果是:while(n>7){ n - -;printf("%d\n",n); }A)10 B)9 C)10 D)99 8 9 88 7 8 7(35) 两次运行下面的程序,如果从键盘上分别输入6和4,则输出结果是:main(){ int x;scanf("%d",&x);if(x++>5) printf("%d",x);else printf("%d\n",x - -); } A)7和5 B)6和3 C)7和4 D)6和4(36) 设有如下定义: char *aa[22]={"abcd","ABCD"};则以下说法中正确的是:A) aa数组元素的值分别是"abcd"和"ABCD". B)Aa是指针变量,它指向含有两个数组元素的字符型一维数组.C)aa数组的两个元素分别存放的是含有4个字符的一维字符数组的首地址. D)Aa数组的两个元素中各自存放了字符'a'和'A'的地址.(37) 以下程序的输出结果是:main(){ int a=-1,b=4,k;k=(++a<0)&&!(b- -<=0);printf("%d %d %d\n"),k,a,b); } A)1 0 4 B)1 0 3 C)0 0 3 D)0 0 4(38) 设有以下定义:int a[4][3]={1,2,3,4,5,6,8,9,10,11,12}; int (*prt[3]=a,*p=a[0];则以下能够表示数组元素a[1][2]的表达式是: A)*((*prt+1)[2]) B)*(*(p+5)) C)(*prt+1)+2D)*(*(a+1)+2)(39) 下列程序的输出结果是:main(){ char *p1,*p2,str[50]="xyz";p1="abcd"; p2="ABCD";strcpy(str+2,strcat(p1+2,p2+1)); printf("%s",str); } A)xyabcAB B)abcABzC)Ababcz D)xycdBCD(40) 执行下而后程序后,a的值是:#define SQR(X) X*Xmain(){ int a=10,k=2,m=1; a/=SQR(k+m)/SQR(k+m); printf("%d\n",a); } A)10 B)1C)9 D)0(41) 下列程序执行后输出的结果是:#include<stdio.h>f(int a){ int b=0; static c=3; a=c++,b++; return(a); }{ int a=2,i,k; for(i=0;i<2;i++) k=f(a++); printf("%d\n",k); } A)3 B)0C)5 D)4(42) 下列程序的输出结果是:main(){ int a[5]={2,4,6,8,10},*p,**k;p=a; k=&p; printf("%d",*(p++)); printf("%d\n",**k); } A)4 4 B)2 2 C)2 4D)4 6(43) 阅读下列程序:main(){ int n[3],i,j,k;for(i=0; i<3; i++)n[i]=0;k=2;for(i=0;i<k;i++)for(j=0;j<k;j++)n[j]=n[i]+1;printf("%d\n",n[1]); } 上述程序运行后,输出结果是: A)2 B)1 C)0 D)3(44) 字符'0'的ASCII码的十进制数为48,且数组的率0 个元素在低位,则以下程序的输出结果是:#include<stdio.h>main(){ union{ int i[2];long k;char c[4];}r,*s=&r;s->i[0]=ox39;s->i[1]=ox38;printf("%c\n",s->c[0]); } A)39 B)9 C)38 D)8(45) 设有以下定义:typedef union{ long i;int k[5];char c;}DATE;struct date{ int cat;DATE cow;double dog;}too;DATE max;则下列语句的执行结果是: printf("%d",sizeof(struct date)+sizeof(max)); A)25 B)30 C)18 D)8main(){ int a[]={2,4,6,8,10};int y=1,x,*p;p=&a[1];for(x=0;x<3;x++)y+=*(p+x);printf("%d\n",y); } A)17 B)18 C)19 D)20 (47) 下列程序执行后输出的结果是:int d=1;fun(int p){ int d=5;d+=p++;printf("%d",d); }main(){ int a=3;fun(a);d+=a++;printf("%d\n",d); } A)8 4 B)9 6 C)9 4 D)8 5 (48) 下列程序的输出结果是:main(){ char ch[2][5]={"6934","8254"};char *p[2];int i,j,s=0;for(i=0;i<2;i++)for(j=0;p[i][j]>'\0'&&p[i][j]<='9';j+=2)s=10*s+p[i][j]-'0';printf("%d\n",s); }(49) 以下程序的输入结果是:fun(int **s,int p[2][3]){ **s=p[1][1];}main(){ int a[2][3]={1,3,5,7,9,11},*p;p=(int *)malloc)sizeof(int));fun(&p,a);printf("%d\n",*p); } A)1 B)7 C)9 D)11#include <stdio.h>space(char *str){ int i,t;char ts[81];for(i=0,t=0;str[i]!='0';i+=2)if(!isspace(*str+i)&&(*(str+i)!='a'))ts[t++]=toupper(str[i]);ts[t]='\0';strcpy(str,ts);}main(){ char s[81]={"a b c d e f g"};space(s);puts(s); } A)abcdeg B)bcde C)ABCDE D)BCDE二﹑填空题(每空2分,共40分) 请将每空的正确答案写在(1)至(20)序号位置上,答在试卷上不得分.(1) 十进制数112.375转换成十六进制数为 (1) .(2) 存储200个32*32点阵的汉字信息需 (2) KB.(3) 数字符号0的ASCII码十进制表示为48,数字符号9的ASCII码十进制表示为 (3) .(4) DOS命令分为内部命令与外部命令,TREE命令属于 (4) 命令.(5) 自动批处理文件的文件名为 (5) .(6) 表示:10<X<100或X<0的C语言表达式是 (6) .(7) 下列程序的输出结果是 (7) .#include <stdio.h>main(){ char b[]="ABCDEFG"; char *chp=&b[7];while(--chp>&b[0]);putchar(*chp); putchar('\n');}(8) 下列程序的输出结果是 (8) .int ast(int x,int y,int *cp,int *dp){ *cp=x+y; *dp=x-y; }main(){ int a,b,c,d; a=4;b=3;ast(a,b,&c,&d); printf("%d %d\n",c,d); }(9) 以下程序的功能是:从键盘上输入若干个学生的成绩,统计并输出最高成绩和最低成绩,当输入负数时结束输入,请填空.main(){ float x,amax,amin;amax=x; amin=x;while( (9) ){ if(x>amax) amax=x;if( (10) ) amin=x;scanf("%s",&x); }printf("\namax=%f\namin=%f\n",amax,amin); }(10) 下面的程序通过函数average计算数组中各元素的平均值,请填空.float average(int *pa,int n){ int i; float avg=0.0;for(i=0;i<n;i++)avg=avg+ (11) ; avg= (12) ; return avg; }main(){ int i,a[5]={2,4,6,8,10}; float mean; mean=average(a,5); printf("mean=%f\n",mean); }(11) 阅读程序:#include "string.h"#include "stdio.h"strle(char a[],char b[]);{ int num=0,n=0;while(*(a+num)!='\0') num++;while(b[n]) {*(a+num)=b[n];num++;n++;}return(num); }main(){ char str1[81],str2[81],*p1=str1,*p2=str2;gets(p1);gets(p2);printf("%d\n",strle(p1,p2)); }运行上面的程序,如果从键盘上输入字符串qwerty和字符串abcd则程序的输出结果是 (13) .(12) 以下程序的输出结果是 (14).fun(int n,int *s){ int f1,f2;if(n==1||n==2) *s=1;else { fun(n-1,&f1);fun(n-2,&f2);*s=f1+f2; }main() { int x; fun(6,&x); printf("%d\n",x); }(13) 阅读程序:main(){ char str1[]="how do you do",str2[10]; char *p1=str1,*p2=str2;运行上面的程序,输入字符串HOW DO YOU DO则程序的输出结果是 (15) .(14) 以下程序由终端键盘输入一个文件名,然后把从终端键盘输入的字符依次存放到该文件中,用#作为结束输入标志.请填空.#include <stdio.h>main(){ FILE *fp;char ch,fname[10];printf("Input the name of file\n"); gets(fname);if((fp= (16) )==NULL){ printf("Cannot open\n"); exit(0);}printf("Enter data\n");while((ch=getchar())!='#')fputc( (17) ,fp);fclose(tp);}(15) 以下函数creat用来建立一个带头结点的单向链表,新产生的结点总是插在链表的末尾.单向链表的头指针作为函数值返回.请填空:#include <stdio.h>struct list{ char data; struct list *next; }struct list *creat(){ struct list *h,*p,*q;char ch;h= (18) malloc(sizeof(struct list));p=q=h; ch=getchar();while(ch!='?'){ p= (19) malloc(sizeof(struct list));p->data=ch; q->next=p; q=p; ch=getchar(); } p->next='\0'; (20) }希望以上资料对你有所帮助,附励志名言3条:1、生气,就是拿别人的过错来惩罚自己。

相关文档
最新文档