C语言程序设计A期末模拟试题三

合集下载

2020年电大本科C语言程序设计A期末考试试题及答案

2020年电大本科C语言程序设计A期末考试试题及答案

2020年电大本科C语言程序设计A期末考试试题及答案2020年电大本科C语言程序设计A期末考试试题及答案| 本科《C语言程序设计A》复习资料一、单选题1.在每个C语言程序中都必须包含有这样一个函数,该函数的函数名为(A)。

A. mainB. MAINC. nameD. function 2.每个C语言程序文件的编译错误分为(B)类。

A. 1B. 2C. 3D. 4 3. 字符串“a+b=12\n“的长度为(B)。

A. 6B. 7C. 8D. 9 4. 在switch语句的每个case块中,假定都是以break语句结束的,则此switch语句容易被改写为(D)语句。

A. forB. whileC. doD. if 5. 在下面的do-while循环语句中,其循环体语句被执行的次数为(C)。

int i=0; do i++; while(i A. 8 B. 9 C. 10 D. 11 6. 将两个字符串连接起来组成一个字符串时,选用的字符串函数为(C)。

A. strlen()B. strcpy()C. strcat()D. strcmp() 7. 若用数组名作为函数调用的实参,传递给形参的是(A)。

A. 数组的首地址B. 数组中第一个元素的值C. 数组中全部元素的值D. 数组元素的个数8. 假定a为一个整数类型的数组名,整数类型的长度为4,则元素a的地址比a数组的首地址大(C)个字节。

A. 4B. 8C. 16D. 32 9. 假定s被定义为指针类型char *的变量,初始指向的字符串为“Hello world!“,若要使变量p指向s所指向的字符串,则p应定义为(A)。

A. char *p=s;B. char *p=C. char *p;p=*s;D. char *p; p= 10. 从一个数据文件中读入以换行符结束的一行字符串的函数为(B)。

A. gets()B. fgets()C. getc()D. fgetc() 11.程序运行中需要从键盘上输入多于一个数据时,各数据之间默认使用(D)符号作为分隔符。

《C语言程序设计》期末笔试模拟试卷及参考答案

《C语言程序设计》期末笔试模拟试卷及参考答案
11.若有定义:
typedef char* string;
#define str char *
int a=4;
struct{
int x,*y;
}z={10,&a},*p=&z;
则如下不等价的是:(11)A
A.string name,sign;与 strname,sign; B.*p->y++与*(p->y++)
};
B.intb[3][3]={{1,2,3},4,5,6,7,{8,9}};
C. float c[sizeof(sin(1))]={1,‘\n’};
D.char ch[ ][10]={“Beijing”,“Nanjing”},*p[ ]={ ch[0],ch[1]};
2.如下哪个程序语法、语义都正确,且能获得正确的运行结果(2)A
case red : col++;
case green : col++;break;
case red+green : col++;
}
printf(“%d”,col);
}
13.已知某函数内有声明:“int a[3][3], (*ptr)[3]=a, *p=a;”,则下列(13)能正确引用数组元素a[1][2]。B
5.
6.
7.
3. 若有声明:enumd{e,s,w,n}c=s;则表达式“ops”+c值的类型是(3)。B
A.enumdB.char *C.intD.int *
4.下列叙述中除(4)之外都是正确的。B
A.引用函数说明中指定的形参名,不必与函数定义中对应的形参名相同。

国家开放大学C语言程序设计A第三次形考任务及答案

国家开放大学C语言程序设计A第三次形考任务及答案

一、选择题(共30分,每小题2分)在下面的函数声明语句中,存在着语法错误的是()。

a. AA(int a, int b)b. AA(int, int)c. AA(int a; int b)d. AA(int a, int)题目2在下面的保留字中,不能作为函数的返回值类型的是()。

a. voidb. intc. enumd. long题目3假定p是一个指向float型数据的指针,则p+1所指数据的地址比p所指数据的地址增加的字节数为( )。

a. 1b. 2c. 4d. 8题目4假定a为一个数组名,在下面的表达式中,存在语法错误的是( )。

a. a[i]b. *a++c. *ad. *(a+1)用calloc函数创建具有10个整型元素的一维数组的正确语句是()。

a. int *p=calloc(10,2);b. int *p=calloc(10);c. int *p=calloc(10,4);d. int *p=malloc(10)题目6假定变量m定义为“int m=7;”,则下面正确的语句为()。

a. int p=&m;b. int *p=&m;c. int &p=*m;d. int *p=m;题目7假定k是一个double类型的变量,则定义变量p的正确语句为()。

a. double p=&k;b. int *p=&k;c. double &p=*k;d. char *p="Thank you!";题目8若有语句为“int a[10], x, *pa=a;”,要把数组a中下标为3的元素值赋给x,则不正确的语句为()。

a. x=pa[3];b. x=*(a+3);c. x=a[3];d. x=*pa+3;假定有语句为“int b[10]; int *pb;”,则下面不正确的赋值语句为()。

a. pb=b;b. pb=&b[0];c. pb=b+2;d. pb=b[5];题目10已知“int *p=malloc(100);”,要释放p所指向的动态内存,正确的语句为()。

完整word版,C语言程序设计期末考试试题(含答案)

完整word版,C语言程序设计期末考试试题(含答案)

C语言程序设计期末考试试题及其答案一、单项选择题(本大题共20题,每题2 分,共40分)1、以下不是C语言的特点的是( )A、C语言简洁、紧凑B、能够编制出功能复杂的程序C、C语言可以直接对硬件进行操作D、C语言移植性好2、以下不正确的C语言标识符是( )A、ABCB、abcC、a_bcD、ab.c3、一个C语言程序是由( )A、一个主程序和若干子程序组成B、函数组成C、若干过程组成D、若干子程序组成4、一个算法应该具有“确定性”等5个特性,对另外4个特性的描述中错误的是( )A、有零个或多个输入B、有零个或多个输出C、有穷性D、可行性5、设变量a是整型,f是实型,i是双精度型,则表达式10+‘a’+i*f值的数据类型为( )A、intB、floatC、doubleD、不确定6、在C语言中,char型数据在内存中的存储形式是( )A、补码B、反码C、源码D、ASCII码7、有如下程序,输入数据:12345M678<cR>后(<CR>表示回车),x的值是( ) 。

#include<stdio.h>main(){int x;float y;scanf("%3d%f",&x,&y);}A、12345B、123C、45D、3458、若有以下定义int a,b; float x,则正确的赋值语句是( )A、a=1,b=2B、b++;C、a=b=5D、b=int(x);9、以下程序的执行结果是( )#include<stdio.h>{int i=10,j=10;printf("%d,%d\n",++i,j--);}A、11,10B、9,10C、11,9D、10,910、巳知字母A的ASCII码是65,以下程序的执行结果是( )#include<stdio.h>main(){char c1='A',c2='Y';printf("%d,%d\n",c1,c2);A、A,YB、65,65C、65,90D、65,8911、下列运算符中优先级最高的是( )A、<B、十C、%D、!=12、设x、y和z是int型变量,且x=3,y=4,z=5,则下面表达式中值为0是( ) 。

