武汉大学C语言期末复习_试题

合集下载

VC期末考试题及标准答案

VC期末考试题及标准答案

武汉大学2021—2021学年上学期面向对象程序设计试卷〔B〕学号:姓名:院系:专业:得分:一、名词解释〔每题5分,共计25分〕〔1〕构造函数:是一种特殊成员函数,它提供了对成员变量进展初始化方法,使得在声明对象时能自动初始化对象〔+2〕;构造函数名称与类名一样〔+1〕;构造函数不能指定任何返回值类型〔+1〕;构造函数可以重载〔+1〕。

〔2〕多态:多态性是面向对象编程一个重要特征〔+1〕,主要表现在函数调用时实现“一种接口,多种方法〞〔+2〕。

多态又分为编译时多态和运行时多态两种〔+2〕。

〔3〕抽象类:抽象类是指这样类,它一些行为〔成员函数〕不给出具体定义〔+2〕,抽象类至少带有一个纯虚函数〔+1〕,抽象类不能用来申明对象,只能作为基类使用,因此它又称为抽象基类〔+2〕。

〔4〕文档模板:在文档/视图构造应用程序中,数据以文档类对象形式存在〔+1〕。

文档对象通过视图对象显示出来,而视图大对象又是框架窗口一个子窗口,并且涉及文档操作菜单和工具栏等资源也是建立在框架窗口上〔+2〕。

这样文档、视图、框架和所涉及资源形成了一种固定关系,这种固定关系就成为文档模板〔+1〕。

也就是说,文档模板描述了对应于每一种类型文档视图和窗口类型〔+1〕。

〔5〕序列化:对象保存和恢复过程称为序列化〔+2〕。

即对象具有保存和加载其状态能力〔+1〕,对象能够在程序运行完毕前将对象当前状态写入永久存储体中,以后在程序运行时通过数据读取而恢复对象状态〔+2〕。

二、简答题〔每题10分,共计40分〕1.简述文档、视图和应用程序框架之间如何相互作用?答:文档、视图和应用程序包含了一系列复杂相互作用过程〔+1〕,稳当和视图交互式通过类共有数据成员和成员函数实现〔+1〕。

一个视图对象只与一个文档对象关联,一个文档可以与多个视图关联,但一个文档对象只反映当前视图变化〔+2〕。

视图中用GetDocument()获取文档对象进展操作〔+1〕;在文档中利用Invalidate(), UpdateAllViews()或SendMessage(WM_PAINT,a,b)调用视图中OnDraw()对文档数据进展绘图〔+3〕;在程序任何地方可以调用AfxGetApp()得到程序框架对象指针,利用框架对象指针可进一步利用GetActiveView()获取程序视图对象,并对其进展操作〔+2〕。

大学c语言期末考试题库试题及答案

大学c语言期末考试题库试题及答案

大学c语言期末考试题库试题及答案在即将到来的大学C语言期末考试中,同学们可能会遇到各种类型的题目。

以下是一些典型的试题及其答案,供同学们复习参考。

1. 以下哪个选项是C语言中的关键字?A. intB. IntegerC. INTD. integer答案:A. int2. 若有定义:int a = 10; 则表达式 a++ 的值是多少?A. 9B. 10C. 11D. 无法确定答案:B. 103. 在C语言中,以下哪个函数用于计算字符串的长度?A. strlen()B. length()C. str_length()D. string_length()答案:A. strlen()4. 若有以下代码片段:```cint x = 5;printf("%d", x++);```执行后输出的结果是?A. 4B. 5C. 6D. 无法确定答案:B. 55. 在C语言中,以下哪个选项表示“逻辑与”操作?A. &&B. ||C. !D. &答案:A. &&6. 若有以下代码:```cint a = 3, b = 4, c;c = a + b;```则变量 c 的值是多少?A. 7B. 3C. 4D. 无法确定答案:A. 77. 在C语言中,以下哪个选项是正确的二维数组声明?A. int array[2,3];B. int array[2][3];C. int array[2][3][4];D. int array[][];答案:B. int array[2][3];8. 若有以下函数定义:```cint add(int x, int y) {return x + y;}```则调用 add(5, 3) 时,返回的值是多少?A. 2B. 5C. 8D. 无法确定答案:C. 89. 在C语言中,以下哪个选项表示“不等于”的比较运算符?A. ==B. !=C. =D. <=答案:B. !=10. 若有以下代码:```cchar str[] = "Hello";str[0] = 'h';```执行后,str 数组的内容是什么?A. "hello"B. "Hello"C. "helloworld"D. "hEllo"答案:A. "hello"这些题目覆盖了C语言的基础知识点,包括关键字、变量、函数、数组以及基本的控制结构。

