c++复习题(答案)

合集下载

C语言复习60题

C语言复习60题

01计算机本身最擅长的能力是?A、推理B、想像C、重复D、分析正确答案: C、重复。

02 计算机(CPU)能够直截了当运行人类编写的程序A、√B、×正确答案: B、×、03编程语言是与计算机交谈的语言A、√B、×正确答案: B、×。

04 关于C语言,以下讲法错误的有:A、C语言是与Unix操作系统一同发展起来的B、C语言不能写图形界面的软件C、C语言一般是编译执行的D、C语言诞生于1970年代正确答案: B、C语言不能写图形界面的软件、06 IDE的中文翻译是什么?正确答案是:集成开发环境、07 给定:int a,b; 以下哪些scanf的使用是正确的?A、scanf("%d”,&a); scanf(”%d",&b);B、scanf(”%d %d”, &a, &b);C、scanf("%d, %d", &a,&b);D、scanf("%d%d”, a, b);正确答案: A、scanf("%d”,&a); scanf(”%d", &b);。

B、scanf(”%d%d", &a, &b);、C、scanf(”%d,%d”,&a,&b);、08 以下哪些是有效的变量名?A、mainB、4everC、monkey—kingD、__int正确答案:A、main。

D、__int。

09给定:inta,b; scanf("%d %d", &a, &b);则以下哪些输入方式是正确的?A、1 2B、1,2C、1(回车)2D、1、2正确答案:A、1 2。

C、1(回车)2、10给定以下代码段:inta,b=0;则a的初始值是0A、√B、×正确答案: B、×、11写出下式的运算结果:10/3、0*3 正确答案是:10、0。

12写出下式的运算结果:10/3*3、0正确答案是:9、0。

C语言复习题(答案)

C语言复习题(答案)

1.编程计算球的体积(V=34πr3),要求半径通过键盘输入,π的值定义为符号常量PI ,输出结果保留两位小数,输入前和输出时要求给出含义明确的提示信息。

#include<stdio.h>main(){float r,v;scanf(“%f ”,&r)v=4/3*PI*r*r*r;printf(“v is %.2f ”,v);}2.输入任意一个3位数,将其各位数字反序输出(例如输入123,输出321)。

#include<stdio.h>main(){int n,s,g,b;printf(“please input n:\n ”);scanf(“%d ”,&n);g=n%10;s=n/10%10;b=n/100;printf(“%d”,100*g+10*s+b);}3.输入三角形的边长,求三角形的面积(面积=sqrt(s(s-a)(s-b)(s-c)),s=(a+b+c)/2)。

#include <stdio.h>main(){int a,s,c,b;printf(“please input a,b,c:”);scanf(“%d,%d,%d”,&a,&b,&c);while(a+b)<=c||(a+c<=b||(b+c)<=a);{printf(“please input a,b,c:”);scanf(“%d,%d,%d”,&a,&b,&c);}s=(a+b+c)/2;area=sqrt(s*(s-a)(s-b)(s-c));printf(“area is:%d\n”,area);}4. 输入3个字符,反向输出这3个字符和它们的ASCII码。

#include <stdio.h>main(){char ch1,ch2,ch3;printf("please input ch1&ch2&ch3:");scanf(“%c%c%c”,&ch1,&ch2,&ch3);printf(“%c\t%c\t%c\n”,ch3,ch2,ch1);printf(“%d\t%d\t%d\n”,ch3,ch2,ch1)}5.编程计算圆的面积(S=πr2),要求半径通过键盘输入,π的值定义为符号常量PI,输出结果保留两位小数,输入前和输出时要求给出含义明确的提示信息。

C语言1-5章复习题和参考答案.doc

C语言1-5章复习题和参考答案.doc

1、若a为int类型,且其值为3,则执行完表达式a+=a-=a*a后,a的值是()。

A .-3 B.9 C.-12 D.62、若有定义:int a=8, b=5, c;执行语句c=a/b+0.4;后,c的值为()。

A .1.4 B.l C.2.0 D.23、有如下程序:void main(){int i,sum;for(i=l;i<=3;sum++)sum+=i;printf("%d\n",sum);}该程序的执行结果是()。

A .6 B.3 C.死循坏D.O4、下列关于表达式的描述屮,错误的是()0A.常量和变量都是表达式。

B.运算符类型对应表达式的类型。

C.每一个表达式都有自己的值。

D.表达式必须以分号结尾。

5、C语言中,合法的长整型常数是()。

A.'\t'B."A"C.65D.a6、若已定义x和y为double类型,则表达式x=l;y= (x+3) /2的值是()。

A.lB.2C.2.00000D.2.500007、表达式:10!二9的值是()oA.trueB.非零值C.OD.l8、以下程序的输出结果是()。

#include<stdio.h>void main(){printf("%d\n", NULL);}A.不确定的B.OC.-lD.l9、请选出合法的C语言赋值语句。

()A . a=b=58 B.i++; C. a=58,b=58 D. k=int(a+b);10^假设int b=2;表达式(b»2)/(b»l)的值是()。

A .0 B.2 C.4 D.811>关于语句printf("hello world\rT);,下列描述中错误的是()。

A . printf()是格式化输出函数,用于输出信息。

B.printf()括号屮的内容为函数的参数。

C.printf()括号中的内容会全部输出到控制台上。

C期末考试复习题(答案)

C期末考试复习题(答案)

C期末考试复习题(答案)C语言复习题一、单项选择题1、C语言源程序文件经过C编译程序编译连接之后生成一个后缀为( C )的文件。

A).c B).obj C).exe D).bas2、)完成C源文件编辑后、到生成执行文件,C语言处理系统必须执行的步骤依次为( B )A)连接、编译B)编译、连接 C)连接、运行D)运行3、关于C语言的叙述中,不正确的是(D)A)C程序可由一个或多个函数组成B)C程序必须包含一个main ()函数C)C程序的基本组成单位是函数D)注释说明只能位于一条语句的后面4、一个C程序的执行是从(A )。