C语言程序设计模拟试题3(附答案)

C语言程序设计模拟试题3(附答案)

《C语言程序设计》模拟试卷三一、填空题。

(每空2分,共16分)1.在内存中,短整型变量占字节,单精度实型变量占字节,字符型变量占字节。

2.一个C语言文件就是由若干个组成。

3.设有以下变量定义,并已赋确定得值char w; int x; float y; double z;则表达式:w*x+z-y所求得得数据类型为。

4.若x为int类型,请以最简单得形式写出与逻辑表达式!x等价得C语言关系表达式。

5.若有如下图所示五个连续得int类型得存储单元并赋值如下图,a[0]得地址小于a[4]得地址。

p与s就是基类型为int得指针变量。

请对以下问题进行填空。

a[0] a[1] a[2] a[3] a[4]p,给s赋值,使s指向最后一个存储单元a[4]得语句就是。

(2)若指针s指向存储单元a[2],p指向存储单元a[0],表达式s-p得值就是。

二、单项选择题。

(每题2分,共40分)1.设有 int x=11; 则表达式 (x++ * 1/3) 得值就是()。

A) 3 B) 4 C) 11 D) 122.下列程序得输出结果就是()。

A) 3 B) 3、2 C) 0 D) 3、07main(){double d=3、2; int x,y;x=1、2; y=(x+3、8)/5、0;printf(“%d \n”, d*y);}3.下列程序执行后得输出结果就是(小数点后只写一位)()。

A) 6 6 6、0 6、0 B) 6 6 6、7 6、7C) 6 6 6、0 6、7 D) 6 6 6、7 6、0main(){ double d; float f; long l; int i;i=f=l=d=20/3;printf("%d %ld %f %f \n", i,l,f,d);scanf("%d",&d);}4.下列变量定义中合法得就是()。

A) short _a=1-、le-1; B) double b=1+5e2、5;C) long do=0xfdaL; D) float 2_and=1-e-3;5.设 int x=1, y=1; 表达式(!x||y--)得值就是()。

《C语言程序设计》期末笔试模拟试卷及参考答案

《C语言程序设计》期末笔试模拟试卷及参考答案

《C语言程序设计》期末笔模拟试卷(本试卷满分60分)院系学号姓名1. 答案均写在答题纸上,写在卷面上无效;2. 答题结束后将试卷及答题纸全部交给监考教师;一、单选题 (1分×16,共16分)1. 下面 (1) 是正确的局部数组声明CA. char a[][5]={“math”,“phy”,“chemi” };B. int b[3][3]={{1,2,3},4,5,6,7,{8,9}};C. float c[sizeof(sin(1))]={1,‘\n’};D. char ch[ ][10]={“Beijing”,“Nanjing”},*p[ ]={ ch[0],ch[1] };2. 如下哪个程序语法、语义都正确,且能获得正确的运行结果(2) A3. 若有声明:enum d{ e,s,w,n}c=s;则表达式“ops”+ c值的类型是 (3) 。

B A. enum d B. char * C. int D. int *4. 下列叙述中除 (4) 之外都是正确的。

BA.引用函数说明中指定的形参名,不必与函数定义中对应的形参名相同。

B.不能用extern定义一个外部变量、数组。

C. 无论在函数外还是在函数内说明引用本程序中定义的函数,都可不写extern关键字。

D.用extern说明引用一个外部数组时,可以不给出数组大小。

5. 下列能正确执行的程序是: (5) A6. 对于二维数组定义: int a[i][j]; (i、j均为常量),且有:0≤m<i,0≤n<j , 则下列除 (6) 外,都是不等价的。

BA. a+m 与 a[0]+mB. a+m 与 *(a+m)C. *(a+m) 与 *a[m]D. *a 与 *a[0]7. 若程序中有声明:“float a,b[3][4];”与引用函数的说明:“int fun(floatk[][3]),int n);”则下列 (7) 都是常量或常量表达式。

大学《C语言程序设计》期末考试试卷及参考答案

大学《C语言程序设计》期末考试试卷及参考答案

大学《C语言程序设计》期末考试试卷及参考答案《C语言程序设计》期末考试试卷参考答案一、判断题(10分)1、对2、对3、错4、错5、对6、错7、错8、错9、错10、错二、填空题(30分,,1到10题1分1空,10到18题2分1空)1.2.5 2. a!=0&&b!=0 3. m=1b 4. windows 95 5. x[i]>='A'&&x[i]<='Z' 6.234567 7.文件的首纪录前8、struct tree *Ltree,*Rtree 9. i<=10010. char a[10]="continue"; 11. p*pow(1+r,5) 12. 'D' 13. 10、514.#define utol(ch) ch=ch>='A'&& ch<='Z' ? ch+'a'-'A':ch15.首行第i+1个元素的地址,第i+1行的首地址,a[0][0]的值16.p=(int*)mallo(n);17. (-b+sqrt(b*b-4*a*c))/2/a 18. float(*fg)(float **,int,int);三、单项选择题(在每小题的四个备选答案中选出一个正确的,10分))1、A2、B3、C4、B5、D6、A7、A8、B9、C 10、A四、程序阅读题(20分,每题4分)1、 A C E G2、 x=3 y=23、the two string are same:fthe two string are same:r4、 K=85、1《C语言程序设计》期末考试试卷及参考答案一、判断题(10分)1、C语言是一种结构化程序设计语言。

()2、在标准C中,整型变量与字符变量是可以通用的。

()3、在标准C中,“=”是判断两个数是否相等。

安徽大学计算机科学与技术专业2018-2019学年第2期《C语言程序设计》(A卷)期末考试【含答案】

安徽大学计算机科学与技术专业2018-2019学年第2期《C语言程序设计》(A卷)期末考试【含答案】