武汉大学计算机学院C语言历年试题

武汉大学计算机学院C语言历年试题

武汉大学计算机学院2001-2002学年度第一学期2001级《高级语言程序设计》期末考试试卷姓名:学号:专业:未经主考教师同意,考试试卷、答题纸、草稿纸均不得带离,否则视为违规。

一.选择最合适的答案填空(每题1分,共10分)( )1.______ 不是C语言的基本控制结构。

A.转移B.循环C.顺序D.选择( )2.表达式65|9和65&9的值为______ 。

A.74和74B.73和1C.74和405D.73和9( )3.设变量int m,n,a,b的值均为1,则执行表达式(m=a>b) &&(n=a>b)后,m,n的值为______ 。

A.1和1B.0和1C.1和0D.0和0( )4.表达式35<<3的值为______ 。

A.4B.38C.105D.280( )5.设有如下宏定义#define WIDTH 80#define LENGTH WIDTH+1则执行赋值语句v=LENGTH*20;/*v为int型变量*/后,v的值为______ 。

A.1620B.1601C.100D.1600( )6.假如指针p已经指向某个整型变量,语句____ 使指针q与p指向同一变量。

A.q=**pB.q=*&pC.q=&&pD.q=*p( )7.设long a[50],*p;执行p=a; p+=4;后*(p+4)等价于____ 。

A.a[8]B.a[4]C.a[2]D.无法确定( )8.执行fp=fopen(”A:Exam1_8.txt”,”wb”);后fp为null,最可能的原因是____ 。

A.按二进制方式打开文本文件B.文件A:Exam1_8.txt不存在C.文件写保护D.文件A:Exam1_8.txt大小写不一致( )9.______ 不是对象的基本特性。

A.封装B.多态(重载)C.非结构D.继承( )10.结构化程序设计追求的首要目标是程序的______ 。

大学c语言期末考试题库及答案

大学c语言期末考试题库及答案

大学c语言期末考试题库及答案一、选择题(每题2分,共20分)1. C语言中,以下哪个关键字用于声明函数?A. intB. voidC. returnD. function答案:A2. 以下哪个选项是正确的C语言变量声明?A. int a = b = 2;B. int a = 2, b;C. int a = 2.0;D. int a = 2, b = 3.0;答案:B3. 在C语言中,以下哪个运算符用于逻辑“与”操作?A. &&B. ||C. !D. &答案:A4. 以下哪个选项是C语言中的合法数组声明?A. int array[5] = {1, 2, 3, 4, 5};B. int array[] = {1, 2, 3, 4, 5};C. int array[5] = {1, 2, 3};D. int array[5] = {1, 2, 3, 4, 5, 6};答案:B5. C语言中,以下哪个函数用于计算两个整数的和?A. max()B. pow()C. sqrt()D. sum()答案:D6. 在C语言中,以下哪个关键字用于定义一个结构体?A. structB. unionC. enumD. typedef答案:A7. 以下哪个选项是C语言中的合法指针声明?A. int *ptr;B. int *ptr = 0;C. int *ptr = "hello";D. int *ptr = 5;答案:A8. 在C语言中,以下哪个函数用于将字符串复制到另一个字符串?A. strcat()B. strcpy()C. strcmp()D. strlen()答案:B9. C语言中,以下哪个关键字用于创建一个循环,直到满足某个条件?A. whileB. forC. do-whileD. switch答案:C10. 在C语言中,以下哪个函数用于动态内存分配?A. malloc()B. calloc()C. realloc()D. free()答案:A二、填空题(每题2分,共20分)1. 在C语言中,使用________关键字可以定义一个宏。

c语言期末试题

c语言期末试题

一、选择题(每小题2分,共34分)1. 以下不合法的用户标识符是______。

A、j2_KEYB、DoubleC、4dD、_8_2.以下叙述中正确的是______。

A、C程序中注释部分可以出现在程序中任意合适的地方B、花括号“{”和“}”只能作为函数体的定界符C、构成C程序的基本单位是函数,所有函数名都可以由用户命名(库函数)D、分号是C语言之间的分隔符,不是语句的一部分3.设int a=12,则执行完语句a+=a-=a*a后,a的值是______。

A、0B、264C、144D、-2644.假定x和y为double型,表达式x=2,y=x+3/2的值是______。

A、3.500000B、3C、2.000000D、3.0000005.语句:printf("%d",(a=2)&&(b=-2));的输出结果是______。

A、2B、1C、-4D、-26.若变量c为char类型,能正确判断出c为小写字母的表达式是______。

A、´a´<=c<=´z´B、(c>=´a´)||(c<=´z´)C、(´a´<=c)and(´z´>=c)D、(c>=´a´)&&(c<=´z´)7.在嵌套使用if语句时,C语言规定else总是______。

A、和之前与其具有相同缩进位置的if配对B、和之前与其最近的if配对C、和之前与其最近的且不带else的if配对D、和之前的第一个if配对8.以下循环体的执行次数是______。

main(){int i,j;for (i=0,j=1; i<=j+1;i+=2,j--)printf("%d \n",i);}A、3B、2C、1D、09.int a[2][3]={{1},{2,3}};,则a[0][1]的值是______。

武汉大学C语言程序设计考试复习资料

武汉大学C语言程序设计考试复习资料

C题库新C语言(基础知识)单元练习一1.能正确表示a和b同时为正或同时为负的逻辑表达式是______。

A. (a>=0‖b>=0)&&(a<0‖b<0)B. (a>=0&&b>=0)&&(a<0&&b<0)C. (a+b>0)&&(a+b<=0)D. a*b>0D2.一个C语言程序的执行是从______。

A. main函数开始,直到main函数结束B.第一个函数开始,直到最后一个函数结束C.第一个语句开始,直到最后一个语句结束D. main函数开始,直到最后一个函数结束A3.可用作用户标识符的一组标识符是______。

A. voidB. a3_b3C. ForD. 2adefine _xyz -abc DOWORD IF Case sigeofB4.能正确表示a、b不能同时为零的逻辑表达式是______。

A. a==0&&b!=0||a!=0&&b==0B. (a==0)||(b==0)C. (a!=0)||(b!=0)D. a*b==0A5.已知各变量的类型说明如下:int i=8,k,a,b; unsigned long w=5; double x=1.42,y=5.2; 则以下符合C语言语法的表达式是______。

A. a+=a-=(b=4)*(a=3)B. a=a*3=2C. x%(-3)D. y=float(i)A6.若k为int型变量,则以下语句______。

k=8567; printf("|%-06d|\n",k);A.输出格式描述不合法B.输出为|008567|C.输出为|8567 |D.输出为|-08567|C7.正确的C语言自定义标识符是______。

A.file_bakB.abc(10)C.continueD.class+3A8.设int x=8,y,z;执行y=z=x++;x=y=z;后,变量x的值是______。

武汉大学c语言题库

武汉大学c语言题库

武汉大学C语言题库第一章C语言源程序经过编译、链接后生成的可执行文件扩展名是______。

(A).exe (B).cpp (C).c (D).objC语言程序要正确地运行,必须要有______。

(A)printf函数(B)scanf函数(C)自定义的函数(D)main 函数以下均为合法用户标识符的是______。

(A)do,xyz,_printf(B)3a,_tt,IF(C)void,ff,s_v(D)_pi,IF,big_tree以下叙述中正确的是______。

(A)C语言程序从源程序中第一个函数开始执行(B)C语言规定必须用main作为主函数名,程序将从此开始执行,在此结束(C)可以在程序中由用户指定任意一个函数作为主函数,程序将从此开始执行(D)main可作为用户标识符,用以命名任意一个函数作为主函数以下叙述中错误的是______。

(A)C语言是一种结构化程序设计语言(B)结构化程序有顺序、选择和循环三种基本结构(C)使用三种基本结构构成的程序只能解决简单问题(D)结构化程序设计提倡模块化的设计方法C语言程序的基本单位是【函数】。

编写C语言源程序时,需要使用【编辑】器将源代码输入到计算机中。

C语言源程序中可以有多处注释。

第二章以下属于合法数据类型关键字的是______。

(A)Long (B)shot (C)char (D)doubel以下不合法的数值常量是______。

(A)011 (B)1e1 (C)8.0E0.5(D)0xabcd以下正确的字符常量是______。

(A)"T" (B)'\\'' (C)' (D)'T'以下不合法的字符常量是______。

(A)"a" (B)'\77' (C)'\n' (D)'\x5c'表达式3.6-5/2+1.2+5%2的值是______。

大学计算机C语言期末考试复习试题及答案

大学计算机C语言期末考试复习试题及答案

大学计算机C语言期末考试复习试题及答案一、选择题(每题4分,共40分)1. C语言中,以下哪个选项不是合法的数据类型?A. intB. floatC. charD. string答案:D2. 以下哪个选项是C语言的逻辑运算符?A. &&B. ||C. <<D. &答案:A、B3. 在C语言中,下列哪个函数用于输入字符串?A. scanf()B. gets()C. printf()D. putchar()答案:B4. 在C语言中,以下哪个选项表示单行注释?A. //B. /C. //D. //答案:A5. 在C语言中,以下哪个选项表示多行注释的开始?A. //B. /C. //D. //答案:B6. 在C语言中,以下哪个选项表示多行注释的结束?A. //B. /C. //D. //答案:D7. 在C语言中,以下哪个选项是合法的变量名?A. intB. floatC. charD. a123答案:D8. 在C语言中,以下哪个选项表示整型常量?A. 1.23B. 'a'C. "Hello"D. 123答案:D9. 在C语言中,以下哪个选项表示字符型常量?A. 1.23B. 'a'C. "Hello"D. 123答案:B10. 在C语言中,以下哪个选项表示字符串常量?A. 1.23B. 'a'C. "Hello"D. 123答案:C二、填空题(每题5分,共30分)11. 在C语言中,main函数的返回类型是______。

答案:int12. 在C语言中,用于声明整型变量的关键字是______。

答案:int13. 在C语言中,用于声明单精度浮点型变量的关键字是______。

答案:float14. 在C语言中,用于声明字符型变量的关键字是______。

答案:char15. 在C语言中,用于声明双精度浮点型变量的关键字是______。

c语言大学期末考试题及答案

c语言大学期末考试题及答案

c语言大学期末考试题及答案C语言大学期末考试题及答案一、选择题(每题2分,共20分)1. 在C语言中,以下哪个关键字用于定义数组?A. intB. arrayC. defineD. static答案:A2. 下列哪个是C语言中的合法标识符?A. 3variableB. variable-nameC. variable#nameD. variable_name答案:D3. C语言中,哪个函数用于计算两个数的和?A. sum()B. add()C. calculate()D. None of the above答案:D4. 以下哪个语句用于定义一个空指针?A. int *ptr;B. int *ptr = 0;C. int *ptr = NULL;D. Both B and C答案:C5. 在C语言中,哪个运算符用于取地址?A. *B. &C. %D. /答案:B6. 下列哪个语句是正确的C语言循环语句?A. do-whileB. whileC. forD. All of the above答案:D7. 在C语言中,哪个关键字用于定义一个函数?A. functionB. defC. voidD. int答案:D8. 以下哪个是C语言中的逻辑运算符?A. &&B. ||C. Both A and BD. None of the above答案:C9. 在C语言中,哪个函数用于输入数据?A. printf()B. scanf()C. getchar()D. puts()答案:B10. C语言中,哪个关键字用于定义一个结构体?A. structB. typeC. unionD. enum答案:A二、填空题(每空2分,共20分)1. 在C语言中,基本数据类型包括_______、_______、double和char。

答案:int, float2. 一个C语言程序的执行从_______函数开始。

大学c期末考试题库及答案文档

大学c期末考试题库及答案文档

大学c期末考试题库及答案文档大学C期末考试题库及答案一、选择题1. 在C语言中,以下哪个关键字用于定义一个函数?A. intB. voidC. returnD. function答案:A2. 下列哪个是C语言中的合法变量名?A. 2variableB. variable-nameC. variable#nameD. variable_name答案:D3. C语言中,哪个运算符用于求两个数的和?A. +B. -C. *D. /答案:A二、填空题4. 在C语言中,一个基本的程序结构由______、函数调用和程序的终止组成。

答案:函数定义5. 如果要定义一个整型变量,可以使用关键字______。

答案:int6. 在C语言中,用于输出的函数是______。

答案:printf三、简答题7. 简述C语言中数组的定义方式及其特点。

答案:在C语言中,数组是一种基本的数据结构,用于存储具有相同类型的多个元素。

数组的定义方式是指定类型后跟数组名和方括号内的元素个数,例如:int numbers[10]; 表示定义了一个可以存储10个整数的数组。

数组的特点包括:元素在内存中连续存储,可以通过索引访问元素,索引从0开始。

8. 解释C语言中指针的概念及其用途。

答案:指针是C语言中的一个重要概念,它是一个变量,用于存储另一个变量的内存地址。

指针的用途非常广泛,包括动态内存分配、数组操作、函数参数传递等。

通过指针,可以间接访问和修改变量的值,实现更灵活的程序设计。

四、编程题9. 编写一个C语言程序,实现输入两个整数,输出它们的和。