A) 本程序的main函数开始,到main函数结束B) 本程序文件的第一个函数开始,到本程序文件的最后一个函数结束C) 本程序的main函数开始,到本程序文件的最后一个函数结束D) 本程序文件的第一个函数开始,到本程序main函数结束5、以下正确的叙述是(C )A) 在C语言中,main函数必须位于文件的开头B) C语言每行中只能写一条语句C) C语言本身没有输入、输出语句D) 对一个C语言进行编译预处理时,可检查宏定义的语法错误6、下列选项中,不能用作标识符的是( D)。

A) _1234_ B) _1_2 C) int_2_ D) 2_int_7、常数的书写格式决定了常数的类型和值,0x1011是( C )A)8进制整型常量B)字符常量 C)16进制整型常数D)2进制整型常数8、以下4组用户定义标识符中,全部合法的一组是( A )A)_total clu_1 sum B)if -max turbC)txt REAL 3COM D)int k_2 _0019、_( D )是合法的用户自定义标识符。

A) b-b B)float C)123a D) _isw10、以下选项中不正确的整型常量是( C )。

A) 12L B) -10 C) 1,900 D) 123U11、表达式( C )的值是0。

C语言复习卷带答案

C语言复习卷带答案

姓名:__________________年级专业:__________________ 学号:__________________凡年级专业、姓名、学号错写、漏写或字迹不清者,成绩按零分记。

…………………………密………………………………封………………………………线…………………………《复习卷》试卷一、单选题(每题1分,共计30分) 1、下列选项中,不合法的变量是(D )。

A 、int x = 3; B 、char ch = 'c' C 、float f ; D 、case c;2、下列选项中,不合法的常量是(D )。

A 、2 B 、'\n' C 、'a' D 、'\483'3、关于#include<stdio.h>这句代码,下列描述中错误的是(C ) A 、"#"是预处理标志,用来对文本进行预处理操作 B 、include 是预处理指令 C 、一对尖括号可以去掉D 、stdio.h 是标准输入输出头文件4、假设a 、b 、c 、d 、m 、n 均为int 型变量,且a=5、b=6、c=7、d=8、m=2、n=2,那么逻辑表达式(m=a>b)&&(n=c>d)运算后,n 的值为( C )。

A 、0 B 、1 C 、2 D 、35、C 语言程序的三种基本结构是( A )。

A 、顺序结构,选择结构,循环结构 B 、递归结构,循环结构,转移结构 C 、嵌套结构,递归结构,顺序结构 D 、循环结构,转移结构,顺序结构6、关于下面的for 循环语句 int i,k; for(i = 0,k = -1;k = 1;i++,k++) printf(“*****”); 下列选项中,描述正确的是(B )A 、判断循环结束的条件非法B 、是无限循环C 、只循环一次D 、一次也不循环7、以下定义语句中,错误的是( D )。

c复习题及答案

c复习题及答案

一、选择题1. 在每个C++程序中都必须包含有这样一个函数,该函数的函数名为 A 。

A. mainB. MAINC. nameD. function2. 若a,b 均为int 型变量,为了将10赋给a ,将20赋给b ,则对应以下cin 语句的正确输入方式为 B 。

(<CR>代表回车换行,_代表空格)。

cin >> a >> b;A .1020<CR>B .10_20<CR>C .10,20<CR>D .20_10<CR>3. 在以下关于C++语言的注释的叙述中,不正确的是 C 。

A. A .C++程序中,注释可用"/*"、"*/"形式表示,也可用"#KDJF C. 67KDJ D. DK3_4. 关于字符串和字符的关系正确的是 CA. “A ”与’A ’是相同的B. 字符串是常量,字符是变量C. “A ”与’A ’是不同的D. “A ”与“A ”是相同的5. 下面关于语句的说法正确的是 BA. 下面这两段程序的执行效果是一致的B. 空语句是只有一个分号的语句,它其实什么也不干C. 语句的构成不一定需要分号D. 语句的书写对程序的运行不起作用,因此可以随便写都可以6. 以下各标识符中,合法的用户标识符组为 D 。

A. PAd ,P#d ,b-b ,abc ,_0123,ssipedB. cin ,a10,CPP ,float ,del_word ,signedC. void ,max ,hiy ,<fr>,list ,*jerD. a ,temp ,_isw ,INT ,keep ,wind7. 在VC++中,以下语句的输出为 D 。

short int k= -1;cout << k << ',' << (unsigned short) k <<endl;A .-1,-1B .-1,32767C .-1,32768D .-1,655358. 若给出以下程序,其输出为 B 。

C语言复习题及答案

C语言复习题及答案

复习A:一、单项选择题1、如果要把常量327存入变量a中,a不能定义的类型是哪一个? ( )A)int B)char C)long D)float2、若x 为unsigned int 型变量,则执行下列语句后x值为()x = 65535;printf(“%d\n”,x);A)65535 B)1 C)无定值D)-13、有以下程序main(){int a=1,b=2,m=0,n=0,k;k=(n=b>a)||(m=a<b);printf(″%d,%d\n″,k,m);}程序运行后的输出结果是()A)0,0 B)0,1 C)1,0 D)1,14、在C语言中,如果下面的变量都是int类型,则输出的结果是()。