装………. ………. ……….…………….….订………. ………. ……….…………….…. ………. ………. ……….…………….….线………. ………. ……….…………….….《C 语言程序设计》第 1 页共 5 页此处不能书写此处不能书写此处不能书写 此处不能书写《C 语言程序设计》(A 卷)期末考试班级名称:学号:姓名:题号 一 二 三 四 五 总分 分数得 分一、单项选择题(每题2分,共20分)1. 执行程序:int a;printf(“%d \n ”,(a=3*5,a*4,a+5));后,a 的值是( ) A 、60B 、20C 、15D 、102. 程序段:int x=023;printf(“%d \n ”,--x)的输出是( ) A 、19B 、18C 、23D 、223. 程序段:static char s[10]={‘C ’,’h ’,’i ’,’n ’,’a ’};printf(“%d \n ”,strlen(s));输出的是( ) A 、6B 、5C 、11D 、104.若fun(int x){printf(“%d,x ”);},则fun ( )5.有宏定义:#define MULT1(a,b) a*b #define MULT2(a,b) (a)*(b)且引用宏:y=MULT1(3+2,5+8);z=MULT2(3+2,5+8);则y 和z 的值是( )A 、y=65,z=65B 、y=21,z=65C 、y=65,z=21D 、y=21,z=216. 程序段char s[]=”Hello ”,*p;p=s;执行后,*(p+5)的值是( ) A 、’o ’B 、’\0’C 、’0’的地址D 、不确定的值7. 程序段:char *s=”ABCD ”,*p for(p=s;*p;p++) printf(“%s\n ”,p);的输出是( )A 、 ABCD BCD CD DB 、 A BC DC 、D C B AD 、 ABCD ABC AB A8. 若定义:int(*p)[3];则标识符p ( ) A 、定义不合法B 、是一个指针数组名,每个元素是一个指向整型变量的指针C 、是一个指针,它指向一个具有三个元素的一维数组装………. ………. ……….…………….….订………. ………. ……….…………….…. ………. ………. ……….…………….….线………. ………. ……….…………….….《C 语言程序设计》第 2 页共 5 页此处不能书写此处不能书写此处不能书写 此处不能书写( ) A 、p.data.aB 、(*p).aC 、p->data.aD 、(*p).data.a10. 以二进制只读方式打开一个已有的文本文件file1,正确调用fopen 函数的方式是( )A 、 FILE *fp;fp=fopen(“file1”,”rb ”); B 、 FILE *fpfp=fopen(“file1”,”r+);C 、 FILE *fp;fp=fopen(“file1”,”r ”);D 、 FILE *fp;fp=fopen(“file1”,”rb+”);得 分二、填空题(每空1分,共20分)1. C 程序一个函数的定义由( )和( )两部分组成。

C语言程序设计A期末模拟试题(1-4)

C语言程序设计A期末模拟试题(1-4)

C 语言程序设计A 期末模拟试题一 一、单项选择题(每小题2分,共20分) 1. 由C++目标文件连接而成的可执行文件的缺省扩展名为( )。

A. cpp B. exe C. obj D. lik 2. x >0 && x<=10的相反表达式为( )。

A. x<=0 || x>10 B. x<=0 && x>10 C. x<=0 || x<=10 D. x>0 && x>10 3. 在下面的一维数组定义中,哪一个有语法错误。

( C ) A. int a[]={1,2,3}; B. int a[10]={0}; C. int a[]; D. int a[5]; 4. 假定p 是具有double 类型的指针变量,则表达式++p 使p 的值(以字节为单位)增加( C )。

A. 1 B. 4 C. sizeof(double) D. sizeof(p) 5. 当#include 后面的文件名用双引号括起来时,寻找被包含文件的方式是( B )。

A. 直接按系统设定的标准方式搜索目录 B. 先在源程序所在目录搜索,再按系统设定的标准方式搜索目录 C. 仅仅搜索源程序所在目录 D. 搜索当前逻辑盘上的所有目录 6. 假定指针变量p 定义为“int *p=new int(100);”,要释放p 所指向的动态内存,应使用语句( A )。

A. delete p; B. delete *p; C. delete &p; D. delete []p; 7. 假定AA 为一个类,a 为该类公有的数据成员,px 为指向该类对象的一个指针,则访问px 所指对象中数据成员a 的格式为( )。

A. px(a) B. px[a] C. px->a D. px.a 8. 栈具有( )的操作特性。

A. 先进先出 B. 先进后出 C. 进出无序 D. 进出任意 9. 对于任一个类,用户所能定义的构造函数的个数至多为( )。

《C语言程序设计》模拟试卷3

《C语言程序设计》模拟试卷3

《C 语言程序设计》模拟试卷3考试班级:一、判断题(2’×10=20’)1、C 语言源程序文件的扩展名均为.c 。

( )2、所谓常量,就是在程序运行过程中其值可以改变的量。

( )3、一个C 语言程序总是从main 函数开始执行。

( )4、若int i=10,j=2;则执行i*=j+8;后i 的值为28。

( )5、在C 语言中do-while 至少执行1次。

( )6、算术运算符中‘%’的优先级高于‘*’。

( )7、int a[10];该语句表明数组a 中的第十个元素为a[10]。

( ) 8、函数putchar()的作用是:输入一个字符。

( )9、C 语言程序区分大小写。

( )10、在函数调用中将数组名字作为实参时,实现的是单向的值传递。

() 二、单项选择题(2’×15=30’)1、以下定义字符常量PI 语句正确的为( )。

A 、define PI 3.14B 、define PI= 3.14C 、#define PI=3.14D 、#define PI 3.142、在C 语言中,要求运算量必须是整型的运算符是( )。

A 、!B 、++C 、!=D 、%3、下列四个选项中,均是不合法的用户标识符是( )。

A 、A P_0 doB 、float lao _AC 、b-a if intD 、_123 temp INT4、C 语言的三种基本结构是( )。

A 、顺序结构、逻辑结构、选择结构B 、顺序结构、选择结构、循环结构C 、逻辑结构、层次结构、网状结构D 、层次结构、顺序结构、循环结构 系部:班级:学号:姓名:5、下列有关函数的叙述中,不正确的是()。

A、函数可以有返回值,也可以有参数B、函数可以没有返回值,也可以有参数C、函数可以没有返回值,也可以没有参数D、函数必须有返回值,也必须有参数6、设变量a是int型,f是float型,i是double型,则表达式10+′a′+i*f值的数据类型为()。

C语言期末试卷及答案A

C语言期末试卷及答案A

XX 学院试卷《C语言程序设计试卷》试卷(A卷)一、填空题(每题2分,共10×2=20分)1、除机器语言之外的其他语言要被机器识别,必须经过翻译的过程,翻译有编译和解释两种,C语言所采用的是翻译方式。

2、C语言是函数驱动的,组成C语言程序的基本单位是。

3、C语言的入口函数是函数,且程序亦结束于该函数。

(填写英文)4、在函数体中,一条C语言语句均以结尾。

(填写符号)5、C程序的调试过程包括:→→→四个步骤。

6、基本数据类型包括:整数类型、浮点类型、和枚举类型。

7、浮点型包括单精度型和。

8、变量命名时,在能取得符号中,不能以开头。

9、63%10= 。

10、有数组定义如:int x[10];则数组的第三个元素应表示为。

二、单选题(每小题1分,多选,错选都不得分;共15×1=15分)1、C语言中主函数的个数是( )A、1个B、2个C、6个D、任意多个2、以下不属于C语言基本数据类型的是( )。

A、字符型B、浮点型C、整型D、空类型3、下面关于字符常量和字符串常量的叙述中错误的是( )。

A、字符常量由单引号括起来,字符串常量用双引号括起来B、字符常量只能是单个字符,而字符串常量则可以包含一个或多个字符C、字符常量占用一个字节的内存空间,字符串常量占的内存字节数等于字符串中字节数D、可以把一个字符常量赋值给一个字符变量,但不能把一个字符串常量赋予一个字符变量4、设有变量说明:float x=4.0,y=4.0;。

下面使x为10.0的表达式是( )。

A、x -=y*2.5B、x/=y+9C、x*=y-6D、x+=y+25、下列程序段的输出结果是( )。

char c1,c2;c1=65;c2=65+32+1;printf(“%c,%c”,c1,c2);A、a,BB、A,BC、A,bD、a,b6、以下运算符为单目运算符的是( )。

A、!B、&&C、%D、?:7、以下哪项不属于结构化程序设计方法的特点( )。

C语言程序设计期末考试卷A答案

C语言程序设计期末考试卷A答案

C语言程序设计期末考试卷A答案北京信息科技大学2022~2022学年第一学期《C语言程序设计》课程期末考试试卷(A卷)授课系别:_计算机学院_适用班级:_计科所有班级_考试形式:_闭卷_班级:姓名:学号:题号得分一二三四五六七总分一:填空题:(每题2分,共10题)1、结构化程序设计的基本结构有三种,分别是顺序结构、选择结构和循环结构。

2、有如下程序:voidmain(){intk=1,n=263;do{k某=n;n/=10;}while(n);printf(\}则k值为____36______。

3、有如下程序chara[]=\的值为____6_____。

4、函数直接或间接的调用自己成为函数的________递归调用__________。

5、有如下定义:taticinta[6]={1,2,3,4,5,6};int某p=a+1;p++;则某(p+1)的值为____4______。

6、有以下程序:#defineA4#defineB(某)A某某/2voidmain(){floatc,a=4.5;c=B(a);printf(\}则c的值为___9.0_____。

7、C语言的变量值存在时间角度来分,可以分为__动态__存储方式和___静态__存储方式。

8、C语言可以定义枚举类型,其关键字为enum9、写出下面程序的运算结果。

tructk{inta;}[4],某p;voidmain(){intn=1,i;for(i=0;i<4;i++){[i].a=n;n=n+2;}p=&[0];p++;printf(\}p->a的值为__________3__________。

10、C语言打开文件的函数是_____fopen_______,关闭文件的函数是______fcloe_______。

二单项选择题:(每题2分,共12题)1:以下程序片段_____D______。

voidmain(){int某=0,y=0,z=0;if(某=y+z)printf(\eleprintf(\}A)有语法错误,不能通过编译B)输出:某某某C)可以编译,但不能通过连接,所以不能运行D)输出:###2:若w=1,某=2,y=3,z=4,则条件表达式w>某w:yvoidmain(){int某=-1,y=4,k;k=(某++<=0)&&!(y--<=0);printf(\}A)0,0,3B)0,1,2C)1,0,3D)1,1,24:以下不是死循环的程序段是DA)inti=100;B)for(;;);while(1){i=i0+1;if(i>100)break;}C)intk=0;D)int=36;do{++k;}while(k>=0);while();--;5:下列程序运行结果为:_____C______。

C语言程序设计期末考试试题(含答案)

C语言程序设计期末考试试题(含答案)

C语言程序设计期末考试试题及其答案一、单项选择题(本大题共20题,每题2 分,共40分)1、以下不是C语言的特点的是( B)A、C语言简洁、紧凑B、能够编制出功能复杂的程序C、C语言可以直接对硬件进行操作D、C语言移植性好2、以下不正确的C语言标识符是(D )A、ABCB、abcC、a_bcD、ab.c3、一个C语言程序是由(B )A、一个主程序和若干子程序组成B、函数组成C、若干过程组成D、若干子程序组成4、一个算法应该具有“确定性”等5个特性,对另外4个特性的描述中错误的是(B )A、有零个或多个输入B、有零个或多个输出C、有穷性D、可行性5、设变量a是整型,f是实型,i是双精度型,则表达式10+‘a’+i*f值的数据类型为(C )A、intB、floatC、doubleD、不确定6、在C语言中,char型数据在内存中的存储形式是(D )A、补码B、反码C、源码D、ASCII码7、有如下程序,输入数据:12345M678<cR>后(<CR>表示回车),x的值是( B) 。

#include<stdio.h>main(){int x;float y;scanf("%3d%f",&x,&y);}A、12345B、123C、45D、3458、若有以下定义int a,b; float x,则正确的赋值语句是(B )A、a=1,b=2B、b++;C、a=b=5D、b=int(x);9、以下程序的执行结果是( A)#include<stdio.h>{int i=10,j=10;printf("%d,%d\n",++i,j--);}A、11,10B、9,10C、11,9D、10,910、巳知字母A的ASCII码是65,以下程序的执行结果是( D)#include<stdio.h>main(){char c1='A',c2='Y';printf("%d,%d\n",c1,c2);A、A,YB、65,65C、65,90D、65,8911、下列运算符中优先级最高的是( C)A、<B、十C、%D、!=12、设x、y和z是int型变量,且x=3,y=4,z=5,则下面表达式中值为0是( D) 。

C程序设计期末考试习题(含答案)

C程序设计期末考试习题(含答案)

C程序设计期末考试习题(含答案)c语言程序设计期末试题A(含答案)一、单项挑选题(挑选一个最佳答案,每题2分,共20分)1.一个C程序的执行是从( )。

A) 本程序的main函数开头,到main函数结束B) 本程序文件的第一个函数开头,到本程序文件的最后一个函数结束C) 本程序的main函数开头,到本程序文件的最后一个函数结束D) 本程序文件的第一个函数开头,到本程序main函数结束2.下列选项中,不能用作标识符的是( )。

A) _1234_ B) _1_2 C) int_2_ D) 2_int_3.以下定义语句中正确的是( )。

A) char a='A'b='B'; B) float a=b=10.0;C) int a=10,*b= D) float *a,b=4.设有以下定义:#define d 2int a=0; double b=1.25; char c=’A’;则下面语句中错误的是()。

A) a++; B) b++ C) c++; D) d++;5.以下4个选项中,不能作为一条C语句的是( )。

A) {;} B) a=0,b=0,c=0; C) if(a>0); D) if(b==0) m=1;n=2;6.有以下定义语句double a,b; int w; long c;若各变量已正确赋值,则下列选项中正确的表达式是( )。

A) a=a+b=b++ B) w%(int)a+b) C) (c+w)%(int)a D) w=a==b;7.设有定义:int n=0,*p=则以下选项中,正确的赋值语句是( )。