```c#include <stdio.h>int main() {int num1, num2, sum;printf("请输入两个整数:");scanf("%d %d", &num1, &num2);sum = num1 + num2;printf("它们的和是:%d\n", sum);return 0;}```10. 编写一个C语言程序,实现对一个字符串进行反转。

2022年武汉大学公共课《C语言》科目期末试卷B(有答案)

2022年武汉大学公共课《C语言》科目期末试卷B(有答案)

2022年武汉大学公共课《C语言》科目期末试卷B(有答案)一、填空题1、设有以下定义和语句,请在printf语句的_______中填上能够正确输出的变量及相应的格式说明。

union{int n;doublex;}num;num.n=10;num.x=10.5;printf("_______",_______);2、结构化程序由________、________ 、________ 3种基本结构组成。

3、在C语言中,输入操作是由库函数________完成的,输出操作是由库函数________完成的。

4、若x和n均是int型变量,且x的初值为12,n的初值为5,则执行表达式x%=(n%=2)后x的值为_______。

5、已知字母a的ASCIl码为十进制数97,且设ch为字符型变量,则表达式ch='a'+'8'-3'的值为_______。

6、在C语言中,&运算符作为单目运算符时表示的是_______运算;作为双目运算符时表示的是_______运算。

7、函数swap(arr,n)可对arr数组从第1个元素到第n个元素分别进行两两元素交换。

在运行调用函数中的如下语句后,a[o]和a[1]的值分别为_______,原因是_______。

a[0]=1;a[1]=2;swap(a,2);8、若有定义:inta[3][4]={{1,2},{0},{4,6,8,10}};,则初始化后,a[1][2]得到的初值是_______,a[2][1]得到的初值是_______。

9、设有宏定义如下:#define MIN(x,y)(x)>(y)?(x):(y)#define T(x,y,r)x*r*y/4则执行以下语句后,s1的值为_______,s2的值为_______。

int a=1,b=3,c=5,s1,s2;s1=MIN(a=b,b-a);s2=T(a++,a*++b,a+b+c);10、请填空:建立如图所示存储结构所需的说明语句是_______。

武大C语言题库