sum=pad=5; pAd=sum + + ,pAd + +, + + pAd;printf("%d\n",pad);A) 7 B) 6 C) 5 D) 45、以下程序的输出结果是()。

main(){ int a=4,b=5,c=0,d;d=!a&&!b||!c;printf("%d\n",d);}A)1 B)0 C)非0的数D)-16、当执行以下程序段时()。

x=-1;do{x=x*x;}while(!x);A)循环体将执行一次B)循环体将执行两次C)循环体将执行无限次D)系统将提示有语法错误7、全局变量的存储类型可以定义为()。

A)auto或static B)extern或registerC)auto或extern D)extern或static8、定义全局变量时,若变量的的存储类别缺省,则默认的存储类型是()。

A)auto B)registerC)extern D)static9、已知:int a, x; 则正确的赋值语句是()。

A)a=(a[1]+a{2})/2; B)a*=*a+1; C)a=(x=1, x++, x+2); D)a="good";10、已知:int a, *p=&a; 则下列函数调用中错误的是()。

c语言期末复习试题附答案

c语言期末复习试题附答案

试卷编号:1120所属语言:C语言试卷方案:C语言期末考试试卷总分:100分共有题型:4种一、单项选择共30题(共计60分)第1题(分)设有定义:int k=0;,以下选项的四个表达式中与其他三个表达式的值不相同的是(A ).A:k++B:k+=1C:++kD:k+1第2题(分)已知int i=5,执行语句i+=++i后,i的值是(C).A:10B:llC:12D:A、B、C都不对第3题(分)以下程序的功能是:给r输入数据后,计算半径为r的圆面积s.程序在编译时出错. ttinclude <>void main()/* Beginning */{ int r;float s;scanf (〃%d〃,&r);s=p*r*r; printf (〃s=%f\n〃,s);出错的原因是(D).A:注释语句书写位置错误B:存放圆半径的变量r不应该定义为整型C:输出语句中格式描述符非法D:计算圆面积的赋值语句中使用了非法变量第4题(分)〃\\\〃 ABC\〃 \\〃的长度是(B ).A:llB:7C:5D:3第5题(分)已知int j, i=l执行语句j=-i++;后,j的值是(C ).A:1B:2串中的内容为“abcdefg”时,c 所指数组中的内容应该为 “lg2f3e4dcba” 。

*/ttinclude <>#include <>#include <>void fun ( char char *b, char *c )int i , j;char ch;i = 0;j 二 strlen(b)-l;/**********FOUND**********/ch = b [ i];b[j] = ch; i++; j —;/**********FOUND**********/while ( *a &&*b )//此处&&改为| | (逻辑或)if ()*c =*a;c++;/**********FOUND**********/a+;)if ( *b )*c 二*b; c++;b++;*c = 0;main()char sl[100],s2[100],t[200];clrscr ();printf (,z \nEnter si string : 〃);scanf (〃如〃,si);printf (,z \nEnter s2 string : 〃);scanf (〃%s 〃, s2);fun( si, s2, t );printf (/z \nThe result is : %s\n 〃,t );i j四、程序设计共1题(共计20分)第1题(分)/*【程序设计】功能:判断一个整数w 的各位数字平方之和能否被5整除, 可以被5整除则返回1,否则返回0。

(完整版)C语言各章节复习题(带答案)

(完整版)C语言各章节复习题(带答案)

一、C语言概述练习题选择1.一个C程序的执行是从。

A) 本程序的main函数开始,到main函数结束B) 本程序文件的第一个函数开始,到本程序文件的最后一个函数结束C) 本程序文件的第一个函数开始,到本程序main函数结束D) 本程序的main函数开始,到本程序文件的最后一个函数结束2.以下叙述不正确的是。

A) 一个C源程序必须包含一个main函数 B)一个C源程序可由一个或多个函数组成C) C程序的基本组成单位是函数 D) 在C程序中,注释说明只能位于一条语句的后面3.以下叙述正确的是。

A) 在对一个C程序进行编译的过程中,可发现注释中的拼写错误B) 在C程序中,main函数必须位于程序的最前面C) C语言本身没有输入输出语句 D) C程序的每行中只能写一条语句4.一个C语言程序是由。

A)一个主程序和若干个子程序组成 B) 函数组成 C) 若干过程组成 D) 若干子程序组成5.计算机高级语言程序的运行方法有编译执行和解释执行两种,以下叙述中正确的是。

A) C语言程序仅可以编译执行B) C语言程序仅可以解释执行C) C语言程序既可以编译执行又可以解释执行D) 以上说法都不对6.以下叙述中错误的是。

A) C语言的可执行程序是由一系列机器指令构成的B)用C语言编写的源程序不能直接在计算机上运行C)通过编译得到的二进制目标程序需要连接才可以运行D)在没有安装C语言集成开发环境的机器上不能运行C源程序生成的.exe 文件7.以下叙述正确的是。

A) C语言程序是由过程和函数组成的B) C语言函数可以嵌套调用,例如:fun(fun(x))C) C语言函数不可以单独编译 D) C语言中除了main函数,其他函数不可作为单独文件形式存在二、数据类型、运算符与表达式选择.1.若x、i、j、k都是int型变量,则计算下面表达式后,x的值为x=(i=4,j=16,k=32) A) 4 B) 16 C) 32D) 522.下列四组选项中,均不是C语言关键字的选项是。

C语言复习题及参考答案

C语言复习题及参考答案

C语言复习题及参考答案一、单项选择1、以下叙述正确的是:__B__。

A)C语言的源程序不必通过编译就可以直接运行。

B)C语言中的每条可执行语句最终都将被转换成二进制的机器指令。

C)C语言源程序经编译形成的二进制代码可以直接运行。

