《高级语言程序设计1》期末考试试题(A卷) (2005.1) 姓名: 学号: 专业(系):
一、标记出如下程序中的语法错误,并简单说明出错原因(6分)。
#include
int d[10], abc[6] = {2,4,0,-5,10,6,-8}, count=0; for(i=0; i<10; i++)
if(d[i]=i) count++; else count -;
cout<<” count=”< case 1,2: cout<<”1,2\\n”; break; case 3: cout<<”3\\n”; break; default: cout<<”others\\n”; } 1+2, 2+=3, count+=5; } 二、选择题(14分)(共7题,每题2分) 1.以下程序的输出结果是_____。 #include { int x=1,y=0,a=0,b=0; switch(x) { case 1: switch(y) { case 0:a++;break; case 1:b++;break; } case 2:a++;b++;break; 1 } cout< A. 2,1 B.1,1 C.1,0 D.2,2 2.以下能正确计算1*2*3*...*10的程序段是( )。 A) do {i=1;s=1; B) do {i=1;s=0; s=s*i; i++;} s=s*i;i++;} while(i<=10); while(i<=10); C) i=1;s=1; D)i=1;s=0; do {s=s*i; do{s=s*i; i++;} i++;} while(i<=10); while(i<=10); 3. int a=1,b=2,c=2; while(aA)1,2,0 B)2,1,0 C)1,2,1 D)2,1,1 4.下面程序段的运行结果为( )。 for(y=1;y<10;) y=((x=3*y,x+1),x-1); cout<<“x=”< 5.设有代码“int a=5;”,则执行了语句“a+=a-=a*a;”后,变量a的值是(A)3 B) 0 C)-40 D)-12 2 。 ) 6.在下面的一维数组定义中,哪一个有语法错误。 A. int a[ ]={1,2,3}; B. int a[10]={0}; C. int a[ ]; D. int a[5]; 7.要定义一个int型二维数组a,并使其各元素具有初值: 2 3 0 0 4 0 5 0 0 0 0 0 则正确的定义语句是 。 A.int a[][]={2,3,0,0,4,0,5,0,0,0,0,0}; B.int a[][4]= {2,3,0,0,4,0,5,0,0,0,0,0}; C.int a[3][4]= {{2,3},{4,,5}}; D.int a[][]={{2,3,0,0},{4,0,5,0},{0,0,0,0}}; 三 、读程序写结果(30分) 1.(5分)从键盘输入edrftgu$,则输出什么结果? #include if(ch=='$') break; if(ch>='a'&&ch<='z') sum++; 3 } cout<<\} 2.(5分)该程序的运行结果? #include for(m=10;m<=20;m++) { if(m%3==0||m%2==0) continue; cout< } cout< 3.(5分)键盘输入1 4 6 3,则程序的运行结果为? #include int i,data=0; cout<<\ for (i=0;i<4;i++) { cin>>c; if (c<'0'||c>'9') break; data=data*10+c-'0'; } cout<<\} 4.(5分)程序的运行结果为? #include { int i,j; for (i=2;i<5;i++) { for(j=2;j<5;j++) cout< 4 cout<<“\\n”; } } 5.(5分)程序的运行结果为? #include int a[6] = {1, 3, 5, 0, -5, 2}; for (int i=0; i<5; i++) { int m=i ; for (int j=i+1; j<6; j++) if (a[j] int t=a[i]; a[i]=a[m]; a[m]=t; } } for (i=0; i<6; i++) cout< 6.(5分)程序的运行结果为? #include char str[3][50] = { \ \ \ }; int a[3] = {0, 0, 0}; for (int i=0; i<3; i++) for (int j=0; str[i][j]!='\\0'; j++) if (str[i][j]>='0' && str[i][j]<='9') a[i]++; for (i=0; i<3; i++) cout< 四、程序填空题(30分) 5