A) p=1; B) *q=2; C) q=p; D) *p=5;8.设有定义:int a,*pa= 以下scanf语句中能正确为变量a读入数据的是( )。

A) scanf(“%d”,pa) ; B) scanf(“%d”,a) ;C) scanf(“%d”, D) scanf(“%d”,*pa);9.若有说明:char*language[]={”FORTRAN”,”BASIC”,”PASCAL”,”JA V A”,”C”};则表达式*language[1]>*language[2]比较的是()。

2019-北京理工大学-成教-《C语言程序设计》期末测试卷 (3)

2019-北京理工大学-成教-《C语言程序设计》期末测试卷 (3)

[试题分类]:C语言程序设计1.下列选项中,不属于C语言特点的是A. 能实现汇编语言的大部分功能B. 语言简洁、紧凑、使用方便C. 数据类型丰富,可移植性好D. 有较强的网络操作功能答案:D题型:单选题知识点:第2章 C语言概述难度:12.下列选项中,正确的C语言标识符是A. \nB. %dC. _123D. #define答案:C题型:单选题知识点:第2章 C语言概述难度:13.在C语言中,错误的int类型常数是A. 0B. 038C. 0xAFD. 32765答案:B题型:单选题知识点:第3章数据类型与运算规则难度:14.若有定义“int x=5,y=5,z=5;”,执行语句“x%=y+z;”后,x的值是A. 6B. 5C. 1D. 0答案:B题型:单选题知识点:第3章数据类型与运算规则难度:25.若有定义“int x=3,y=4,z=5;”,则下列表达式中值不为1的是A. 'x'&&'y'B. x<=yC. x||y+z&&y-zD. !((x<y)&&!z||1)答案:D题型:单选题知识点:第3章数据类型与运算规则难度:26.逗号表达式“(a=3*5,a*4),a+15”的值是A. 15B. 60C. 30D. 不确定答案:C题型:单选题知识点:第3章数据类型与运算规则难度:27.若有定义“int i=1,j=2,k=3;”,则执行下列语句后的输出结果是if(i++==1&&(++j==3||k++==3))printf("%d %d %d\n",i,j,k);A. 1 2 3B. 2 3 4C. 2 2 3D. 2 3 3答案:D题型:单选题知识点:第5章选择结构的程序设计难度:28.{若有定义“int x=1,y=1,m=1,n=0;”,则执行下列语句后,变量x和y的值分别是 switch (m) \{case 0: x=x*2;case 1:switch (n) \{case 1: x=x*2;case 2: y=y*2; break;default: x++;\}case 2: x++; y++;case 3: x*=2; y*=2; break;default: x++;y++;\}}A. x=6,y=4B. x=2,y=1C. x=3,y=2D. x=7,y=5答案:A题型:单选题知识点:第5章选择结构的程序设计难度:29.语句序列“int i,j; for (i=0, j=1; i<=j+1; i+=2,j--) printf ("%d\n",i);”执行后i的值是A. 3B. 2C. 1D. 0答案:B题型:单选题知识点:第6章循环结构的程序设计难度:210.若有定义“int n=4;”,则执行语句“while(n--) printf("%d",--n);”后的输出结果是A. 20B. 31C. 210D. 321答案:A题型:单选题知识点:第6章循环结构的程序设计难度:211.{若有定义“int x=3;”,则执行下列语句后的输出结果是do \{printf("%d ",x-=2);\} while(!(--x));}A. 1B. 3 0C. 1 -2D. 死循环答案:C题型:单选题知识点:第6章循环结构的程序设计难度:212.下列关于数组定义、初始化或赋值语句中,正确的是A. int x[5]={1,2,3,4,5,6};B. int n=8; int score[n];C. int a[8]; a[8]=100;D. int x[]={1,2,3,4,5,6};答案:D题型:单选题知识点:第7章数组难度:113.{若有定义“int a[3][3]=\{0,1,2,0,1,2,0,1,2\}, i,j,s=0;”,则执行下列语句后,变量s的值是for(i=0;i<3;i++)for(j=i;j<=i;j++)s=s+a[i][a[j][j]];}A. 9B. 4C. 3D. 1答案:C题型:单选题难度:214.C语言程序中,调用函数时A. 实参和形参共用一个存储空间B. 实参和形参各自占用一个独立的存储空间C. 由用户指定实参和形参是否共用存储空间D. 由系统指定实参和形参是否共用存储空间答案:B题型:单选题知识点:第8章函数难度:115.下述函数首部定义形式正确的是A. int f(int x,y)B. int f(int x; int y)C. int f(x,y: int)D. int f(int x, int y)答案:D题型:单选题知识点:第8章函数难度:116.若p1和p2为指向同一字符串的指针变量,c为字符变量,则下列语句中,不能正确执行的是A. p2=cB. c=*p2C. p1=p2D. c=*p1+*p2;答案:A题型:单选题难度:217.{下列函数的功能是fun(char *p2, char *p1) \{while((*p2=*p1)!='\0') \{p1++; p2++;\}\}}A. 将p1所指字符串的地址赋值给指针p2B. 检查p1和p2所指字符串中是否有'\0'C. 对p1和p2两个指针所指字符串进行比较D. 将p1所指字符串复制到p2所指内存空间答案:D题型:单选题知识点:第9章指针难度:218.下列程序段中,枚举变量c1和c2的值分别是enum color {red, yellow, blue=4, green, white}; enum color c1=yellow, c2=white;A. 2,6B. 1,6C. 2,5D. 2,4答案:B题型:单选题知识点:第10章结构、联合与枚举类型难度:219.{若有如下定义:struct student\{int num; int age;\} data , *p=&data;则下列选项中,引用data中成员num正确的是}A. (*p).data.numB. p->data.aC. p.data.aD. (*p).a答案:D题型:单选题知识点:第10章结构、联合与枚举类型难度:220.C语言中,对文件进行存取的基本单位是A. 记录B. 字节C. 元素D. 簇答案:B题型:单选题知识点:第11章文件难度:121.若y是int型变量,则判断y为奇数的关系表达式为__________。

《C语言程序设计》(3学分)试卷A

《C语言程序设计》(3学分)试卷A

说明: 请考生将答案写在“武汉大学答题纸”上并标明题号,否则不得分。

试卷中C 语言程序的开发环境是VC 6。

一、选择题(共20小题,每小题2分,共40分)1。

以下正确的C 语言自定义标识符是______。

A ) _1aB ) 2a_C ) doD) a 。

12 2。

温度华氏和摄氏的关系是: C=95(F-32)。

已知:float C ,F ;由华氏求摄氏的正确计算的表达式是____。

A ) C=5/9(F —32) B) C=5*(F —32)/9C ) C=5/9*(F —32)D ) 三个表达式都正确3. 设float x,由键盘输入:12。