D)C语言中的函数不可以单独进行编译。

2、以下4个用户定义标识符中,全部合法的一组是__A__。

A)_main enclude sin B)if –max turbo C)txt REAL 3COM D)int k_2 _001 3、以下不能定义为用户标识符的是_D__。

A)scanf B)Void C)_3com D)int4、C语言中用于结构化程序设计的3种基本结构是__A__。

A)顺序结构、选择结构、循环结构B)if、switch、breakC)for、while、do-whileD)if、for、continue5、为解决某一特定问题而设计的指令序列称为__C__。

A)文档B)语言C)程序D)系统6、用高级程序设计语言编写的程序称为__C__。

A)目标程序B)可执行程序C)源程序D)伪代码7、能将高级语言编写的源程序转换成目标程序的是__B__。

A)编辑程序B)编译程序C)驱动程序D)链接程序8、下列叙述中,正确一条是__C__。

A)计算机语言中,只有机器语言属于低级语言。

B)高级语言源程序可以被计算机直接执行。

C)C语言属于高级语言。

D)机器语言是所用机器无关的。

9、以下符合C语言语法的实型常量是__C__。

A)1.2E0.5B)3.14159E C).5E-3D)E1510、下面叙述正确的是__A___。

A)C程序中注释部分可以出现在程序中任何合适的地方。

B)花括号“{”和“}”只能作为函数体的定界符。

C)构成C程序的基本单位是函数,所有函数名都可以由用户命名。

D)分号是C语句之间的分隔符,不是语句的一部分。

11、设有以下定义:int a=0; double b=1.25; char c=’A’;#define d 2则下面语句中,错误是__D__。

c语言备考复习题与部分答案

c语言备考复习题与部分答案

一、判断题1. 格式字符%md中的m不能为负。

(×)2. 实际上,可以用顺序、分支、循环三种结构构造任何算法。

( )3. printf("%d",sizeof(1234));其结果是4。

(×)4. 在C语言中,任何一个表达式的最后加上一个分号就构成一个合法的语句。

( )5. 下面程序执行结果是32768。

(×)main( ){int a,b;printf("%d\n",b=(a=32767,a+1));}二、单选题1. 下述程序的输出结果是(B )#include <STDIO.H>void main(){int a,b,c=241;a=c/100%9;b=-1&&-1;printf("%d,%d",a,b);}2. 若有定义:int x,y; char a,b,c;并有以下输入数据:x=1 2 A B C<CR>,则能给x赋整数1,给赋整数2,给a赋字符A,给b赋字符B,给c赋字符C的正确程序段是(D )A)scanf("x%d y=%d",&x,&y);a=getch();b=getch();c=getch();B)scanf("x=%d%d",&x,&y);a=getch();b=getch();c=getch();C)scanf("x=%d%d%c%c%c",7x,&y,&a,&b,&c); D)scanf("x=%d%d%c%c%c%c%c",&x,&y,&a,&b,&b,&c, &c);3. 已有定义double d,f;数据的输入方式为:3.45<CR> 1.2<CR>根据定义和数据的输入方式,输入函数调用语句的正确形式为(A )A)scanf("%lf%lf",&d,&f) B)scanf("%f%f",&d,&f)C)scanf("3.2f%3.1f",&d,&f)D)scanf("%3.2lf%3.1lf",&d,&f)4. 如下程序: #include <STDIO.H>void main(){ int m,n,k;m=(n=4)+(k=10-7);printf(“m=%d\n”,m);}运行后m的值为( C )。

C语言复习题及答案

C语言复习题及答案

C语言复习题及答案一.单项选择题1.下列选项中,不是转义字符集中的符号是( C )。

A \\B \’C 074D \02. 下列给出的符号串中,不属于C语言保留字的是( B )。

A switchB cherC caseD else3. 下列给出的符号串中,不能作为C语言标识符的是( C )。

A a_2B _2aC a.3D a_34. 下列属于C语言字符常量的是( C )。

A ‘abc’B “\n”C ‘a’D ‘a\0’5. 字符串”ABC”再内存占用的字节数为( B )。

A 3B 4C 6D 86. 设有宏定义“#define R 2+3”,则R*R的宏替换结果正确的是( B )。

A (2+3)*(2+3)B 2+3*2+3C 5*5D 5.0*5.07. 设整形变量I的值为3,则表达式i---i的值为( A )。

A 0B 1C 2D 38. 表达式“10!=9”的值为( D )。

A trueB 非零值C 0D 19. 设有语句int a=3;则执行了语句a+=a-=a*a;后,变量a的值为( D )。

A 3B 0C 9D -1210. 下列选项中,正确的赋值表达式为( C )。

A a=7+b+c=a+7B a=7+b++=a+7C a=(7+b,b++,a+7)D a=7+b,c=a+711. 若有以下定义语句:char a;float c; double d; 则表达式a*b+d-c值的类型为( D )。

A floatB intC charD double12. 用十进制数表示表达式“12||012”的运算结果是( A )。

A 1B 0C 14D 1213. 下列一组运算符中,优先级别最高的运算符是( C )。

A <=B =C %D &&14. 设定“ char a=3,b=6,c;”,计算表达式c=(a^b)<<2后c的二进制值是( D )。

A 00011100B 00000111C 00000001D 0001010015. 设x,y,z,t 均为int类型,则执行下列语句串后,变量t的值为(C )。

C复习题(全部答案)

C复习题(全部答案)

C复习题(全部答案)一、C++基础、变量、常量部分试题:(一)单选题8.由C++语言编写的代码程序()A.可直接执行(.e某e才可以直接执行)B.是一个源程序C.经过编译即可执行(经过编译链接才可以执行)9.按照C++语言规定的用户标识符命名规则,不能出现在标识符中的是()A.大写字母10.下列选项中,不能用作标识符的是()A._1234_11.以下选项中合法的用户标识符是()A.long(关键字)12.以下不能定义为用户标识符的是()A.Main13.列定义变量的语句错误的是()A.int_int;14.在C++语言中,非法的字符常量是()A.‘\\t’29.以下程序的输出结果是()voidmain(){intk=11;cout<A.k=11,k=12,k=1141.B.k=11,k=13,k=13D.k=11,k=13,k=bC.k=11,k=013,k=0某bB.‘\\017’C.\D.‘\\某aa’B.doubleint_;C.charFor;D.floatUSA;B._0C._intD.izeof(运算符)B._2TetC.3Dma某D.A.datB._1_2C.int_2_D.2_intB.中划线C.数字字符D.下划线D.经过编译解释才能执行不属于C++语言关键字的是()。

A.intB.breakC.whileD.character42.是C++语言提供的合法关键字的是()。

A.FloatB.ignedC.integerD.Char43.下列说法中,错误的是()。

A.每个语句必须独占一行,语句的最后可以是一个分号,也可以是一个回车换行符号B.每个函数都有一个函数头和一个函数体,主函数也不例外C.主函数只能调用用户函数或系统函数,用户函数可以相互调用D.程序是由若干个函数组成的,但是必须有、而且只能有一个主函数(二)填空题1.一个C++源程序至少有并且只能有一个main(主)函数。

c语言基础习题、复习题(含答案)

c语言基础习题、复习题(含答案)

c语言基础习题、复习题(含答案)《C语言设计》复习题一选择题1、以下说法中正确的是(C )。

C语言程序总是从main()函数开始执行2、若已定义x和y为double类型,则表达式:x=1,y=x+3/2的值是___C___.C. 2.03、以下叙述正确的是(D )。

D. 用do…while语句构成循环时,在while后的表达式为零时结束循环4、C程序是( B)B. 从Main函数开始5、设x、y、z和k都是int型变量,则执行表达式:x=(y=4,z=16,k=32)后,x的值为__C____。

C. 326、设int b=2;表达式b/(b*2)的值是___A_____.A. 07、表示关系X<=Y<=Z的C语言表达式为__A___.A. (X < =Y)&&(Y < =Z)8、已知int x=10,y=20,z=30;以下语句执行后x,y,z的值是BB. x=20,y=30,z=309、设A=3,B=4,执行printf("%d,%d",(A,B),(B,A));的输出是___B___.B. 4,310、下面判断正确的是CC. char *s="china";等价于char *s;s="china";11、若有说明:int a[10];,则对a数组元素的正确引用是(D )。

D. a[10-10]12、在C语言中,int、char和short三种类型数据在内存中所占用的字节数DD. 由所用机器的机器字长决定13、C语言规定,函数返回值的类型是由DD. 在定义该函数时所指定的函数类型所决定14、与y=(x > 0?1:x < 0?-1:0);的功能相同的if语句是AA. if(x > 0) y=1; else if(x < 0) y=-1; else y=015、执行语句:for(i=1;i++ < 4;)后;变量i的值是(C )C. 516、语句while(!E);中的表达式!E等价于_____A__A. E==017、假定a和b为int型变量,则执行以下语句后b的值为DD. -418、对以下说明语句的正确理解是____B____int a[10]={6,7,8,9,10};B. 将5个初值依次赋给a[0]至a[4]19、以下不能对二维数组a进行正确初始化的语句是CC. int a[2][3]={{1,2},{3,4},{5,6}}; 20、在C语言中,一维数组的定义方式为:类型说明符数组名___D______D. [整型常量]21、下列说法中正确的是_D___。

C语言复习题与答案

C语言复习题与答案

考试时选择题部分需要涂答题卡,请带2B铅笔考试题型:单项选择:填空题:读程序:程序填空:编写程序:一、单项选择1.一个C语言程序是由()。

A.函数组成B.一个主程序和若干子程序组成C.若干过程组成 D.若干子程序组成2.在C语言中,复合语句()。

A. 必须出现在循环或分支中B. 必须包含多条语句C. 必须使用{}将有关语句括起来D. 以上三种都对3. 以下叙述不正确的是()。

A.一个C源程序可由一个或多个函数组成B. 一个C源程序必须包含一个main函数C. C程序的基本组成单位是函数D. 在C程序中,注释说明只能位于一条语句的后面4. C语言中的标识符只能由字母、数字和下划线三种字符组成,且第一个字符()。

A.必须为字母B.可以是字母、数字和下划线中任一种字符C.必须为下划线D.必须为字母或下划线5. 下面不正确的字符串常量是()。

A. …abc‟B.“12‟12”C.“0”D.“”6. 下面正确的字符常量是()。

A."c" B. "\\" C. 'W' D. ''7. 以下表达式值为3的是()。

A.16-13%10 B. 2+3/2C. 14/3-2D.(2+6)/(12-9)8. 下列表达式的值为0的是()。

A. 3<5B. 3/5.0C. 3/5D. 3%59. 若有代数式3ae/(bc),则不正确的C语言表达式是()。

A. a/b/c*e*3B. 3*a*e/b/cC. 3*a*e/b*cD. a*e/c/b*310. 在C语言中,要求运算数必须是整型的运算符是()。

A. /B. ++C. !=D. %11. 若x、i、j和k都是int型变量,则执行下面表达式后x的值为()。

x=(i=4,j=16,k=32)A. 4B. 16C. 32D. 5212. 执行表达式a=12,a=a+13,a+20后a的值为()。

《c》复习题集及答案

《c》复习题集及答案

目录一、单选题1. C++源程序文件的缺省扩展名为( A )。

A. cppB. exeC. objD. lik2. 由C++源程序文件编译而成的目标文件的缺省扩展名为( C )。

A. cppB. exeC. objD. lik3. 由C++目标文件连接而成的可执行文件的缺省扩展名为( B )。

A. cppB. exeC. objD. lik4. 编写C++程序一般需经过的几个步骤依次是( B )。

A. 编译、编辑、连接、调试B. 编辑、编译、连接、调试C. 编译、调试、编辑、连接D. 编辑、调试、编辑、连接6. 能作为C++程序的基本单位是( C )。

A. 字符B. 语句C. 函数D. 源程序文件8. C++程序的基本模块为( D )。

A. 表达式B. 标识符C. 语句D. 函数10. 存储以下数据,占用存储字节最多的是( D )。

A. 0B. ‘0’C. “0”D. 0.038. 以下说法中正确的是( B )。

A. C++程序总是从第一个定义的函数开始执行B. C++程序总是从main函数开始执行C. C++函数必须有返回值,否则不能使用函数D. C++程序中有调用关系的所有函数必须放在同一个程序文件中40. 函数重载是指( A )。

A. 两个或两个以上的函数取相同的函数名,但形参的个数或类型不同B. 两个以上的函数取相同的名字和具有相同的参数个数,但形参的类型可以不同C. 两个以上的函数名字不同,但形参的个数或类型相同D. 两个以上的函数取相同的函数名,并且函数的返回类型相同41. 以下关于函数模板叙述正确的是( C )。

A. 函数模板也是一个具体类型的函数B. 函数模板的类型参数与函数的参数是同一个概念C. 通过使用不同的类型参数,函数模板可以生成不同类型的函数D. 用函数模板定义的函数没有类型42. 下列( C )的调用方式是引用调用。

A. 形参和实参都是变量B.形参是指针,实参是地址值C. 形参是引用,实参是变量D.形参是变量,实参是地址值43. 为了提高程序的运行速度,可将不太复杂的功能用函数实现,此函数应选择( A )。

C语言考试复习题及答案

C语言考试复习题及答案

一、单选题(请将正确答案写在答题纸,1~20题每题1分,21~35题每题2分,共50分)1. 下列关于C语言的说法不正确的是( D )。

A.C语言既具有高级语言的一切功能,也具有低级语言的一些功能B.注释可以出现在程序中任意合适的地方C.C语言中的每一条执行语句都必须用分号结束,分号是C语言的一部分D.定义函数的首行要加分号2. C语言程序的执行顺序是(B)。

A.从第一个函数开始执行B.从main函数开始执行C.从任意函数开始执行D.从第一条语句开始执行3. 以下关于注释的叙述,正确的是(D)。

A.注释参与编译,影响程序结果B.注释不参与编译,但影响程序结果C.注释参与编译,但不影响程序结果D.注释不参与编译,不影响程序结果4. 以下叙述正确的是(A)。

A.C语言程序可以在任意C编译器下编译B.C语言程序只能在TC环境下编译C.C语言程序只能在VC或TC环境下编译D.C语言程序只能在VC环境下编译5. C语言中的标识符只能由字母,数字和下划线三种字符组成,且第一个字符( B )。

A.必须为字母B.必须为下划线或字母C.必须为下划线D.可以是字母,数字和下划线中任一字符6. 下面四个数字常量选项中,书写均正确的是(D)。

A.016 0x8f 018 (零开头的是八进制,不能用8)B.0312 7ff -087(8进制没有符号)C.0xbc 0a7(8进制没有a)0xaD.070 0xf1 0x19(16进制以ox开头)7. 若有说明语句:char c=0x7f;则变量c(B)。

A.包含3个字符B.包含1个字符C.包含2个字符D.说明不合法,c的值不确定8. 设有int x=11;则表达式(++x*1/3)的值是( B )。

(11+1再除以3)A.3B.4C.11D.129. 阅读下面程序段,输出结果为( B )。

(z-a=25)#include "stdio.h"void main(){ char c;c=('z'-'a')/3+'A';putchar(c);}A.HB.JC.ID.K10. 若有定义和语句:int a=23,b=023; printf(“%x,%d \n”,a,b);输出结果是( D )。

c语言复习试题及答案

c语言复习试题及答案

c语言复习试题及答案C语言复习试题及答案一、选择题1. C语言中,一个整型变量的取值范围是:A. -128 到 127B. -32768 到 32767C. -2147483648 到 2147483647D. 取决于编译器答案:D2. 下列哪个关键字用于定义C语言的结构体?A. structB. defineC. unionD. enum答案:A3. C语言中,字符串在内存中是以什么方式存储的?A. 字符串名B. 字符串长度C. 字符串本身D. 字符串结束标志 '\0'答案:D4. 在C语言中,函数返回值的类型由什么决定?A. return 语句B. 函数名C. 函数定义时指定的类型D. 函数参数的类型答案:C5. 下列哪个操作符不能用于位操作?A. &B. |C. ^D. ++答案:D二、填空题6. C语言中,预处理器指令 `#include` 的作用是_______。

答案:引入其他文件7. `int main()` 函数中的 `void` 表示该函数_______。

答案:不返回任何值8. 在C语言中,数组的索引是从_______开始的。

答案:09. `printf` 函数的返回类型是_______。

答案:int10. 表达式 `3.0 / 0` 在C语言中会导致_______。

答案:运行时错误三、简答题11. 请简述C语言中指针的概念及其用途。

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

指针在C语言中用于直接访问内存、动态内存分配、数组操作、函数参数传递等。

12. 解释C语言中数组和指针之间的关系。

答案:在C语言中,数组名可以作为指针使用,它指向数组的第一个元素的地址。

通过指针可以遍历数组,也可以通过指针修改数组元素的值。

四、编程题13. 编写一个C语言程序,实现对整数数组的排序。

```c#include <stdio.h>void sort(int arr[], int n) {int i, j, temp, min_idx;for (i = 0; i < n - 1; i++) {min_idx = i;for (j = i + 1; j < n; j++) {if (arr[j] < arr[min_idx]) {min_idx = j;}}if (min_idx != i) {temp = arr[i];arr[i] = arr[min_idx];arr[min_idx] = temp;}}}int main() {int arr[] = {64, 34, 25, 12, 22, 11, 90}; int n = sizeof(arr) / sizeof(arr[0]);sort(arr, n);printf("Sorted array: \n");for (int i = 0; i < n; i++) {printf("%d ", arr[i]);}printf("\n");return 0;}```14. 编写一个C语言程序,实现字符串的反转。

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

重庆交通大学电信类 15级《C++面向对象程序设计》课程复习题(2016年 5月)一、选择题1. 以下说法中正确的是(B)。

A. C++程序总是从第一个定义的函数开始执行B. C++程序总是从main 函数开始执行2. 下面有关构造函数的描述中,正确的是(BA. 构造函数可以带有返回值 )。

B. 构造函数的名字与类名完全相同 D. 构造函数必须定义,不能缺省C. 构造函数必须带有参数3. 在声明类时,下面的说法正确的是(C)。

A. 可以在类的声明中给数据成员赋初值B. 数据成员的数据类型可以是registerC. private ,public ,protected 可以按任意顺序出现D. 没有用private ,public ,protected 定义的数据成员是公有成员4.在下面有关析构函数特征的描述中,正确的是(CA. 一个类可以有多个析构函数 )。

B. 析构函数与类名完全相同 D. 析构函数可以有一个或多个参数C. 析构函数不能指定返回类型5.构造函数是在(B)时被执行的。

A. 程序编译B. 创建对象C. 创建类D. 程序装入内存6. 下面有关静态成员函数的描述中,正确的是(B )A. 在静态成员函数中可以使用this 指针B. 在建立对象前,就可以为静态数据成员赋值C. 静态成员函数在类外定义是,要用static 前缀D. 静态成员函数只能在类外定义7.下面有关友员函数的描述中,真确的说法是(A A. 友员函数是独立于当前类的外部函数)B. 一个友员函数不可以同时定义为两个类的友员函数C. 友员函数必须在类的外部进行定义D. 在类的外部定义友员函数时必须加上friend 关键字C. C++函数必须有返回值,否则不能使用函数D. C++程序中有调用关系的所有函数必须放在同一个程序文件中8.友员的作用之一(A)A. 提高程序的运行效率B. 加强类的封装C. 实现数据的隐蔽性D. 增加成员函数的种类9.使用派生类的主要原因是(AA. 提高代码的可重用性C. 加强类的封装性)B. 提高程序的运行效率D. 实现数据的隐藏10.在C++中继承方式有几中(C )A. 1B. 2C. 3D. 411.派生类的对象对它的基类成员中( A)是可以访问的。

A.公有继承的公有成员;C.公有继承的保护成员;B.公有继承的私有成员;D.私有继承的公有成员。

12. 类中定义的成员默认为( B )访问属性。

A. publicB. privateC. protectedD. friend13.下列存储类标识符中,要求通过函数来实现一种不太复杂的功能,并且要求加快执行速度,选用(A )合适。

A. 内联函数;B. 重载函数;C. 递归调用;D. 嵌套调用。

14.C++对C语言作了很多改进,下列描述中( D )使得C语言发生了质变,从面向过程变成了面向对象。

A. 增加了一些新的运算符;C. 规定函数说明必须用原型;B. 允许函数重载,并允许设置缺省参数;D. 引进了类和对象的概念;15.按照标识符的要求,(A )符号不能组成标识符。

A. 连接符B. 下划线C.大小写字母D. 数字字符16.下列变量名中,(AA CHINA)是合法的。

B byte-sizeC doubleD A+a17.下列各种函数中,(C )不是类的成员函数。

A 构造函数B 析构函数C 友元函数D 拷贝构造函数18.下列(A )是正确的语句。

A ;B a=17C x+yD cout<<"\n"19.不能作为函数重载判断的依据的是( B)A.返回类型B. constC.参数个数D. 参数类型20.通常,拷贝构造函数的参数是(C )A.某个对象名B.某个对象的成员名 D.某个对象的指针名C.某个对象的引用名21.下面对静态数据成员的描述中,正确的是( C)A 类的不同对象有不同的静态数据成员值B 类的每个对象都有自己的静态数据成员C 静态数据成员是类的所有对象共享的数据D 静态数据成员不能通过类的对象调用22.假定AB 为一个类,则执行AB x;语句时将自动调用该类的(B )A.有参构造函数B.无参构造函数C.拷贝构造函数D.赋值构造函数23.C++程序从上机到得到结果的几个操作步骤依次是(B )。

24.假定一条定义语句为“int a[10], x, *p=a;”,若要把数组a 中下标为3的元素值赋给 x ,则不正确的语句为( D )。

A. x=p[3];B. x=*(a+3);C. x=a[3];D. x=*p+3;25.关于封装,下列说法中不正确的是( D )。

A. 通过封装,对象的全部属性和操作结合在一起,形成一个整体B. 通过封装,一个对象的实现细节被尽可能地隐藏起来(不可见)C. 通过封装,每个对象都成为相对独立的实体D. 通过封装,对象的属性都是不可见的26.预处理命令在程序中都是以(B)符号开头的。

A. *B. #C. &D. @27.存储以下数据,占用存储字节最少的是(B)。

A. 0B. ‘0’C. “0”D. 0.028.程序运行中需要从键盘上输入多于一个数据时,各数据之间应使用(D)符号作为分隔A. 编译、编辑、连接、运行 C. 编译、运行、编辑、连接B. 编辑、编译、连接、运行D. 编辑、运行、编辑、连接符。

A. 空格或逗号B. 逗号或回车C. 逗号或分号D. 空格或回车D. int *p=m;29.假定变量m 定义为“int m=7;”,则定义变量p 的正确语句为( B )。

A. int p=&m;B. int *p=&m;C. int &p=*m;30.下面的哪个保留字不能作为函数的返回类型?(C)A. voidB. intC. new31.采用重载函数的目的是(D)。

A.实现共享B.减少空间C.提高速度D.使用方便,提高可读性32.假定AB 为一个类,则(CA. AB(AB x);)为该类的拷贝构造函数的原型说明。

B. AB(int x);C. AB(AB& x);D. void AB(AB& x);33、 C++对C 语言作了很多改进,下列描述中(D )使得C 语言发生了质变,从面向过程变 成了面向对象。

34、 所谓数据封装就是将一组数据和与这组数据有关操作组装在一起,形成一个实体,这 实体也就是( A)。

A.类B.对象C.函数体D.数据块35、 关于new 运算符的下列描述中,( C )是错误的。

A 、 它可以用来动态创建对象和对象数组;B 、使用它创建的对象或对象数组可以使用运算符delete 删除;C 、使用它创建对象时要调用构造函数;D 、使用它创建对象数组时必须指定初始值; 36、 ( D )不是构造函数的特征。

A 、构造函数的函数名与类名相同;B 、构造函数可以重载;C 、构造函数可以设置缺省参数;D 、构造函数必须指定类型说明。

37、 假定一个类的构造函数为B(int x,int y){a=x--;b=a*y--;},则执行B x(3,5); 语句 后,x.a 和x.b 的值分别为( C) A 、 3和5B 、 5和3C 、 3和15D 、20和5A 、增加了一些新的运算符;B 、允许函数重载,并允许设置缺省参数;C 、规定函数说明必须用原型;D 、引进了类和对象的概念;D.long38、关于成员函数特征的下列描述中,( A )是错误的。

A、成员函数一定是内联函数;B、成员函数可以重载;C、成员函数可以设置缺省参数值;D、成员函数可以是静态的;39、在公有继承的情况下,基类成员在派生类中的访问权限( B )。

A、受限制B、保持不变C、受保护D、不受保护40、友元的作用是( A )。

A、提高程序的运用效率;B、加强类的封装性;C、实现数据的隐藏性;D、增加成员函数的种类;41、在C++中,关于下列设置缺省参数值的描述中,(B )是正确的。

A、不允许设置缺省参数值;B、在指定了缺省值的参数右边,不能出现没有指定缺省值的参数;C、只能在函数的定义性声明中指定参数的缺省值;D、设置缺省参数值时,必须全部都设置;42、关于delete运算符的下列描述中,( C )是错误的。

A、它必须用于new返回的指针;B、使用它删除对象时要调用析构函数;C、对一个指针可以使用多次该运算符;D、指针名前只有一对方括号符号,不管所删除数组的维数。

43、const int *p说明不能修改( C )。

A、p指针;B、p指针指向的变量;C、p指针指向的数据类型;D、上述A、B、C三者;44、当需要打开A盘上的以xxk.dat文件用于输入时,则定义文件流对象的语句为 ( B)。

A、fstream fin(“A:xxk.dat”,1)B、ifstream fin(“A:xxk.dat”,ios::nocreate)C、ofstream fin(“A:xxk.dat”)D、ifstream fin(“A:xxk.dat”,ios::app)45、派生类的对象对它的基类成员中(A )是可以访问的。

A、公有继承的公有成员;B、公有继承的私有成员;C、公有继承的保护成员;D、私有继承的公有成员;46、在int a=3; *p=&a;中,*p的值是( D )。

A、变量a的地址值B、无意义C、变量p的地址值D、 347. 下述静态数据成员的特征中,( D )是错误的。

A. 说明静态数据成员时前边要加修饰符static;B. 静态数据成员要在类体外进行初始化;C. 引用静态数据成员时,要在静态数据成员名前加<类名>和作用域运算符;D. 静态数据成员不是所有对象所共用的。

48. ( A)是析构函数的特征。

A. 一个类中只能定义一个析构函数;C. 析构函数的定义只能在类体内; B. 析构函数与类名没有关系;D. 析构函数可以有各个或多个参数。

;49. 已知:p是一个指向类A数据成员m的指针,A1是类A的一个对象。

如果要给m赋值为5,(C )是正确的。

A. A1.p=5;C. A.*p=5; B. A1->p=5;D. *A1.p=5;50. 派生类的构造函数的成员初始化列中,不能包含( C )。

A. 基类的构造函数;B. 派生类中子对象的初始化;C. 基类的子对象初始化;D. 派生类中一般数据成员的初始化51. 派生类的对象对它的基类成员中( A)是可以访问的。

A. 公有继承的公有成员;B. 公有继承的私有成员;C. 公有继承的保护成员;D. 私有继承的公有成员。

52.C++类体系中,不能被派生类继承的有(A )。

A.构造函数B.虚函数C.静态成员函数D.赋值操作函数53.下面标识符中正确的是(A )。

相关文档
最新文档