《C语言》10-11(2)试卷A

2020-03-27 02:15

2006 – 2007 学年第二学期期末试卷(A)

一、程序选择(每题3分,共30分,将答案的序号填入括号中)

1. 假定w,x,y,z和m均为int型变量,有如下程序段: w=1; x=2; y=3; z=4; m=(w

m=(m

m=(m

B. 3

C. 2

D. 1

则执行程序段后,m的值为( ): 2. 下面程序输出结果是( ): int j=4,k=11; switch(k%j){ case 1:k++; case 2:j++; case 3:k-=j; case 0:k+=j; }

cout<

if(m++>5)cout<

A. 7

B. 6

C. 5

D. 4

4. 下面程序输出结果是( ): int i=5;int j=10; while(i<15) { }

cout<

A. 95

B. 59

C. 84

D. 48

6. 下面程序的运行结果是( )。

06计教1班,东墩04五专1、2、3、4班《C++程序设计》试题A卷 第1 页 (共 8 页)

A. 47 B. 415 C. 411 D. 以上都不对

3. 下面程序输出结果是( )

if(i

A. 55

B. 66

C. 1515

D. 1010

5. 下面程序输出结果是( ):

void main(){

int y=18,i=0,j,a[8]; do

{ a[i]=y%2;i++; y=y/2; }while(y>=1);

for(j=i-1;j>=0;j--)cout<

A. 10000

B. 10010

C. 0010

D. 10100

7. t为int型变量,进入下面的循环之前,t的值为0, while(t=1) { ...... }

则以下叙述中正确的是( ) A. 循环控制表达式的值为0

B. 循环控制表达式的值为1 C. 循环控制表达式不合法 D. 以上说法都不对 8. 有以下程序 void main(){

char a[]={'a','b','c','d','e','f','g','h','\\0'}; i=sizeof(a); }

程序运行后的输出结果是( )。 9. 设有函数定义: int f(char *s){ char *p=s;

while(*p!='\\0')p++; return (p-s); }

void main(){

cout<

则输出结果为( )。 int fun3(int x){ static int a=3; a+=x; return a; }

06计教1班,东墩04五专1、2、3、4班《C++程序设计》试题A卷 第2 页 (共 8 页)

int i,j;

j=strlen(a);

cout<

A. 9,9

B. 8,9

C. 1,8

D. 9,8

A. 3 B. 7 C. 8 D. 0

10. 下面程序的输出结果是( )。

void main(){ int k=2,m=1,n; n=fun3(k); n=fun3(m); cout<

A. 3

B. 4

C. 6

D. 9

二、写结果题(每题5分,共20分, 将结果写在每题右方)

1. [ZZ]设有以下程序: void main(){ int a,b,k=4,m=6; int *p1=&k,*p2=&m; a=p1==&m; b=(*p1)/(*p2)+7; cout<<\ cout<<\}

执行该程序后,a的值为___________, b的值为___________ 2. 写出下列程序的运行结果: #include \void main(){ int x,y,z; x=1; y=1; z=1; x=x||y&&z;

cout<

3. 写出下列各题最后一个表达式的值: (1)

int i=6,j=30;

if(i=j)i++; if(i

float x=2.5, y=4.7;

int a=7;

x+a%3*(int)(x+y)%2/4;

06计教1班,东墩04五专1、2、3、4班《C++程序设计》试题A卷 第3 页 (共 8 页)

(3) #define v i+j

int i=4,j=15; i+=v/3;

4. 写出下列程序的运行结果: #include \void main(){

for(int i=1;i<6;i++) { } }

for(int j=0;j

三、程序填空(每题5分,共30分, 将答案填入空格中)

1. [NC]以下程序片段的功能是先从键盘输入一个数N,然后输入N个整数,接着求出这N个数的最小值并显示结果。请根据题意填空。

void main(){ int N;

cin>> N; //读入数N

int *p= ①____________________; //申请内存,以存放N个整数 int i,min;

for(i=0; i

cin>> ②________________;

min=p[0];

for(i=0; i

if(min ③________________)

min= ④____________________;

cout<

⑤_________________________; //释放内存 }

2. [ZZ,HS,DG]以下程序调用invert函数按逆序重新放置a数组中元素的值。a数组中的值在main函数中读入。

#include \#define N 10

void invert(int *s,int i,int j)//i,j为要逆序排列的元素最小下标及最大下标

06计教1班,东墩04五专1、2、3、4班《C++程序设计》试题A卷 第4 页 (共 8 页)

{ int t;

if(i

void main() {

int a[N],i; for(i=0;i

cin>> ④______________; //读入N个数到数组中

invert(a,0,N-1); for(i=0;i

3. [SZ,HS]以下程序中,主函数调用了LineMax函数,实现在N行M列的二维数组中,找出每一行上的最大值,请填空。

#define N 3 #define M 4

void LineMax(int x[N][M]) { int i,j,p;

for(i=0;i< ①____________;i++) { } }

void main() {

06计教1班,东墩04五专1、2、3、4班《C++程序设计》试题A卷 第5 页 (共 8 页)

t= ①_____________; *(s+i)=*(s+j); ②_______________=t; invert(s, ③__________,j-1);

cout<< ⑤_____________;<<\显示N个数

cout<

p=0;

for(j=1;j< ②____________;j++) if(x[i][p]

p= ③___________________; //记录较大的值所在的下标 cout<<\<< ④_________________<


《C语言》10-11(2)试卷A.doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:如何培养孩子良好习惯讲座后有感

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: