当前位置:文档之家› 高级语言程序设计1期末考试试题(A卷)

高级语言程序设计1期末考试试题(A卷)

高级语言程序设计1期末考试试题(A卷) work Information Technology Company.2020YEAR《高级语言程序设计1》期末考试试题(A卷) (2005.1) 姓名: 学号: 专业(系):一、标记出如下程序中的语法错误,并简单说明出错原因(6分)。

#include<iostrem.h>void main(){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=”<<count<<endl;switch( d[i] ){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<iostream.h>main(){ int x=1,y=0,a=0,b=0;switch(x){case 1:switch(y){1case 0:a++;break;case 1:b++;break;}case 2:a++;b++;break;}cout<<a<<","<<b<<endl;}A. 2,1B.1,1C.1,0D.2,22.以下能正确计算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(a<b<c) {t=a;a=b;b=t;c--;}cout<<a<<”,”<<b<<”,”<<c;运行结果为()。

A)1,2,0 B)2,1,0 C)1,2,1 D)2,1,14.下面程序段的运行结果为()。

for(y=1;y<10;) y=((x=3*y,x+1),x-1);cou t<<“x=”<<x<<”y=”<<y;2A)x=27,y=27 B)x=12,y=13C)x=15,y=14 D)x=y=275.设有代码“int a=5;”,则执行了语句“a+=a-=a*a;”后,变量a的值是()。

A)3 B) 0 C)-40 D)-126.在下面的一维数组定义中,哪一个有语法错误。

A. int a[ ]={1,2,3};B. int a[10]={0};C. int a[ ];D. int a[5];7.要定义一个int型二维数组a,并使其各元素具有初值:2 3 0 04 05 00 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$,则输出什么结果?3#include<iostream.h>void main( ){ char ch;int sum=1;while(sum){ cin>>ch;if(ch=='$') break;if(ch>='a'&&ch<='z') sum++;}cout<<"sum="<<sum-1<<endl;}2.(5分)该程序的运行结果?#include<iostream.h>void main( ){ int m,sum=0;for(m=10;m<=20;m++){ if(m%3==0||m%2==0) continue;cout<<m<<'\t';}cout<<endl;}3.(5分)键盘输入1 4 6 3,则程序的运行结果为?#include <iostream.h>main(){char c;int i,data=0;cout<<"Input char : ";for (i=0;i<4;i++){ cin>>c;if (c<'0'||c>'9')break;data=data*10+c-'0';}cout<<"data="<<data+1;44.(5分)程序的运行结果为?#include <iostream.h>main ( ){ int i,j;for (i=2;i<5;i++){ for(j=2;j<5;j++)cout<<i*j;if(j==5)cout<<“\n”;}}5.(5分)程序的运行结果为?#include <iostream.h>void main ( ){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]<a[m]) m=j ;if (i!=m) {int t=a[i]; a[i]=a[m]; a[m]=t;}}for (i=0; i<6; i++)cout<<a[i]<<" ";}6.(5分)程序的运行结果为?#include <iostream.h>void main ( ){char str[3][50] = {"123 abc +-*/ ABC","Hello! OK! 9+7=15","We are students."};int a[3] = {0, 0, 0};5for (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<<a[i]<<" ";}四、程序填空题(30分)1.(6分) 程序功能:求出100以内所有奇数的和并输出#include <iostream.h>void main(){①for(int i=1; i<100 ; ② )s += ③ ;cout<<"s="<<s<<endl;}填写答案①:②:③:2.(6分) 程序功能:键盘输入10个正整数,求出其中的最大者mx 并输出。

#include <iostream.h>void main() {int ①for(int i=1; i<=10 ; i++){cin>>d;if ( ② )③}cout<<"mx="<<mx<<endl;}6填写答案①:②:③:3.(6分) 程序功能:将字符串str中的大写字母转换为小写,最后输出结果串。

#include <iostream.h>void main() {char str[50] = "I am a student. OK!";①while( ② ) {if ③i++;}cout<<str<<endl;}填写答案①:②:③:4.(6分) 程序功能:在任意输入的字符串str中的凡是’c’字母后添加“><”,然后输出结果串。

#include<iostream.h>void main(){char s[60],str[30];①for(int i=0,j=0; ② ;i++){ if( ③ ){ s[j++]='>';s[j++]='<';}}cout<<"The New string is:"<<s<<endl;}75.(6分) 程序功能:求下述序列的累加和(序列累加n项,正整数n 通过cin从键盘输入)。

sum= 2/1 + 3/2 + 5/3 + 8/5 + 13/8 + 21/13 + 34/21 + …#include <iostream.h>void main( ){int n,i=1,a=1,term31=2,term32=1;float sum=0;cin>>n;while(i<=n){ ①a=term31;② ;③ ;i++;}cout<<"sum="<<sum<<endl;}五、编程题(20分)(2题)1.(10分)编程序,按照如下方式说明二维数组:int a[10][10];并通过键盘为a 输入数据;而后找出a数组内处于“四边”的36个元素(0行与9行、0列与9列的那些元素)中满足如下条件的所有数据d并显示在屏幕上 -- d是3的倍数但并非偶数。

2.(10分)编程序,解决搬砖问题。

有36块砖,由成年男、女和小孩共36人来搬,男子每人搬4块,女子每人搬3块,两个小孩抬一块,要求一次全搬完,问需要男、女、小孩各几人?8。

相关主题