C++期末试卷
程序设计C语言期末试卷
制定具体的养护方案《程序设计(C语言)》期末考试卷(A)使用专业、班级学号姓名l 题数一二三四五总分得分一、选择题〖每题2分,共计40分〗1.下列变量合法的是(B)。
A.2a0 B._1a0 C.x>y D.b-a2.假设所有变量均为整型,则表达式(a=2,b=5,b++,a+b)的值是(B)。
A.7 B.8 C.6 D.23.有以下程序:void main( ){int x=101,y=011;printf("%2d,%2d\n",x,y);}执行后输出结果是(C)。
A.10, 9 B.101,11 C.101, 9 D.01,114.若有说明语句:char c='\72';则变量c( A )。
A.包含1个字符 B.包含2个字符 C.包含3个字符D.说明不合法,c的值不确定5.阅读一下程序,当输入数据的形式为25,13,10<CR> 正确的输出结果为( D )。
void main(){int x,y,z;scanf("%d%d%d",&x,&y,&z);printf("x+y+z=%d\n",x+y+z);}A.x+y+z=48 B.x+y+z=35 C.x+z=35 D.不确定值江南大学考试卷专用纸1考试形式开卷()、闭卷(√),在选项上打(√)开课教研室命题教师统一命题时间使用学期6.定义如下变量和数组:int k;int a[3][3]={1,2,3,4,5,6,7,8,9};则下面语句的输出结果为()。
for(k=0;k<3;k++) printf("%d",a[k][2-k]);A.3 5 7 B.3 6 9 C.1 5 9 D.1 4 77.有以下程序:void main(){ int i,n=0;for(i=2;i<5;i++){ do{ if(i%3) continue;n++;} while(!i);n++;}printf("n=%d\n",n);}程序执行后的输出结果是()。
《C语言程序设计(第2版)》试题库 期末试卷二
期末试卷二一、单项选择题(每题1分,共45分)1.下列变量名中,哪个是合法的()A.C&D B.string$C.char D._2132.C语言程序的基本单位是()A.程序行B.语句C.函数D.字符3.表达式a+b%3的值是()(设a=13.6,b=10)A.14.6 B.15C.15.9 D.16.64.保存一个C语言源程序的快捷键是()A.F1 B.F2 C.F3 D.F45.字符串”tc20\nlib\101\\\’”含有多少个字符( )A.10 B.11 C.12 D.136.Putchar()函数可以向终端输出一个()A. 整型变量或表达式值B. 实型变量值C. 字符串D. 字符或字符型变量值7.以下所列的C语言常量中,错误的是()A.0xFF B.2*5 C.2.5 D.04568.下列不合法的C语言赋值表达式是()A.a+=b-c B.a+b=cC.a=b=c=1 D.a*=++b+c9.下列程序运行后的输出结果是()main(){ int y=3,x=3;printf(“%d\n”,++x+y++);}A.5 B.8 C.7 D.610.若已正确定义x和y为double类型,则表达式x=1,y=x+3/2的值是()A.1 B.2 C.2.0 D.2.511.在C语言中运算对象必须是整型的运算符是()A.% B./ C.= D.*12.若有以下定义:char a; int b; float c;则表达式a*b-c值的类型为()A.int B.char C.double D.float13.下列正确的C语言赋值语句的是()A.x=3,y=5 B.a=b=1 C.i++; D.y=int(x)14.有如下程序段:int a1,a2;char c1,c2;scanf("%d%c%d%c",& a1,&c1,&a2,&c2);若要求a1、a2、c1、c2的值分别为10、20、A、B,正确的数据输入是()(<CR>表示回车) A.10A 20B<CR> B.10 A 20 B<CR>C.10 A20B<CR> D.10A20 B<CR>15.有如下程序,输入数据:12345m678<CR>后,x的值是()#include <stdio.h>main( ){ int x; float y;scanf("%3d%f", &x,&y);}A.12345 B.123 C.45 D.34516.有如下程序,对应正确的数据输入是()main( ){ float a, b;scanf("%f%f", &a,&b);printf("a=%f,b=%f\n",a,b);}A.2.04<CR> B.2.04,5.67<CR>5.67<CR>C.a=2.04,b=5.67<CR> D.2.045.67<CR>17.有输入语句:scanf("a=%d,b=%d,c=%d",&a,&b,& c);为使变量a的值为1,b的值为3,c的值为2,从键盘输入数据的正确形式是()A.132<CR> B.1,3,2<CR>C.a=1,b=3,c=2<CR> D.a=1 b=3 c=2<CR>18.已知字母A的ASCII码是65,以下程序的执行结果是()main( ){char c1='A', c2='Y';printf("%d,%d\n", c1, c2);}A.A,Y B.65,65 C.65,90 D.65,8919.以下程序的执行结果是()main( ){ int a=2,b=5;printf("a=%d,b=%d\n", a, b);}A.a=%2,b=%5 B.a=2,b=5C.a=%%d,b=%%d D.a=%d,b=%d20.最适合解决选择结构“若x>0, 则y=1;否则y=0;”的语句是()A.switch B.嵌套的if-else C.if-else D.if21.设整型变量x,y和z的值依次为3,2和1,则下列程序段的输出结果是()if(x>y)x=y;if(x>z)x=z;printf(″%d,%d,%d\n″,x,y,z);A.1,1,1 B.1,2,1 C.1,2,3 D.3,2,122.执行下列程序段后,变量x的值是()int a=8,b=7,c=6,x=1;if(a>6) if(b>7) if(c>8) x=2;else x=3;A.0 B.1 C.2 D.323.运行下列程序的输出结果是()main(){ int a1=1,a2=1,a3=1,a4=1;if (a1>0) a3++;if (a1>a2) a3--;else if (a1= =a2) a3++;else a3--;printf(″%d,%d,%d,%d\n″,a4,a3,a2,a1);}A.1,1,1,1 B.1,2,3,4C.4,3,2,1 D.1,3,1,124.执行下列语句后,整型变量x的值是()switch (x=1) { case 0:x=10;break;case 1:switch (x=2) {case1:x=20;break;case2:x=30;}}A.30 B.20 C.10 D.125.以下说法中正确的是()A.continue和break只能用在循环体中B.continue只能用在循环体中C.break只能用在循环体中D.continue只能用在循环体外26.执行下列程序段的输出是()m=8;while (m>=5) m--,--m,n=m--- m;pritnf (″%d,%d″,m,n);A.2, 0 B.5,-1 C.5,0 D.5,127.设整型变量x的值为1,执行下列循环语句后,变量x 的值是()do x++; while (x++<2);A.2 B.3 C.4 D.528.执行下列语句后,变量k的值是()for (k=0;k<=5;k++) do k++;while (k<5);A.5 B.6 C.7 D.829.下列程序段中,不能使变量m的值等于10的程序段是()A.m=0; B.do m=0;while (m++<9); while (m++<10);C.for (m=8;m<10;m++); D.m=0;L:m++;if (m<10)goto L;30.下列语句中不正确的是()A.static int a[5]={1,2,3,4,5};B.static int a[5]={1,2,3};C.static int a[]={0,0,0,0,0};D.static int a[5]={0*5};31.说明:int a[10];则对a数组元素的正确引用是()A.a[10] B.a[3.5] C.a(5) D.a[10-5] 32.下面程序的运行结果是()main(){ int a[6],i;for(i=1;i<6;i++){a[i]=9*(i-2+4*(i>3))%5;printf(“%2d”,a[i]);}}A.-4 0 4 0 4 B.-4 0 4 0 3C.-4 0 4 4 3 D.-4 0 4 4 033.以下程序的输出结果是()main(){ int n[2]={0},i,j,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.1 B.3 C.2 D.434.下面程序的输出结果是()main(){char s[]=”cat and mouse”;int j=0;while(s[j]!=’\0’) ++j;printf(“%d\n”,j);}A.11 B.0 C.12 D.1335.下面程序的运行结果是()#include <stdio.h>main(){char a[10]=”student”;char b[10]=”boy”;int n;n=strlen(a)+strlen(b);printf(“%d”,n);}A.7 B.10 C.12 D.2036.以下程序的输出结果是()void fun(int a,int b,int c){ a=456;b=567;c=678;}main(){ int x=10,y=20,z=30;fun(x,y,z);printf("%d,%d,%d\n",x,y,z);}A.30,20,10 B.10,20,30C.456,567,678 D.678,567,45637.以下说法中正确的是()A.C语言程序总是从第一个定义的函数开始执行。
清华大学“C语言程序设计”期末试卷
样例: 输入 1 2 -4 0 32 1 -2 2 输出 3 -4+x^2
第三部分
综合问题 (任选一题完成,共 10 分)
3-A. 代数式处理 ( 3-A.cpp ) 读入一个仅含变量 x 的代数式和 x 的值, 输出该式在 x=x0 处的函数值和导函数的值。 表达式中除了字母 x 和+, -, *, /, (, )外没有其他字符
试卷说明: 考试形式为上机考试,考试时间总计 3 小时 请在 C 盘根目录下建立一个子目录,以自己的学号命名,并将所有的程序存入 此目录。如,学号为 010000 的同学,需要建立目录 C:\010000,并将程序存入 此目录。按照题目名称中指定文件名保存你的程序,并保存一个备份,以免程 序被意外破坏。例如,第一题应当保存一个叫做 1-1bak.cpp 的文件。 3-A 和 3-B 最多只能选择一道题目。如果同时存在 3-A.cpp 和 3-B.cpp,我们将 随机选择一道题目进行评分。 所有题目采用键盘输入和屏幕输出,你的程序不得访问任何文件。 评分时将查看源程序,请严格遵守题目中给出的限制。
输入: 先读入一个字符串,字符总数不超过 100 并且不会有格式错误的代数式。 然后读入一实数作为 x0 的值。
输出:
7
包含两个实数,分别是函数值和导函数值。把所得结果保留 2 位小数输出。如果出 现分母为 0 的情况则只输出一个字符串"error"。
样例: 输入 x*(x+x/x) 100 输出 10100.00 201.00
输入: 第 1 行为一个整数 t,表示任务的类型,t=1 表示做加法,t=2 表示做减法。 第 2 行为 1 个整数 n,表示需要计算的数的位数。 以后 n 行,每行为 2 个数字,分别是同一位上的被加数和加数(当 t=1 时);或被 减数和减数(当 t=2 时)。从第 3 行起,位数依次由高到低,第 3 行为最高位,第 n+2 行为最低位。
计算机c语言期末考试卷八
后,变量c 的数据类型是( D ).A .intB .charC .float D. double10.设n=10,i=4,则赋值运算“n%=i+1”执行后的n 值是( A ). A .0 B.1 C .2 D.3二.写程序运行结果(每题6,共18分)1.#include<stdio.h> main( ) {int s=0,i; i=1;while (i<=100) {s=s+i; i++;if (s>20) Break; }p rintf(“%d \n”,s); }运行结果: 212.#include<stdio.h> main(){int i=5,a=0; switch(i){case 1:a+=1;case 2:a+=2;break; case 3:a+=3; default:a+=4; }printf("%d\n",a);}运行结果:43.#include<stdio.h>main(){int i;i=1;while(i<=10){if(i%4==0)break;printf(“%d\n”,i);i++;}}运行结果:123三.程序填空(每题8分,共16分)1.我国1994年的人口是12亿,假设当时没有计划生育,按5%的年增长,那一年达到20亿?#include<stdio.h>main( ){int year;float s;year=1994;s=12;while (__s<20__) {year++;__s=s*1.05__;}printf(“year=%d\n”,year);}2.下面程序的功能是输出所有的水仙花数,填充程序空白处. #include<stdio.h>main(){int m,x,y,z;for(m=100;m<=999;m++){x=m/100;y=___m/10%10__;z=__m%10__;if(m==x*x*x+y*y*y+z*z*z)printf("%d\n",m);}}四.流程图(每题10分,共10分)1根据流程图写出对应的程序.#include<stdio.h> main() {int s,i; s=0; i=1; do{s=s+i; i++;} while(i<=100); printf(“s=%d\n ”,s);}五.编程题(每题12分,共36分)1.编写程序按公式c=2(a+b)求平行四边形周长. #include<stdio.h> main() {float a,b,c; printf(“a,b=”); scanf(“%f%f ”,&a,&b); c=2*(a+b);printf(“c=%f\n ”,c); }2.编写程序输入一个分数x(0--100)按下列情况输出其属于那个级别. x ≥80 优秀 60≤x<80 中等 x<60 不及格 #include<stdio.h> main() {float x; printf(“x=”);scanf(“%f ”,&x); if(x>=80)printf(“优秀”);else if(x>=60)printf(“中等”);else printf(“不及格”);}3.某班50人,编写程序输入该班级某门课程的成绩存入数组a,求该班级课程平均分.#include<stdio.h>main(){float a[50],sum,aver;int i;for(i=0;i<50;i++)scanf(“%f”,&a[i]);sum=0;for(i=0;i<50;i++)sum=sum+a[i];aver=sum/50;printf(“平均=%5.2f\n”,aver);}。
C语言程序设计期末考试卷及问题详解
文案大全C 语言程序设计期末考试卷及答案一、单项选择题。
从A 、B 、C 、D 四个选项中,选择一个最佳答案填入括号内( 每小题1分,共计30分)。
1.一个C 语言程序的执行是从( )。
A )本程序文件的第一个函数开始,到本程序文件的最后一个函数结束B )本程序的main 函数开始,到main 函数结束C )本程序的main 函数开始,到本程序文件的最后一个函数结束D )本程序文件的第一个函数开始,到本程序的main 函数结束2.下列选项中不属于...C 语言关键字的是( )。
A )switch B )printf C )default D )case3.设有语句 int a = 4; ,则执行了语句 a += a -= a * a; 后,变量a 的值是( )。
A )24B ) -24C )4D )164.已知int i;float d;,则正确的表达式是( )。
A )(int d)B )int(d)%iC )(int)d%iD )int(d%i)5.已知int i,a;,执行语句i=(a=3*9,a/5),a+11; 后,变量i 的值是( )。
A )5B )16C )27D )386.下列选项中合法的字符型常量是( )。
A )"a"B )'\n'C )"\n"D )a7.下面程序的运行结果是( )。
#include <stdio.h> void main( ){ int k = 15;printf("k = %d,k = %o,k = %x\n",k,k,k); }A )k = 15,k = 15,k = 15B )k = 15,k = 17,k = 17C )k = 15,k = 017,k = 0xfD )k = 15,k = 17,k = f8.已知a,b,c 为int 类型,执行语句:scanf ("%d%d%d",&a,&b,&c );使得a 为10,b 为20,c 为30,以下不正确...的输入形式是( )。
陇东学院期末考试卷C语言
陇东学院期末考试卷C语言一、填空题1、设有如下结构体说明:struct ST{int a;float b;struct ST*c;doublex[3];}st1;请填空,完成以下对数组s的定义,使其每个元素均为上述结构体类型。
2、一个C语言源程序由若干函数组成,其中至少应含有一个3、C语言源程序的基本单位是4、若有定义语句:int m=5,y=2;则执行表达式y+=y-=m*=y后的y 值是5、表达式8/4*(int)2.5/(int)(1.25*(3.7+2.3))值的数据类型为。
6、若x=0123,则表达式(5+(int)(x))&(~2)的值是。
7、下面程序段是找出整数的所有因子。
请填空。
scanf("%d",&x);i=1;for(;;){if(x%i==0)printf("%3d",i);i++;}8、设有宏定义如下:#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);9、在C语言中,二维数组元素在内存中的存放顺序是。
10、若有以下定义和语句,在程序中可通过指针数组p,用*(p[i]+j)等4种形式引用数组元素s[i][j],另3种形式分别是:、和。
(假设i、j已正确说明并赋值。
)int s[10][6],*p[10];for(i=0;i<10;i++)p[i]=s[i];二、选择题11、C语言中的标识符只能由字母、数字和下划线3种字符组成,且第一个字符( )A.必须为字母B.必须为下划线C.必须为字母或下划线D.可以是字母、数字和下划线中任一种字符12、在C语言中,char型数据在内存中的存储形式是()。
《C#程序设计》期末试卷
《C程序设计》期末试卷C程序设计期末试卷一:单选题(每题1分,共20分)1. 下列哪个是C的关键字?A. publicB. staticC. classD. new2. C中的结构体和类有什么区别?A. 结构体只能包含字段,类可以包含方法B. 结构体不能继承,类可以继承C. 结构体不能被实例化,类可以被实例化D. 结构体不能定义构造函数,类可以定义构造函数3. 在C中,什么是委托?A. 一种特殊的类,用于封装方法B. 一种特殊的变量,用于存储方法C. 一种特殊的数据类型,用于传递方法D. 一种特殊的属性,用于调用方法4. C中的Lambda表达式用于什么?A. 定义匿名方法B. 定义委托类型C. 定义事件处理程序D. 定义属性和索引器5. 下列哪个集合类型是有序的?A. List<T>B. HashSet<T>C. Dictionary<TKey, TValue>D. Stack<T>...二:填空题(每题2分,共10分)1. C中的基本数据类型有int、float、bool等,使用的是_______。
2. 在C中,我们可以使用_______语句来捕获异常。
3. 在C中,_______是一种数据类型,它表示一个逻辑值,只能是true或false。
4. C中的_______关键字用于指示一个方法不会返回任何值。
5. 在C中,_______语句用于处理多个备选项,并根据条件选择其中的一个执行。
...三:编程题(每题10分,共40分)1. 编写一个程序,计算斐波那契数列的第n项,并将结果打印出来。
2. 写一个C函数,输入一个整数n,输出n的阶乘。
3. 编写一个C程序,接收一个字符串,统计字符串中每个字符出现的次数,并将结果显示在控制台上。
4. ...附件:1. 附件1:C程序设计项目案例2. 附件2:C高级编程教程法律名词及注释:1. 版权法:一种法律制度,用于保护原创作品的独立权利。
2022上学期C语言期末试卷选择题
2022上学期C语言期末试卷选择题1、下列叙述中,不正确的是()。
A、一个C源程序必须有且只有一个主函数B、一个C源程序可以包含零个或若干个子函数C、在C源程序中,注释说明必须位于语句之后D、C源程序的基本结构是函数2、下列叙述中,不正确的是()。
A.分号是C语句的必要组成部分B.C语句的注释可以写在语句的后面C.函数是C程序的基本单位D.主函数的名字不一定有main表示3、以下不是C语言的特点是()。
A、C语言简洁紧凑B、C语言可以直接对硬件进行操作C、C语言的可移植性好D、C语言编程容易4、构成C语言的基本单位是()。
A、过程B、函数C、子程序D、命令5、一个C程序的执行是从()A、main函数开始,直到main函数结束B、main函数开始,直到最后一个函数结束C、从第一个函数开始,直到最后一个函数结束D、第一条语句开始,直到最后一条语句结束6、在C语言中,main函数的位置A、必须作为第一个函数B、必须作为最后一个函数C、可以任意D、必须放在它所调用的函数之后7、C程序是由()构成的。
A、一个主程序与若干个子程序B、一个或多个函数C、若干过程D、若干子程序8、以下叙述不正确的是()。
A.在C程序中,注释说明只能位于一条语句的后面B.注释说明被计算机编译系统忽略C.注释说明必须括在“/某”和“某/”之间,注释符必须配对使用D.注释符“/”和“某”之间不能有空格9、下列符号串中,属于C语言合法标识符的是。
A.e某-1B.ifC._cookD.951a10、当把以下四个表达式用作if语句的控制表达式时,有一个选项与其他三个选项含义不同,这个选项是()。
A、K%2B、K%2==1C、(K%2)!=0D、!K%2==111、对于一个完整的可运行的C源程序,下列哪一个说法是正确的?A、C语言程序总是从第一个定义的函数开始执行。
B、在C语言程序中,要调用的函数必须在main()函数中定义。
C、C语言程序总是从main()函数开始执行。
程序设计语言期末试卷C
试卷代号:7021 C卷《程序设计语言》期末试卷(试卷总分:100分,考试时间:120分钟,答案写在答卷纸上)一、单项选择题(每题2分,共40分)1. 以下叙述中不正确的是________。
A)在函数中,通过return语句传回函数值B)在函数中,可以有多个return语句C)在C中,main后的一对圆括号中也可以带有形参D)在C中,函数的调用必需在一条独立的语句中完成2. 在C语言中,正确的实型常数是________。
A)2e B).09 C)3e2.1 D)e53.若一个外部变量的定义形式为static int x ; 其中static的作用是________。
A)将变量存放在静态存储区,使x的值可以永久保留B)使变量x可以由系统自动初始化C)使x的值可以永久保留D)使x只能在本文件内引用4. 以下程序的输出结果是________。
main (){int a = 12 , b = 12;printf (“ %d %d\n”, - - a,+ + b );}A)10 10 B)12 12 C)11 10 D)11 135. 若有下列定义:char c[3],*pc=c; 则对c数组元素地址的正确引用是________。
A)&c[3] B)pc+2 C)c++ D)&c6.语句if (!i ) i++; 中的条件表达式!i 等价于________。
A)i==0 B)i!=1 C)i!=0 D)-i7.C语言中规定,if语句的嵌套结构中,else总是与________配对。
A)与最近的if 配套B)与第一个if 配套C)按缩进位置相同的if配套D)与最近的且尚未配对的if 配套8.当执行以下程序段时________。
x=-1;do { x=x*x; } while(!x);A)循环体将执行一次B)循环体将执行两次C)循环体将执行无限次D)系统将提示有语法错误9.简单变量做实参时,实参与其对应的形参之间的数据传递方式是________。
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答案北京信息科技大学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语言期末试卷
37、有以下程序: main() {int aa[5][5]={{1,2,3,4},{5,6,1,8},{5,9,10,2},{1,2,5,6}}; int s=0,i; for(i=0;i<4;i++) s+=aa[i][2]; printf("%d",s); } 程序运行后的输出结果是( )。(2分)
A、预处理命令行都必须以“#”号开始,结尾不加分号 B、在程序中凡是以“#”开始的语句行都是预处理命令行
C、C程序在执行过程中对预处理命令进行处理 D、预处理命令可以放在程序的任何位置
33、fwrite函数的一般调用形式是( )。(1分)
A、fwrite(buffer,count,size,fp) B、fwrite(fp,size,count,buffer)
C、(c>=2&&c<=6)&&!(c%2) D、(c>=2&&c<=6)&&(c%2!=1)
16、main( ) {int n=4; while(n)printf("%d ",--n); } 以上程序的输出结果是( )。(1分)
A、2 0 B、3 1
C、3 2 1 0 D、2 1 0
5、设int a[2][3]={{5},{6}}; 则数组元素的值为5。
17、若a=3,b=4,c=5,d=6,则条件表达式a<b?a:c<d?c:d的值是()。(1分)
A、4 B、3
C、2 D、1
18、下列关于逻辑运算符两侧运算对象的叙述中正确的是()。(1分)
A、只能是整数0或1 B、只能是整数0或非0
兰州大学《C语言及程序设计》2023-2024学年第一学期期末试卷
3. 在 C 语言中,以下哪种函数可以实现字符串的拷贝? A. strcpy B. strcmp C. strlen D. strcat
4. 在指针运算中,以下哪种操作可以实现指针的移动? A. ++ B. -C. * D. →
四、简答题(每题 10 分,共 40 分) 31. 请简述 C 语言的基本特点及其在程序设计中的重要性。 32. 试述指针运算的基本原理及其在实际应用中的优缺点。
33. 请简述结构体的基本概念及其在实际应用中的优缺点。 34. 试述递归函数的基本原理及其在实际应用中的优缺点。
考试说明: 1. 答题前请务必将姓名、学号及班级填写在答题纸上。 2. 请使用蓝黑色钢笔或签字笔答题,字迹清晰。 3. 请遵守考场纪律,禁止携带任何电子设备和参考资料。 4. 考试时间为 120 分钟,超时不予批卷。
二、判断题(每题 2 分,共 20 分)
11. 在 C 语言中,所有变量都需要进行显式初始化。( ) 12. 指针变量可以直接进行算术运算。( ) 13. 在 C 语言中,字符串可以直接进行比较操作。( ) 14. switch 语句可以实现多重选择操作。( ) 15. 在 C 语言中,函数可以返回多个值。( ) 16. 数组可以实现动态分配内存。( ) 17. 在 C 语言中,结构体可以实现继承操作。( ) 18. 指针变量可以指向常量。( ) 19. 在 C 语言中,递归函数可以实现无限循环。( ) 20. 在 C 语言中,所有函数都需要进行返回值类型的声明。( )
三、填空题(每题 2 分,共 20 分) 21. 在 C 语言中,_________函数可以实现字符串的拷贝。 22. 在指针运算中,_________操作可以实现指针的移动。 23. 在 C 语言中,_________头文件可以实现数学运算。 24. 在 C 语言中,_________函数可以实现字符串的比较。 25. 在 C 语言中,_________结构可以实现栈操作。 26. 在 C 语言中,_________函数可以实现输入输出操作。 27. 在 C 语言中,_________头文件可以实现字符串操作。 28. 在 C 语言中,_________函数可以实现动态内存分配。 29. 在 C 语言中,_________结构可以实现队列操作。 30. 在 C 语言中,_________函数可以实现递归操作。
C语言期末试卷(附答案)
}
p ri n tf ( “% d\ n ” ,a ) ;
}
6. 若下列程序运行时的输入是:1⊔2⊔3⊔4⊔5⊔6⊔7⊔8⊔9⊔10⊔11⊔12⊔13⊔14⊔15⊔16↵ (⊔表示空格 键,↵ 表示回车键),则程序执行后的输出是 (32)
double a2(int (*p)[4],int n) {
int i; double sum=0; p =p +n ;
{ static int j=1; j*= ++ n+ m-- ;
return j;
}
void main(void)
{ int k;
for(k= 0 ;k <5 ; k+ +) printf( “%3d”, fun(k++, k++)+k++);
} 5. 下列程序执行后的输出是
(3 1 )
#i nc lu d e< st di o. h >
2. 用 extern 关键字说明引用一个外部对象,其本质是: (18) 。 扩大被说明对 象的作 用域
3. 对于 printf(“Hello, world\n” );这样的函数调用,printf 函数实际接收到的实参 是 (19) 。指向这个 字符串的指针
4. 库函数 strcpy 的原型说明是: (20)
}
3. 下列程序执行后的输出是
(29) 。
#inc lude <s tdio. h> void sw ap(float x,float y)
{ int z; z=x , x=y, y=z;
} void fsw ap( void (*f)(float x,float y),float *x,float *y) {
c语言期末试卷B卷(附答案)
c语言期末试卷B卷(附答案)一、单项选择题(每小题2分,共30分)1.下列关于C语言用户标识符的叙述中正确的是(B)(A)用户标识符中可以出现在下划线和中划线(减号)(B)用户标识符中不可以出现中划线,但可以出现下划线(C)用户标识符中可以出现下划线,但不可以放在用户标识符的开头(D)用户标识符中可以出现在下划线和数字,它们都可以放在用户标识符的开头2.在C语言中,合法的字符常量是(A)(A)’\\087’(B)’\\某43’(C)’abe’(D)”\\0”3.某、y、z被定义为int型变量,若从键盘给某、y、z输入数据,正确的输入语句是(B)(A)INPUT某、y、z;B)canf(“%d%d%d”,&某,&y,(C)canf(“%d%d%d”,某,y,z);(D)(canf(“%d%d%d”,&某,y,&z);4.若整型变量a、b、c、d中的值依次为:1、4、3、2。
则条件表达式a(A)1(B)2(C)3(D)45.设有:inta=3,b=2,c=6,d=4,m=2,n=3;执行((m=a>b)||(n=c>d))后n的值为(B)(A)0(B)1(C)2(D)36.若a为int类型,且其值为3,则执行完a某=a+=a某a;后,a的值是(D)(A)–3(B)9(C)–12(D)1447.设inta=12,b=8;则a/b的结果为:(B)(A)1.5(B)1(C)3/2(D)28.若定义:inta=511,某b=&a;则printf(\的输出结果为(D)(A)无确定值(B)a的地址(C)512(D)5119.在C语言中,引用数组元素时,其数组下标的数据类型允许是(C)(A)整型常量(B)整型表达式(C)整型常量或整型表达式(D)任何类型的表达式10.在调用函数时,如果实参是简单变量,它与对应形参之间的数据传递方式是(B)(A)地址传递(B)单向值传递(C)由实参传给形参,再由形参传回实参(D)传递方式由用户指定11.数字字符0的ASCII值为48,若有以下程序main(){chara='1',b='2';printf(\printf(\}程序运行后的输出结果是(A)(A)3,2(B)50,2(C)2,2(D)2,5012.以下函数值的类型是(D)fun(float某){floaty;y=3某某-4;returny;}(A)int(B)不确定(C)void(D)float13.以下能正确定义一维数组的选项是(B)(A)inta[5]={0,1,2,3,4,5};(B)inta[]={0,1,2,3,4,5};(C)chara={' A','B','C'};(D)inta[5]=\14.有以下程序,结果为:(D)main(){inta[5]={1,2,3,4,5};int某pa=&a[1];printf(“%d”,pa[2]);}(A)3(B)4(C)5(D)215.假设tructtudent{intnum;floatcore;}tu1;则下列赋值语句中正确的是(C)(A)tudent.core=85;(B)tudent={1001,95};(C)tu1.num=1001;(D)tu1 ->num=1001;二、判断题(对的打“√”,错的打“某”,每小题1分,共10分)1.定义一个函数包括数据说明部分和执行语句部分,两者可以交叉出现。
C语言期末试卷
C、while循环的循环体至少被执行一次 D、do while循环的循环体至少被执行一次
19、若有定义char str[]= “very good”,则str的长度为( )。(1分)
A、8 B、9
27、复合语句中定义的变量的作用范围是()(1分)
A、整个源文件 B、整个函数
C、整个程序 D、所定义的复合语句
28、设已有定义:float x;,则下列对指针变量p进行定义且赋初值的语句中正确的是( )。(1分)
A、float *p=1024; B、int *p=(float)x;
C、定义数组长度时可以用常量或变量 D、可以作参数传递
23、若有说明:int a[][3]={0,0};则不正确的叙述是( )。(1分)
A、数组a的每个元素的初值都是0 B、数组a的第一维大小为1
C、数组a的行数为1 D、只有元素a[0][0]和a[0][1]初值为0,其余元素得不到初值0
A、if(x++) ; B、if(x>y&&y!=0)
C、if (x>0) x-- else y++ D、if (y<0){;} else x++;
15、在嵌套使用if语句时,C语言规定else总是()。(1分)
A、和之前与其具有相同缩进位置的if配对 B、和之前与其最近的if配对
A、自动(auto) B、静态(static)
C、外部(extern) D、寄存器(register)
26、下述函数定义形式正确的是()(1分)
C语言期末考试卷试题含答案
《C 语言程序设计》期末试卷一、单项选择题 (10x2 ’=20’)1、以下表达正确的选项是()A)C 语言的源程序不用经过编译就能够直接运转。
B)C 语言中的每条可履行语句最后都将被变换成二进制的机器指令。
C)C 语言源程序经编译形成的二进制代码能够直接运转。
D)C 语言中的函数不可以够独自进行编译。
2、一个 C语言的源程序中()A)一定有一个主函数B)可能有多个主函数C)一定有除主函数外其余函数D)能够没有主函数3、以下不可以定义为用户表记符的是()A)scanf B)Void C)_3com D)int4、若以下选项中的变量已正确立义,则正确的赋值语句是()A)x1=26.8%3;B)1+2=x2;C) x3=0x12;D)x4=1+2=3;5、设有定义: float a=2,b=4,h=3; 以下 C语言表达式中与代数式1( a b) * h 的计算结果不2.符合的是()A)(a+b)*h/2B) (1/2)*(a+b)*h C)(a+b)*h*1/2D) h/2*(a+b)6、C 语言顶用于构造化程序设计的 3 种基本构造是()A)次序构造、选择构造、循环构造B)if 、switch 、breakC)for 、 while 、do-whileD)if 、for 、continue7.在 while (!x )语句中的 !x 与下边条件表达式等价的是()A) x!=0B) x==1C) x!=1D) x==08、有以下程序:#include <stdio.h>void main(){int i=1,j=1,k=2;if( (j++||k++)&&i++ )printf( “ %d,%d,%d\n” ,i,j,k);}履行后的输出结果是()A)1,1,2B)2,2,1C)2,2,2D)2,2,39、有以下程序:#include <stdio.h>void main(){int i,s=0;for(i=1;i<10;i+=2)s+=i+1;printf( “%d\n”,s);}程序行后的出果是()A)自然数 1~9 的累加和B)自然数 1~10 的累加和C)自然数 1~9 中奇数之和D)自然数 1~10 中偶数之和10、有以下函数定:void fun(int n,double x){⋯⋯}若以下中的量都已正确立并,函数fun 的正确用句是()A)fun(int y,double m);B)k=fun(10,12.5);C)fun(x,n);D)void fun(n,x);二、填空 (10x2 ’=20’ )11、C 言描绘“ x 和 y 都大于或等于 z”的表达式是:。
《C语言程序设计》期末试卷
《C语言程序设计》期末试卷一. 单选题(共25题,25分)1. (单选题, 1分)被称为“C语言之父”的是以下哪一位?()A.Martin RichardsB.Ken ThompsonC.Dennis M. RitchieD.Brain W. Kernighan答案:D2. (单选题, 1分)有定义语句:int x,y;,若要通过scanf("%d,%d",&x,&y);语句使变量x 得到数值11,变量y得到数值12,下面四组输入形式中,错误的是: ()A.11 12<回车>B.11, 12<回车>C.11,12<回车>D.11,<回车>12<回车>答案:A3. (单选题, 1分)若以下选项中的变量已正确定义,则正确的赋值语句是:()A. x1=26.8%3 B.1+2=x2C.x3=0x12D.x4=1+2=3答案:C4. (单选题, 1分)下列循环语句中有语法错误的是____。
A. while(x=y) 5;B. while(0) ;C. do 2;while(x==b);D. do x++ while(x==10);答案:D5. (单选题, 1分)若有以下函数调用语句:fun(a+b,fun(d,(a,b)));在此函数调用语句中实参的个数是()。
A. 4B. 3C. 2D. 1答案:C6. (单选题, 1分)设函数fun的定义形式为void fun(char ch, float x ){ … }则以下对函数fun的调用语句中,正确的是()A. fun("abc",3.0);B. t=fun('D’,16.5);C. fun('65',2.8);D. fun(32,32);答案:D7. (单选题, 1分)在C语言中,只有在使用时才占用内存单元的变量,其存储类型是( )A.auto和registerB.extern和registerC.auto和staticD.static和register答案:A 自动和寄存型8. (单选题, 1分)当变量c的值不为2、4、6时,值也为"真"的表达式是( )A.(c==2)||(c==4)||(c==6)B.(c>=2&& c<=6)||(c!=3)||(c!=5)C.(c>=2&&c<=6)&&!(c%2)D.(c>=2&& c<=6)&&(c%2!=1)答案:B9. (单选题, 1分) C语言执行程序的开始执行点是( )。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
C++程序设计模拟试卷(五)一、单项选择题(本大题共20小题,每小题1分,共20分)在每小题列出的四个备选项中只有一个是符合题目要求的,请将其代码填写在题后的括号内。
错选、多选或未选均无分。
1. 静态成员函数没有()A. 返回值B. this指针C. 指针参数D. 返回类型答案:B解析:(P107)静态成员函数是普通的函数前加入static,它具有函数的所有的特征:返回类型、形参,所以使用(P107)静态成员函数,指针可以作为形参,也具有返回值。
静态成员是类具有的属性,不是对象的特征,而this表示的是隐藏的对象的指针,因此静态成员函数没有this 指针。
静态成员函数当在类外定义时,要注意不能使用static关键字作为前缀。
由于静态成员函数在类中只有一个拷贝(副本),因此它访问对象的成员时要受到一些限制:静态成员函数可以直接访问类中说明的静态成员,但不能直接访问类中说明的非静态成员;若要访问非静态成员时,必须通过参数传递的方式得到相应的对象,再通过对象来访问。
2. 在类的定义中,用于为对象分配内存空间,对类的数据成员进行初始化并执行其他内部管理操作的函数是()A. 友元函数B. 虚函数C. 构造函数D. 析构函数答案:C解析:(P75)定义构造函数作用就是初始化对象,而析构函数释放对象空间。
虚函数用于完成多态性,友元增加访问方便性。
3. 所有在函数中定义的变量,都是()A. 全局变量B. 局部变量C. 静态变量D. 寄存器变量答案:B解析:(P136)变量存储类可分为两类:全局变量和局部变量。
(1)全局变量:在函数外部定义的变量称为全局变量,其作用域为:从定义变量的位置开始到源程序结束。
全局变量增加了函数之间数据联系的渠道,全局变量作用域内的函数,均可使用、修改该全局变量的值,但是使用全局变量降低了程序的可理解性,软件工程学提倡尽量避免使用全局变量。
(2)局部变量:在函数内部定义的变量称为局部变量,其作用域为:从定义变量的位置开始到函数结束。
局部变量包含自动变量(auto)静态变量(static)以及函数参数。
auto变量意味着变量的存储空间的分配与释放是自动进行的。
说明符auto可以省略。
函数中的局部变量存放在栈空间。
在函数开始运行时,局部变量被分配内存单元,函数结束时,局部变量释放内存单元。
因此,任两个函数中的局部变量可以同名,因其占有不同的内存单元而不影响使用。
这有利于实现软件开发的模块化。
static变量是定义在函数体内的变量,存放在静态存储区,不用栈空间存储,其值并不随存储空间的释放而消失。
4. 假定AB为一个类,则执行“AB a(2), b[3],*p[4];”语句时调用该类构造函数的次数为()A. 3B. 4C. 5D. 9答案:B解析:(P79)a(2)调用1次带参数的构造函数,b[3]调用3次无参数的构造函数,指针没有给它分配空间,没有调用构造函数。
所以共调用构造函数的次数为4。
5. 如果表达式++a中的“++”是作为成员函数重载的运算符,若采用运算符函数调用格式,则可表示为()A. a.operator++(1)B. operator++(a)C. operator++(a,1)D. a.operator++()答案:D解析:(P186)运算符的重载,前缀先让变量变化。
调用++a,等价为a.operator++(),注意无参的形式。
后缀的话a++,等价于a.operator(0),带形参,形参名可省。
6. 已知f1和f2是同一类的两个成员函数,但f1不能直接调用f2,这说明()A. f1和f2都是静态函数B. f1不是静态函数,f2是静态函数C. f1是静态函数,f2不是静态函数D. f1和f2都不是静态函数答案:C解析:(P107)普通成员函数可以调用静态函数,相反静态函数不能调用普通成员函数,这与普通函数与常成员函数相同。
因此选择C项。
7. 一个函数功能不太复杂,但要求被频繁调用,则应把它定义为()A. 内联函数B. 重载函数C. 递归函数D. 嵌套函数答案:A解析:(P59)内联函数特征代码少,频繁调用,执行效率高。
重载函数解决统一接口的问题;递归是子程序调用,程序调用要耗费很多空间和时间,循环/迭代都比递归有效率得多,递归只是从形式上,逻辑比较简洁。
嵌套函数即反复调用,速度较慢。
所以选择A项。
8. 解决定义二义性问题的方法有()A. 只能使用作用域分辨运算符B. 使用作用域分辨运算符或成员名限定C. 使用作用域分辨运算符或虚基类D. 使用成员名限定或赋值兼容规则答案:B解析:(P139)解决二义性问题主要要两种方法:(1)赋值兼容规则;(2)虚基类。
9. 在main函数中可以用p.a的形式访问派生类对象p的基类成员a,其中a是()A. 私有继承的公有成员B. 公有继承的私有成员C. 公有继承的保护成员D. 公有继承的公有成员答案:D解析:(P132)公有成员可以在类外访问,保护类型成员可以在派生类中访问,但不能在类外访问,在main函数中访问,说明a是公有成员。
只有公有继承时a才能是公有的,所以D项正确。
10. 在C++中不返回任何类型的函数应该说明为()A. intB. charC. voidD. double答案:C解析:无形参或无返回值都可以用void来声明,int char double分别是整型、字符型和实型。
11. 若Sample类中的一个成员函数说明如下:void set(Sample& a),则Sample& a的含义是()A. 指向类Sample的名为a的指针B. a是类Sample的对象引用,用来作函数Set()的形参C. 将a的地址赋给变量SetD. 变量Sample与a按位与的结果作为函数Set的参数答案:B解析:(P53)成员函数使用对象的引用作为形参。
该函数的功能是将已知对象的所有数据成员的值拷贝给相应对象的所有数据成员,不会建立临时对象,这里是对象的引用所以选择B。
12. 要实现动态联编必须()A. 通过成员名限定来调用虚函数B. 通过对象名来调用虚函数C. 通过派生类对象来调用虚函数D. 通过对象指针或引用来调用虚函数答案:D解析:(P170)通过基类指针或基类引用来调用虚函数实现动态多态性,静态多态性通过重载来实现的。
所以选择D项。
13. 在派生类中定义虚函数时,可以与基类中相应的虚函数不同的是()A. 参数类型B. 参数个数C. 函数名称D. 函数体答案:D解析:(P170)虚函数在基类和派生类,具有相同的返回类型、形参类型和形参个数,而函数体可以根据不同的派生类或基类实现不同的操作,即不同函数体。
14. 实现两个相同类型数加法的函数模板的声明是()A. add(T x,T y)B. T add(x,y)C. T add(T x,y)D. T add(T x,T y)答案:D解析:(P63)实现两个相同类型数加法结果应该和操作数具有相同类型。
进行加法运算后结果也是和参数具有相同类型,需要返回值。
A无返回值时要用void,B形参无类型,C形参y没有类型,所以选择D项。
15. 下列不是描述类的成员函数的是()A. 构造函数B. 析构函数C. 友元函数D. 拷贝构造函数答案:C解析:(P109)友元函数虽然不是成员函数但是可以访问类所有成员。
构造函数、析构函数和拷贝构造函数(复制构造函数)都是类的特殊函数用于对象的创建和撤销,所以选择C项。
16. 继承机制的作用是()A. 信息隐藏B. 数据封装C. 定义新类D. 数据抽象答案:C解析:(P40)面向对象设计中的类的特点:抽象、封装、继承和多态等,继承用于对类的扩展,所以选择C项。
17. 已知:p是一个指向类A数据成员m的指针,A1是类A的一个对象。
如果要给m赋值为5,正确的是()A. A1.p=5;B. A1->p=5;C. A1.*p=5;D. *A1.p=5;答案:C解析:(P118)A中p是指针即地址,错误;B选项中A1不是指针不能使用指向运算符->,错误;“*”比“.”级别要高,所以D选项*A1.p=5相当于(*A1).p=5;错误。
另外涉及到指向成员函数时注意以下几点:指向成员函数的指针必须于其赋值的函数类型匹配的三个方面:(1)参数类型和个数;(2)返回类型;(3)它所属的类类型。
成员函数指针的声明:指向short型的Screen类的成员的指针定义如下:short Screen::* ps_Screen;ps_Screen可以用_height的地址初始化如下:short Screen::*ps_Screen=&Screen::_height;类成员的指针必须总是通过特定的对象或指向改类型的对象的指针来访问。
是通过使用两个指向成员操作符的指针(针对类对象和引用的.*,以及针对指向类对象的指针的->*)。
18. 如果采用动态多态性,要调用虚函数的是()A. 基类对象指针B. 对象名C. 基类对象D. 派生类名答案:A解析:(P171)基类指针或者基类的引用调用虚函数都会产生动态多态性19. 若有以下定义,则说法错误的是()int a=100,*p=&a;A. 声明变量p,其中*表示p是一个指针变量B. 变量p经初始化,获得变量a的地址C. 变量p只可以指向一个整型变量D. 变量p的值为100答案:D解析:指针变量如同其他变量一样,在使用之前必须先声明。
声明指针变量的格式为:<类型名>*<变量名>;其中,<类型名>是指针变量所指向对象的类型,它可以是C++语言预定义的类型,也可以是用户自定义类型。
<变量名>是用户自定义的标识符。
符号*表示<变量>是指针变量。
而不是普通变量。
*表示指针,p是变量,p指向一个整型的变量,值为a的地址值,*p=100。
20. C++语言建立类族是通过()A. 类的嵌套B. 类的继承C. 虚函数D. 抽象类答案:B解析:(P174)类族即同一个类派生出来的类,各个类是兄弟或父子关系。
二、填空题(本大题共20小题,每小题1分,共20分)请在每小题的空格中填上正确答案。
错填、不填均无分。
1. 假设int a=1,b=2;则表达式(++a/b)*b--的值为___。
答案:2[解析]前缀++或――表示先使变量值变化,再使用,这和后缀恰恰相反。
但是编译cout<<(++a/b)*b--时,先++a/b值为1,后1*b--,先取b=2,结果为2,再让b=1。
2. 复制构造函数使用___作为形式参数。
答案:(P80)对象的引用[解析]复制构造函数使用对象的引用来初始化一个新对象,避免临时产生对象。