武大C语言题库
11.int x=10; printf("%d",(int)(x-=4)); 执行之后,输出结果是( ) 。 (A)4 (B)5 (C)7 (D)6
12.int x,y;x=y=10;printf("%d",x-=y-4); 执行之后,输出结果是( ) 。 (A)5 (B)6 (C)7 (D)4
15.double x=10.5;printf("%f",x/=x+x); 执行之后,输出结果是( ) 。 (A)0.5 (B)10.5 (C)11.5 (D)21
16.short x=12;x%=x%=10; 执行后,x 值是( ) 。 (A)0 (B)1 (C)12 (D)10
17. short x=14;x=3+1>2; 执行后,x 值是( ) 。 (A)1 (B)14 (C)4 (D)5
二、填空题(每空 2 分,共 10 分) 填空题( printf("%d",x); 执行之后,输出结果是 。 。
1.int x=0;while(1) if((x+=1)>10) break;
2.下列程序运行后的输出结果是 void main() {int x=15, y=25, t=0; if (x! =y) t=x; x=y; y=t; printf(“%d,%d\n”,x,y);}
13.int x=10; printf("%d",(x+2,x+3,x+4)); 执行之后,输出结果是( ) 。 (A)2 (B)3 (C)5 (D)14
14.int x=10; printf("%d",(x=2,x+=3,x+4)); 执行之后,输出结果是( ) 。 (A)2 (B)13 (C)17 (D)9

武汉大学《C语言程序设计》 2017-2018学年第二学期期末试卷A卷

武汉大学《C语言程序设计》 2017-2018学年第二学期期末试卷A卷

武汉大学计算机学院2017-2018学年度第2学期《C语言程序设计》期末考试试卷A卷姓名:学号:专业:说明:开卷考试,答案请全部写在答题纸上,写在试卷上无效。

未经主考教师同意,考试试卷、答题纸、草稿纸均不得带离,否则视为违规。

题号一二三四五总分总分1629103015100一.单项选择题:(选择最合适的答案填空,每小题2分,共16分)()1、设有变量定义:int m=5,n=3;则执行表达式((m+=2)>=7)||((n-=3)<10)后,m,n的值分别为______。

A.5和0B.5和3C.7和0D.7和3()2、已知各变量的类型说明如下:int k,a,b;unsigned long w=5;double x=1.42;则以下不符合C语言语法的表达式是。

A.w+=-2B.k=(a=2,b=3,a+b)C.a+=a-=(b=4)*(a=3)D.x%(-3)()3、下面程序段的运行结果是。

#include<stdio.h>int main(){int a=11,b=10,c=0;a/=b+(b&&c);printf(“%d\n”,a);return0;}A.0B.1C.1.1D.11()4、头文件type1.h的内容如下所示:#define N5#define M1N*3程序如下:#include“type1.h”#define M2N*2int main(){int i;i=M1+M2;printf(“%d\n”,i);return0;}则上述程序编译后运行的输出结果是:A.10B.20C.25D.30()5、设有如下定义:struck sk{int a;float b;}data;int*p;若要使P指向data中的a域,正确的赋值语句是:A.p=&data.a;B.p=data.a;C.p=&a;D.*p=data.a ()6、设有如下定义int a[]={10,11,12},*p=&a[0];则执行完*p++;*p+=1;后a[0],a[1],a[2]的值依次是。

武汉大学《C语言程序设计》2016-2017学年第二学期期末试卷B卷

武汉大学《C语言程序设计》2016-2017学年第二学期期末试卷B卷

武汉大学计算机学院2016-2017学年度第2学期《C语言程序设计》期末考试试卷B卷一.单项选择题:(共10分,每个小题1分)1.以下说法错误的是。

A.三种基本结构的共同点是“单入口单出口”。

B.goto语句可以在程序中自由跳转。

C.结构化程序设计设计三种基本结构的目的是增加程序的可读性和可维护性。

D.结构化程序设计中划分模块的原则是模块“相对独立,功能单一”。

2.在C语言中,形参的缺省存储类是。

A.staticB.registerC.externD.auto3.设有如下宏定义:#define test(t) t-4%t则表达式test(2)*test(5)的值为。

A.-12B.-2C.2D.04.执行语句b=(a=2*10,a=a=4,(a=3*5,a*4),a+5); 后,a和b的值分别是。

A.24,29B.20,25C.15,25D.15,205.设有变量定义:int p=4; char k='a'; 则执行表达式((k+=2)>= 'c') ||((p*=3)<10) 后,变量k和p的值分别为______ 。

A.a和4B.a和12C.c和4D.c和126.表达式076432&~01777的结果是____________。

A.432B.0432C.76000D.0760007.执行以下程序段后,变量m的值为。

int a[8]={ 4,3,2,1 , 7,6,5,4 };int m,*p;p = &a[0];m = ( *p + 1) + ( p[ 2 ] ) * ( p[ 7 ] );A.13B.11C. 16D. 198.设有变量定义:char a[30]; long int *p = (long int *)(a+3); 则以下与表达式p+4等价的是。

A.&a[7]B. a+16C. a+19D. a+289.对于以下字符串,strlen(s)的值为:(1) char s1[]="\t\"\\\\\0abc\n";(2) char s2[]="\x69\33\n";(3) char s3[]="\t\082\n";A.4、3和1B.4、3和3C.16、3和3D.16、3和1010.表达式2.5+7%2-5/2*2的结果为______ 。

武汉大学信息管理学院 C语言期末考试 试卷

武汉大学信息管理学院 C语言期末考试 试卷

武汉大学信息管理学院第一学期《C语言》期末考试试卷(A)年级_______ 专业学号___________ 姓名________一、选择:(20分)1、char str[]=“ab\n\\012\\\””;函数strlen(str)的计算结果是A、14B、7C、9D、102、在一个C源文件中,若定义一个只允许本文件中所有函数使用的全局变量,则该变量需要使用的存储类别是A、 externB、registerC、autoD、static3、以下对结构体变量stu1中成员age的非法引用是struct student{ int age;int num;} stu1,*p;P=&stu1;A、stu1.ageB、student.ageC、p->ageD、(*p).age4、以下语句输出结果是int a=110,b=017;printf(“%x,%d”,a++,b++);A、6e,15B、6e,16C、6f,15D、6f,165、正确的k的值是enum {a,b=5,c,d=4,e} k;k=e;A、3B、4C、5D、66、 int a=4,b=5,t=0;if (a>b) t=a,a=b,b=t;printf(“%d,%d”,a,b);此程序段的输出结果是A、5,4B、4,5C、5,0D、4,07 、以下for循环执行时,内循环体的总的执行次数是for (i=5;i;i- -)for(j=0;j<4;j++) { ……… }A、20B、24C、25D、308、现定义一个二维数组c[M][N]存放字符串“China”,“Tinajin”,“Education”,则,常量M和N的合理取值是A、3和9B、2和10C、4和9D、3和109、在定义int a[3][6]后,第16个元素是A、a[2][3]B、a[1][3]C、a[3][1]D、a[4][2]10、若定义int a,b,*p1=&a,*p2=&b;使p2指向a的赋值语句是A、*p2=&a;B、p2=&p1;C、p2=&*p1;D、p2=*&a;二、读程序写结果:(20分)三、下面的程序用来将十进制数转化为二进制数,例如输入一个整型数10,则输出1010,请在下列空白出填空。

大学c语言的期末试题及答案

大学c语言的期末试题及答案

大学c语言的期末试题及答案一、选择题(每题2分,共20分)1. 下列关于C语言的描述中,错误的是()。

A. C语言是一种高级语言B. C语言可以直接在计算机上运行C. C语言具有结构化的特点D. C语言具有丰富的数据类型答案:B2. 在C语言中,用于定义一个整型变量的关键字是()。

A. intB. floatC. charD. double答案:A3. C语言中,用于输入输出的库函数是()。

A. <stdio.h>B. <math.h>C. <stdlib.h>D. <string.h>答案:A4. 下列选项中,不属于C语言运算符的是()。

A. %C. :D. <答案:C5. 在C语言中,用于定义一个字符数组的关键字是()。

A. intB. floatC. charD. double答案:C6. 下列关于C语言函数的描述中,正确的是()。

A. 函数必须有返回值B. 函数可以没有参数C. 函数的返回值类型不能是数组D. 函数的返回值类型必须是int答案:B7. 在C语言中,用于定义一个浮点型变量的关键字是()。

A. intB. floatC. charD. double答案:B8. C语言中,用于定义一个字符串常量的关键字是()。

B. stringC. strD. text答案:A9. 下列关于C语言指针的描述中,错误的是()。

A. 指针可以存储地址B. 指针可以存储值C. 指针可以作为函数的参数D. 指针可以作为函数的返回值答案:B10. 在C语言中,用于定义一个布尔型变量的关键字是()。

A. boolB. intC. charD. float答案:A二、填空题(每题2分,共20分)1. 在C语言中,使用____关键字来定义一个静态变量。

答案:static2. C语言中,使用____关键字来定义一个全局变量。

答案:extern3. 在C语言中,____运算符用于取地址。

武汉大学c语言题库

武汉大学c语言题库

武汉大学c语言题库C语言源程序经过编译、链接后生成的可执行文件扩展名是______。

(A).exe (B).cpp (C).c (D).objC语言程序要正确地运行,必须要有______。

(A)printf函数(B)scanf函数(C)自定义的函数(D)main 函数以下均为合法用户标识符的是______。

(A)do,xyz,_printf (B)3a,_tt,IF (C)void,ff,s_v(D)_pi,IF,big_tree 以下叙述中正确的是______。

(A)C语言程序从源程序中第一个函数开始执行(B)C语言规定必须用main作为主函数名,程序将从此开始执行,在此结束(C)可以在程序中由用户指定任意一个函数作为主函数,程序将从此开始执行(D)main可作为用户标识符,用以命名任意一个函数作为主函数以下叙述中错误的是______。

(A)C语言是一种结构化程序设计语言(B)结构化程序有顺序、选择和循环三种基本结构(C)使用三种基本结构构成的程序只能解决简单问题(D)结构化程序设计提倡模块化的设计方法C语言程序的基本单位是。

编写C语言源程序时,需要使用【编辑】器将源代码输入到计算机中。

C语言源程序中可以有多处注释。

第二章1以下属于合法数据类型关键字的是______。

(A)Long (B)shot (C)char (D)doubel以下不合法的数值常量是______。

(A)011 (B)1e1 (C)8.0E0.5 (D)0xabcd 以下正确的字符常量是______。

(A)\(B)'\\\\'' (C)' (D)'T'以下不合法的字符常量是______。

(A)\ (B)'\\77' (C)'\\n' (D)'\\x5c' 表达式3.6-5/2+1.2+5%2的值是______。

(A)4.3 (B)4.8 (C)3.3 (D)3.8 以下均是合法常量的是______。

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

{ int y=9;
for(;y>0;y--)
{ if(y%3==0)
{ printf("%d",--y);
continue;
}
}
} A)741
B)852 √
C)963
5
D)875421
13. 下面程序的输出是 main() { char x=040; printf("%d\n",x=x<<1):
main()
{ int a,b;
scanf(“%d%d”,&a,&b);
if(a<b) printf(“%d\n”, a++);
else printf("%d\n, b--);
} A) 12
B) 13√
C) 14
D) 15
6、下面程序的输出是
main()
{ int a[10]={ 1,2,3,4,5,6,7,8,9,10},*p=a;
printf("%d\n",*(p+2));
}
A) 3√
B) 4
C) 1
D) 2
3
7、下面程序的输出是
main()
{ enum team { my,your=4,his,her=his+10};
printf("%d%d%d%d\n",my,your,his,her);
} A) 0 1 2 3
B) 0 4 0 10
个printf语句的输出结果是:
main()
{ int a[10]={1,2,3,4,5,6,7,8,9,0},*p;
p=a;
printf("%x\n",p);
printf("%x\n",p+9);
} A)203
B)204
C)1a4
D)1a6 √ 7
18. 以下说法中正确的是 A)C语言程序总是从第一个的函数开始执行 B)在C语言程序中,要调用的函数必须在main()函数中定义 C)C语言程序总是从main()函数开始执行 √ D)C语言程序中的main()函数必须放在程序的开始部分
19.执行下面的程序后, a的值为 main() { int a,b; for (a=1,b=1;a<=100;a++) { if(b>=2043;=3;
continue; }
b-=5;
}
}
A)7
B)8 √
C)9
D)10
8
20.以下程序段的输出结果是 int x=3; do { printf("%3d",x-=2);
A)EOF
B)-1
C)非零值 √
11. 根据下面的定义,能印出字母M的语句是
D)NULL
struct person{ char name[9]; int age; };
struct person class[10]={“john”,17,“paul”,19,“mary”,18,“adam”,16};
int(*P)[4]=a,i,j,k=0;
for(i=0;i<3;i++)
for(j=0;j<2;j++)
k=k+*(*(p+i)+j);
printf("%d\n",k);
} A)60 √
B)68
C)99
D)108
17.该程序有两个printf 语句, 如果第一个printf 语句输出的是194, 则第二
试卷共5个大题
•单项选择题题(每题1分,共20分) • 填空题(20分,每题2分) • 阅读程序(20分,每题4分) • 完成程序题(20分,每空2分) • 程序编制题:(20分,每题10分)
1
练习
1、下列语句中符合C语言语法的赋值语句是
A) a=7+b+c=a+7;
B) a=7+b++=a+7;
C) a=7+b,b++,a+7
D) a=7+b,c=a+7; √
2、在C语言中,要求运算数必须是整型的运算符是
A) % √
B) /
C) <
D) !
3、已知字母A的ASCⅡ码为十进制的65,下面程序的输出是
main()
{ char ch1,ch2;
ch1='A'+'5'-'3'; ch2='A'+'6'-'3';
fun3(int x)
{ static int a=3;
a+=x;
return(a); } main() { int k=2,m=1,n;
n=fun3(k); n=fun3(m); printf("%d\n",n);
}
A)3
B)4
C)6 √
6
D)9
16. 下面程序的输出是
main()
{ int a[3][4]={1,3,5,7,9,11,13,15,17,19,21,23};
int fun1(char *x)
{ char *y=x;
while(*y++);
return(y-x-1);
} A)求字符串的长度 √
B)比较两个字符串的大小
C)将字符串X复制到字符串Y
D)将字符串X连接到字符串Y后面4
10. 若fp是指向某文件的指针,且已读到该文件的末尾,则feof( fp)的返回是
}while(!(--x));
A)1
B)3 0
}
A)100
B)160
C)120
D)64√
14. 下面程序的输出是
main()
{ struct cmplx {int x; inf y;}cnum[2]={1,3,2,7};
printf("%d\n",cnum[0].y/cnum[0].x*cnum[1].x);
}
A)0
B)1
C)3
D)6 √
15. 下面程序的输出是
C) 0 4 5 15√
D) 1 4 5 15
8、下面程序的输出是
main()
{ int a=-1,b=4,k;
k=(a++<=0)&&(!(b--<=0));
printf("%d%d%d%\n",k,a,b);
} A) 0 0 3
B) 0 1 2
C) 1 0 3 √
D) 1 1 2
9、下列函数的功能是
A)printf(“%c\n”,class[3].name); B)printf(“%c\n”,class[3].name[1]);
C)printf(“%c\n”,class[2].name[1]); D)printf(“%c\n”,clsaa[2].name[0]); √
12. 下面程序的输出是
main()
printf("%d,%c\n",ch1,ch2);
}
A) 67,D √
B) B,C
C) C,D
D) 不确定的值
2
4、下面程序的输出是
main()
{ int x=10,y=3;
printf("%d\n",y=x/y);
}
A) 0
B) 1
C) 3 √
D) 不确定的值
5、 若执行下面的程序时从键盘上输入13和14,则输出是
相关文档
最新文档