45, 能正确读入数据的输入语句是_________。

A ) scanf ("%5。

2f",&x)B ) scanf ("%d ”,&x );C ) scanf ("%f ”,&x );D ) scanf(”%f ”,x );4。

一个C 程序的执行是从( )A) main ()函数开始,直到main()函数结束B ) 第一个函数开始,直到最后一个函数结束C) 第一个语句开始,直到最后一个语句结束D ) main ()函数开始,直到最后一个函数结束5。

判断char 型变量c1是否为数字的正确表达式为 ________。

A) 0〈=c1〈=9 B ) c1〉=0 &&c1〈=9C ) ‘0’〈=c1〈='9'D ) c1〉='0'&&c1〈='9’6。

switch(表达式)语句中的“表达式",允许的类型是_________.A ) float, intB ) float , int , charC) int, char D ) char , double7. 设int i ,j , x=0;for (i=5;i;i--)for (j=0;j 〈4;j++)x++;则循环体结束后,x 的值为________.A) 5 B ) 20C) 25 D) 死循环8. 设x 和y 均为int 型变量,则执行下面的循环后,y 值为_________。

C语言程序设计模拟试题三(含答案)

C语言程序设计模拟试题三(含答案)

C语言程序设计模拟试题三(含答案)1、计算机的存储器完整的应包括A) 软盘、硬盘B) 磁盘、磁带、光盘C) 内存储器、外存储器D) RAM、ROM2、计算机中运算器的作用是A) 控制数据的输入/输出B) 控制主存与辅存间的数据交换C) 完成各种算术运算和逻辑运算D) 协调和指挥整个计算机系统的操作3、软磁盘处于写保护状态时,其中记录的信息A) 绝对不会丢失B) 不能被擦除,但能追加新信息C) 不能通过写磁盘操作被更新D) 不能以常规方式被删除,但可以通过操作系统的格式化功能被擦除4、光盘根据基制造材料和记录信息的方式不同,一般可分为A) CD、VCDB) CD、VCD、DVD、MP3C) 只读光盘、可一次性写入光盘、可擦写光盘D) 数据盘、音频信息盘、视频信息盘5、在计算机系统中,可执行程序是A) 源代码B) 汇编语言代码C) 机器语言代码D) ASCII码6、计算机软件系统包括A) 操作系统、网络软件B) 系统软件、应用软件C) 客户端应用软件、服务器端系统软件D) 操作系统、应用软件和网络软件7、目前,一台计算机要连入Internet,必须安装的硬件是A) 调制解调器或网卡B) 网络操作系统C) 网络查询工具D) WWW浏览器8、在多媒体计算机系统中,不能存储多媒体信息的是A) 光盘B) 磁盘C) 磁带D) 光缆9、要将当前盘当前目录下一个文本文件内容显示在屏幕上,正确的命令形式是A) TYPE a*.*B) TYPE abc.exeC) TYPE pro.c>PRND) TYPE abc.txt10、下列更改文件名的命令中正确的是A) REN A:file1 C:F1B) RENAME A: A:file1 C:F1C) REN A:file1 F1D) REN A:file1 \\SUB\\F111、已知A盘为DOS系统启动盘,只有A:\DOS下有自动批处理文件,其中内容为:CD\DOSMD USERCD USER由A盘启动DOS系统后,A盘的当前目录是A) \\DOS B) \\DOS\\USER12、MS-DOS是A) 分时操作系统B) 分布式操作系统C) 单用户、单任务操作系统D) 单用户、多任务操作系统13、在Windows操作系统中,不同文档之间互相复制信息需要借助于A) 剪切板B) 记事本C) 写字板D) 磁盘缓冲器14、在Windows操作系统中A) 同一时刻可以有多个活动窗口B) 同一时刻可以有多个应用程序在运行,但只有一个活动窗口C) 同一时刻只能有一个打开的窗口D) DOS应用程序窗口与Windows应用程序窗口不能同时打开着15、下列叙述中正确的是A) 所有DOS应用程序都可以在Windows操作系统中正确运行B) 所有DOS应用程序都不能在Windows操作系统中正确运行C) 大部分DOS应用程序可以在Windows操作系统中正确运行D) 为DOS5.0以上版本操作系统编写的应用程序可以在Windows操作系统中正确运行16、下列叙述中正确的是A) C语言编译时不检查语法B) C语言的子程序有过程和函数两种C) C语言的函数可以嵌套定义D) C语言所有函数都是外部函数17、以下所列的C语言常量中,错误的是A) 0xFF B) 1.2e0.518、下列选项中,合法的C语言关键字是A) VAR B) cherC) integer D) default19、以下变量x.、y、z均为double类型且已正确赋值,不能正确表示数学式子x/(y*z) 的C语言表达式是A) x/y*z B) x*(1/(y*z))C) x/y*1/z D) x/y/z20、若a为int类型,且其值为3,则执行完表达式a+=a-=a*a后,a的值是A) -3 B) 9C) -12 D) 621、设x、y、t均为int型变量,则执行语句:x=y=3;t=++x||++y;后,y的值为A) 不定值B) 4C) 3 D) 122、若变量已正确说明为float类型,要通过语句scanf("%f %f %f ",&a,&b,&c);给a赋于10.0,b赋予22.0,c赋予33.0,不正确的输入形式是:A) 10<回车>22<回车>33<回车>B) 10.0,22.0,33.0<回车>C) 10.0<回车>22.0 33.0<回车>D) 10 22<回车>33<回车>23、若执行以下程序时从键盘上输入9,则输出结果是Main0{ int n;scanf("%d",&n);if(n++<10) printf("%d\n",n);else printf("%d\n",n--);}A) 11 B) 10C) 9 D) 824、若a、b、c1、c2、x、y、均是整型变量,正确的switch语句是A) swich(a+b);{ case 1:y=a+b; break;case 0:y=a-b; break;}B) switch(a*a+b*b){case 3:case 1:y=a+b;break;case 3:y=b-a,break;}C) switch a{ case c1 :y=a-b; breakcase c2: x=a*d; breakdefault:x=a+b;}D) switch(a-b){default:y=a*b;breakcase 3:case 4:x=a+b;break;case 10:case 11:y=a-b;break;}25、有以下程序段int k=0while(k=1)k++;while 循环执行的次数是A) 无限次B) 有语法错,不能执行C) 一次也不执行D) 执行1次26、以下程序执行后sum的值是min(){ int i , sum;for(i=1;i<6;i++) sum+=i;printf("%d\n",sum);}A) 15 B) 14C) 不确定D) 027、有以下程序段int x=3do{ printf("%d",x-=2); }while (!(--x));其输出结果是A) 1 B) 3 0C) 1 -2 D) 死循环28、若变量c为char类型,能正确判断出c为小写字母的表达式是A) 'a'<=c<= 'z'B) (c>= 'a')||(c<= 'z')C) ('a'<=c)and ('z'>=c)D) (c>= 'a')&&(c<= 'z')29、以下所列的各函数首部中,正确的是A) void play(var :Integer,var b:Integer)B) void play(int a,b)C) void play(int a,int b)D) Sub play(a as integer,b as integer)30、以下程序的输出结果是fun(int x, int y, int z){ z=x*x+y*y; }main(){ int a=31;fun(5,2,a);printf("%d",a);}A) 0 B) 29C) 31 D) 无定值31、下列程序段的输出结果是void fun(int *x, int *y){printf("%d %d", *x, *y); *x=3; *y=4;}{ int x=1,y=2;fun(&y,&x);printf("%d %d",x, y);}A) 2 1 4 3 B) 1 2 1 2C) 1 2 3 4 D) 2 1 1 232、下列程序的输出结果是main(){char a[10]={9,8,7,6,5,4,3,2,1,0},*p=a+5; printf("%d",*--p);}A) 非法B) a[4]的地址C) 5 D) 333、下列程序的运行结果是void fun(int *a, int *b){ int *k;k=a; a=b; b=k;}main(){ int a=3, b=6, *x=&a, *y=&b;fun(x,y);printf("%d %d", a, b);}A) 6 3 B) 3 6C) 编译出错D) 0 034、下面程序的输出结果是{int a[ ]={1,2,3,4,5,6,7,8,9,0,},*p;p=a;printf("%d\n",*p+9);}A) 0 B) 1C) 10 D) 935、当调用函数时,实参是一个数组名,则向函数传送的是A) 数组的长度B) 数组的首地址C) 数组每一个元素的地址D) 数组每个元素中的值36、设有以下说明语句struct ex{ int x ; float y; char z ;} example;则下面的叙述中不正确的是A) struct结构体类型的关键字B) example是结构体类型名C) x,y,z都是结构体成员名D) struct ex是结构体类型37、以下只有在使用时才为该类型变量分配内存的存储类说明是A) auto和staticB) auto和registerC) register和staticD) extern和register38、若fp是指向某文件的指针,且已读到文件末尾,则库函数feof(fp)的返回值是A) EOF B) -1C) 非零值D) NULL39、以下程序的输出结果是main(){ int i, k, a[10], p[3];k=5;for (i=0;i<10;i++) a[i ]=i;for (i=0;i<3;i++) p[i ]=a[i *(i+1)];for (i=0;i<3;i++) k+=p[i] *2;printf("%d\n",k);}A) 20 B) 21C) 22 D) 2340、以下程序的输出结果是main(){ int i, 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,7C) 3,5,7 D) 3,6,941、以下程序的输出结果是main(){ int a[3][3]={ {1,2},{3,4},{5,6} },i,j,s=0; for(i=1;i<3;i++)for(j=0;j<=i;j++)s+=a[i][j];printf("%dn",s);}A) 18 B) 19 C) 20 D) 2142、以下程序的输出结果是main(){ char w[][10]={ "ABCD","EFGH","IJKL","MNOP"},k;for(k=1;k<3;k++)printf("%s\n",w[k]);}A) ABCDFGHKLB) ABCDEFGIJMC) EFGJKOD) EFGHIJKL43、当执行下面的程序时,如果输入ABC,则输出结果是#include "stdio.h"#include "string.h"main(){ char ss[10]="1,2,3,4,5";gets(ss); strcat(ss, "6789");printf("%s\n",ss);}A) ABC6789 B) ABC67C)12345ABC6 D) ABC45678944、假定以下程序经编译和连接后生成可执行文件PROG.EXE,如果在此可执行文件所在目录的DOS提示符下键入:PROG ABCDEFGH IJKL<回车>,则输出结果为main( int argc, char *argv[])){ while(--argc>0) printf("%s",argv[argc]);printf("\n");}A) ABCDEFG B) IJHLC) ABCDEFGHIJKL D) IJKLABCDEFGH45、以下程序的输出结果是long fun( int n){ long s;if(n= =1 || n= =2) s=2;else s=n-fun(n-1);return s;}main(){ printf("%ld\n", fun(3)); }A) 1 B) 2C) 3 D) 446、以下程序的输出结果是#define SQR(X) X*Xmain(){ int a=16, k=2, m=1;a/=SQR(k+m)/SQR(k+m);printf("d\n",a);}A) 16 B) 2C) 9 D) 147、若定义了以下函数:void f(……){……*p=(double *)malloc( 10*sizeof( double));……}p是该函数的形参,要求通过p把动态分配存储单元的地址传回主调函数,则形参p的正确定义应当是A) double *p B) float **pC) double **p D) float *p48、以下程序的输出是struct st{ int x; int *y;} *p;int dt[4]={ 10,20,30,40 };struct st aa[4]={ 50,&dt[0],60,&dt[0],60,&dt[0],60,&dt[0],};main(){ p=aa;printf("%d\n",++(p->x));}A) 10 B) 11C) 51 D) 6049、假定建立了以下链表结构,指针p、q分别指向如图所示的结点,则以下可以将q所指结点从链表中删除并释放该结点的语句组是A) free(q); p->next=q->next;B) (*p).next=(*q).next; free(q);C) q=(*q).next; (*p).next=q; free(q);D) q=q->next; p->next=q; p=p->next; free(p);50、以下程序的输出结果是main(){ int x=0.5;char z='a';printf("%d\n", (x&1)&&(z<'z') ); }A) 0 B) 1C) 2 D) 3答案:CCCCC BADDCCCABC DBDACCBBDA CCDCCACBCB BBCBCADADA BCCBB。

