
《C+语言程序授计》模拟试愿三 一、就空题 1.执行“cout(y逻辑值为 8,作为语句标号使用的C+保留字case和default只用于 语句的定义体中。 9、若d的循环的“尾”为”hi1e(+i10)”,并且i的初值为0,同时在循环体中不会修 改1的值。则循环体将被重复执行次后正常结束。 10,在程序执行完一个 函数调用后,将结束整个程序的执行过程,返回到操作系统 或C+集成开发环境界面窗口。 11、假定一个二谁数组的定文为“ita[3][5们:”,则该数组所含元素的个数为 12、使用“typedef char阳[10][50]:”语句定文为含有10行50列二维字符数组 类型。 13、在C+语言中,一个函数由 和橘数体组成。 14、定义一个函数模板要用到的第一个C+保图字是 15、程序的编译是以 为单位进行的。 16、假定一个二维数组为a】,则a1们的地址值(以字节为单位)为(char*)a时 ◆sizeof(a[o][0]). 17、假定要动杏分配一个类里为ker的具有n个元素的数组,并由r指向这个动老数组, 则使用的语句表达式为 =new Norker[n】。 18、假定B为一个类,该类中含有一个指向动态数组空间的指针成员阳,则在该类的析构 函数中应该包含有一条 语句: 二、单流恩 19、在每个C+程序中都必须包含有这样一个函数,该函数的函数名为0。 A.nain B.MAIN C.nane D.function
《C++语言程序设计》模拟试题三 一、填空题 1、执行“couty 逻辑值为________。 8、作为语句标号使用的 C++保留字 case 和 default 只能用于________语句的定义体中。 9、若 do 循环的“尾”为”while(++i<10)”,并且 i 的初值为 0,同时在循环体中不会修 改 i 的值,则循环体将被重复执行______次后正常结束。 10、在程序执行完一个________函数调用后,将结束整个程序的执行过程,返回到操作系统 或 C++集成开发环境界面窗口。 11、假定一个二维数组的定义为“int a[3][5];”,则该数组所含元素的个数为________。 12、使用“typedef char BB[10][50];”语句定义________为含有 10 行 50 列二维字符数组 类型。 13、在 C++语言中,一个函数由__________和函数体组成。 14、定义一个函数模板要用到的第一个 C++保留字是____________。 15、程序的编译是以__________为单位进行的。 16、假定一个二维数组为 a[M][N],则 a[i]的地址值(以字节为单位)为(char*)a+ ____________________*sizeof(a[0][0])。 17、假定要动态分配一个类型为 Worker 的具有 n 个元素的数组,并由 r 指向这个动态数组, 则使用的语句表达式为 ________________ =new Worker[n]。 18、假定 AB 为一个类,该类中含有一个指向动态数组空间的指针成员 pa,则在该类的析构 函数中应该包含有一条______________语句。 二、单选题 19、在每个 C++程序中都必须包含有这样一个函数,该函数的函数名为()。 A.main B.MAIN C.name D.function

20、由C+目标文件莲找而成的可执行文件的缺省扩展名为0。 A.cpp B.exe C.obj D.e 21、在下面循环语句中内层循环体5语句的执行总次数为()。 for(int i=0:i roid main(){ 1nts1=0,2-0: for(int i=0:i<10:i++)
20、由 C++目标文件连接而成的可执行文件的缺省扩展名为()。 A. cpp B. exe C. obj D. c 21、在下面循环语句中内层循环体 S 语句的执行总次数为()。 for(int i=0; i void main() { int s1=0, s2=0; for(int i=0;i<10;i++)

1f(12)s1+=: else s2+-i; cout const int M=20: void main() int c2.c3.c5: c2-e3=c5=0: for(int i=l;i void nain({ char a[]-'abcdabeabdaeff"; 1ntb[51=ol,1=0: while(a[i]》( switch(a[i])【 case"a”:h0j+:break
if(i%2) s1+=i; else s2+=i; cout const int M=20; void main() { int c2,c3,c5; c2=c3=c5=0; for(int i=1; i void main() { char a[]="abcdabcabdaeff"; int b[5]={0}, i=0; while(a[i]) { switch(a[i]) { case "a": b[0]++;break;

case "b":b[l]++;break: case 'c":b[2]++:break: case 'd":b[3]++;break; default:b[4]++: i+: for(i=0:i5:i+)eout void LC(int a.int b)( int xma; a-b:b-x: cout(a void main( intx-25.-120:
case "b": b[1]++;break; case "c": b[2]++;break; case "d": b[3]++;break; default: b[4]++; } i++; } for(i=0;i void LC(int a, int b) { int x=a; a=b; b=x; cout void main() { int x=25,y=120;

cout)x: 量十三x: return n: 1 参考答案1 求出从键盘上输入的■个整数之和并返国: 35 int sl (int n) int x: 1f=1)=1: else x=sl(-1)+n*知:
cout>x; if(n==1) return x; int m=x; while(--n) { cin>>x; m+=x; } return m; } 参考答案: 求出从键盘上输入的 n 个整数之和并返回。 35、 int s1(int n) { int x; if(n==1) x=1; else x=s1(n-1)+n*n;

return x: 参考答案1 递归函数,求出1+22+32+,.n2的值。 36. 年inclu(1 ostrean.h> int*LJ(int a0,int n) int k-0; for(int i=1:ia[k])k=i: return Aa[k]: 1 参考荐案: 求出数组a中个元素的最大值元素,返目该元素的地址 37 includeciostream.h> void LI(int n) int*a=new int[n】: for(int I=0:i>a[i]: for(i=n-l:i-0:i-)cout(<*(a+i)<《"": cout(””: delete []a: 参考答案: 肥从键上输入的口个整数按与输入的相反次序显示出来。 五、偏程 38、编写一个主函数。己知6三a名30,15b≤36,求出满足不定方程2a+5=12%的全部整 数组解。如13,20)就是其中的一组解
return x; } 参考答案: 递归函数,求出 1+22+32+...+n2 的值。 36、 #include int* LJ(int a[], int n) { int k=0; for(int i=1;ia[k]) k=i; return &a[k]; } 参考答案: 求出数组 a 中 n 个元素的最大值元素,返回该元素的地址 37、 #include void LI(int n) { int* a=new int[n]; for(int i=0;i>a[i]; for(i=n-1;i>=0;i--) cout<<*(a+i)<<" "; cout<<" "; delete []a; } 参考答案: 把从键盘上输入的 n 个整数按与输入的相反次序显示出来。 五、编程 38、 编写一个主函数,已知 6≤a≤30,15≤b≤36,求出满足不定方程 2a+5b=126 的全部整 数组解。如(13,20)就是其中的一组解