C语言程序设计模拟试卷及答案(3)

C语言程序设计模拟试卷及答案(3)

自考C语言程序设计模拟试卷及答案(3)一、单项选择题1B 2B 3D 4C 5D 6C 7A8C 9D 10A 11C 12D 13B 14D 15A 16B 17D 18B 19A 20C 21CB 1. 设int x=1,y=1;表达式(!x++ || y-—)的值是____B_____A.0 B。

1 C。

2 D.-1C 2.main(B){ int n;( n=6*4,n+6),n*2;printf(“n=%d\n",n);}此程序的输出结果是______C________。

A。

30 B。

24 C. 60 D. 48D 3.若有如下定义,则_____D_____是对数组元素的正确的引用。

int a[10], *p ;p=a ; p=a ; p=a ; p=a ;A。

*&a[10] B. a[11] C. *(p+10) D. *pC 4。

设整型变量n的值为2,执行语句“n+=n—=n*n;”后,n的值是__________A. 0 B。

4 C。

— 4 D。

2D 5.以下不能正确定义二维数组的语句是___________A 。

int a[2][2]={{1},{2}}; B. int a[][2]={1,2,3,4};C。

int a[2][2]={{1},2,3}; D. int a[2][]={{1,2},{3,4}};C D 6. 程序段的功能是将变量 u 、s中的最大值赋给变量t 。

A。

if(u>s) t=u;t=s; B。

t=u; if(t ) t=s;C. if(u>s) t=s;else t=u; D 。

t=s; if(u ) t=u;A 7.下列程序段的输出结果是。

void main(){ int k;for (k=1;k<5;k++〉{ if(k%2!=0)printf(“#”);elseprintf(“*"); }}A。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
IntNode *p=f;
f=f->next;
while(f) {
if(f->data>p->data) p=f;
f=f->next;
3. #include<iostream.h>
#include<math.h>
void main()
{
int x,y;
cin>>x;
y=int(sqrt(x)); //sqrt(x)为求x的算术平方根
A. int rx=x; B. int rx=&x; C. int *rx=&x; D. int &rx=x;
面向对象方法的多态性是指( )。
A. 一个类可以派生出多个特殊类
B. 一个对象在不同的运行环境中可以有不同的变体
char a[5][10]={"student","worker","soldier","cadre","peasant"};
char s1[10], s2[10];
strcpy(s1,a[0]); strcpy(s2,a[0]);
for(int i=1;i<5;i++) {
ss[i]=ss[n–1–i];
ss[n–1–i]=c;
}
}
(1) (2) (3)
3. 已知一维数组类ARRAY的定义如下,构造函数的作用是把参数n的值赋给s,给v动态分配长度为n的数组空间,接着利用数组参数a初始化v所指向的数组。
if(strcmp(a[i], s1)>0) strcpy(s1,a[i]);
if(strcmp(a[i], s2)<0) strcpy(s2,a[i]);
}
cout<<s1<<’ ’<<s2<<endl;
}
for(int i=0; i<n; i++) a[i]=aa[i];
}
~A() {delete []a;}
int GetValue(int i) ___(2)___ //函数体返回a[i]的值
};
void main()
for(int i=1;i<=y;i++)
if(x%i==0) cout<<”x=”<<i<<’*’<<x/i<<endl;
}
4. IntNode* FindMax(IntNode *f)
{
if(!f) return NULL;
cout<<”逆序后的字符串:”<<s<<endl ;
}
void fun(char ss[]) {
int n=strlen(ss);
for(int i=0; ___(3)____; i++) {
char c=ss[i];
C. 针对一消息,不同的对象可以以适合自身的方式加以响应
D. 一个对象可以是由多个其他对象组合而成的
面向对象软件开发中使用的OOD表示( )。
A. 面向对象分析 B. 面向对象设计
C. 面向对象语言 D. 面向对象方法
若采用p->abc(y)表达式调用一个成员函数,在成员函数中使用的________就代表了类外的p指针。
重载插入运算符<<或抽取运算符>>时,其运算符函数不能被定义为类的________函数。
在一个或若干个类的基础上构造一个新类,被称为___________。
ห้องสมุดไป่ตู้
三、程序填充题(对程序、函数或类中划有横线的位置,根据题意按标号把合适的内容填写到程序下面相应标号的后面。每小题6分,共24分)
2. 主函数调用一个fun函数将字符串逆序。
#include<iostream.h>
#include<string.h>
___(1)___;
void main( ) {
char s[80];
cin>>s;
___(2)___;
C语言程序设计A期末模拟试题三
一、单项选择题(每小题2分,共20分)
C++程序的基本模块为( )。
A. 表达式 B. 标识符 C. 语句 D. 函数
设x和y均为bool量,则x && y为真的条件是( )。
A. 它们均为真 B. 其中一个为真
在关键字private后面定义的成员为类的( )成员。
A. 私有 B. 公用 C. 保护 D. 任何
假定AA为一个类,int a()为该类的一个成员函数,若该成员函数在类定义体外定义,则函数头为( )。
A. int AA::a() B. int AA:a()
C. 它们均为假 D. 其中一个为假
函数调用不可以( D )。
A. 出现在一个表达式中
B. 出现在执行语句中
C. 作为一个函数的实参
D. 作为一个函数的形参
假定变量m定义为“int m=7;”,则定义变量p的正确语句为( B )。
1. 把从键盘上输入的一个大于等于3的整数分解为质因子的乘积。如输入24时得到的输出结果为“2 2 2 3”,输入50时得到的输出结果为“2 5 5”,输入37时得到的输出结果为“37”。
#include<iostream.h>
void main()
{
{
int b[10]={1,2,3,4,5,6,7,8,9,10};
A r(b,10,10);
int i,s=0;
for(i=0; i<10; i++); ___(3)___ //把r对象的a数据成员中的每个
//元素值依次累加到s中
int& operator[](int n);
};
___(1)___ ARRAY(int a[], int n)
{
if(n<=0) {v=NULL;s=0;return;}
s=n;
v=___(2)___;
for(int i=0; i<n; i++) ___(3)___;
}
x/=i;
}
___(3)___;
}while(i<x);
if(x!=1) cout<<x;
cout<<endl;
}
(1) (2) (3)
A. BOOK *x=new book; B. BOOK x={"C++ Programming",27.0};
C. BOOK *x=new BOOK; D. BOOK *x=book;
假定变量x定义为“int x=5;”,要使rx成为x的引用(别名),rx应定义为( D )。
(1) (2) (3)
4. #include<iostream.h>
#include<stdlib.h>
class A {
int *a; int n; int MaxLen;
若a是一个字符数组,则从键盘上向该数组输入一个字符串的表达式为____ cin>>a ____。
当定义一个结构体变量时,系统分配给该变量的内存大小等于各成员所需内存大小的____总和___。
若p指向x,则____*p ____与x的表示是等价的。
已知语句“cout<<s;”的输出是“apple”,则执行语句“cout<<s+2;”的输出结果为__________。
class ARRAY{
int *v; //指向存放数组数据的空间
int s; //数组大小
public:
ARRAY(int a[], int n);
~ ARRAY(){delete []v;}
int size(){ return s;}
int x;
cout<<"请输入一个整数,若小于3则重输:";
do cin>>x; while(___(1)___);
int i=2;
do{
while(___(2)___) {
cout<<i<<' ';
cout<<"s="<<s<<endl;
}
(1) (2) (3)
四、理解问答题(写出前两小题的程序运行结果和指出后两小题的程序(或函数)所实现的功能。每小题6分,共24分)
1. #include<iostream.h>
A. int p=&m; B. int *p=&m; C. int &p=*m; D. int *p=m;
假定有“struct BOOK{char title[40]; float price;}; BOOK *book;”,则不正确的语句为( A )。
void main()
{
int a=2,b=5,c=0;
if(a+b>10) c=a*b; else c=3*a+b;
if(c<=20) cout<<c*c; else cout<<4+c-5;
相关文档
最新文档