05计科《高级语言程序设计》期末考试卷B
《高级语言程序设计》模拟试题B卷——参考答案
武汉大学2009-2010学年度第2学期《高级语言程序设计(C语言)》学位考试模拟试卷B卷答案姓名:学号:专业:一.单项选择题:(选择最合适的答案填空,每小题2分,共16分)(D)1、设有变量定义:int m=5,n=3;则执行表达式((m+=2)>=7)||((n-=3)<10)后,m,n的值分别为_____ _。
A.5和0B.5和3C.7和0D.7和3(D)2、已知各变量的类型说明如下:int k,a,b;unsigned long w=5;double x=1.42;则以下不符合C语言语法的表达式是。
A.w+=-2B. k=(a=2,b=3,a+b)C. a+=a-=(b=4)*(a=3)D. x%(-3) (B)3、下面程序段的运行结果是。
#include <stdio.h>int main ( ){ int a=11,b=10,c=0;a/=b+(b&&c);printf(“%d\n”, a);return 0;}A.0B.1C. 1.1D. 11(C)4、头文件type1.h的内容如下所示:#define N 5#define M1 N*3程序如下:#include “type1.h”#define M2 N*2int main(){ int i;i=M1+M2;printf(“%d\n”,i);return 0;}则上述程序编译后运行的输出结果是:A.10B.20C. 25D. 30(A)5、设有如下定义:struck sk{ int a;float b;}data;int *p;若要使P指向data中的a域,正确的赋值语句是:A.p=&data.a;B. p=data.a;C. p=&a;D. *p=data.a (C)6、设有如下定义int a[ ]={10,11,12},*p=&a[0];则执行完*p++; *p+=1;后a[0],a[1],a[2]的值依次是。
高级语言程序设计(C语言)B试卷与答案
t=(++x)+(++x);
printf("%d\n",t);
}
A、16 B、17 C、19D、20
13、合法的数组定义是( 13 )。
A、char a[]={'m', 'y', '!'};B、char a[3]={"m", "y", "!"};
C、char a[]={}; D、char a="my!";
printf("%d\n",strlen(s));
A、6 B、12C、8D、14
11、假定有以下变量定义
int k=7, x=12;
则能使值为5的表达式是( 11 )。
A、x%kB、k%x
C、x/k D、k/x
12、以下程序的输出结果是( 12 )。
#include<stdio.h>
main()
{
int x,t;
A、0 B、32 C、20D、12
16、以下程序段的输出结果是(16)
float a=12345678.123;
printf("%4.2f\n",a);
A、8.12 B、5678
C、12345678.12D、提示出错、无结果
17、以下程序的输出结果是:( 17 )
main()
{char a[]={7,2,8,12,5,9,10};
4、若:char s[10][10];则数组元素的非法引用是(4)。
A、s[10][9]B、s[8][2*3]
C、s[3][4*2] D、s[4][10-1]
《高级语言程序设计》期末考试试卷附答案
《高级语言程序设计》期末考试试卷附答案一、选择题(共20题,每题3分,共60分)1. 下列四个选项中,均是合法的整型常量的选项是()A.160 –0XFFFF 011 B. -0XCDF 01A 0XE C. -01 986,012 0688 D. -0X48a 2e5 0x2. 下列四个选项中,均是不合法的浮点数的选项是()A.160.0.12 e3 B. 123 2e4.2 .e5C.18 0.0 123e4 D. e3. 234 1e33. 合法的C语言字符常数是()A.'\t' B. "A"C.54 D. A4. 在C语言中,要求运算数一定是整型的运算符是()A./ B. ++C.!= D. %5. 字符串常量”mine”的字符个数是()A.4 B. 5C.6 D. 76. 以下属于非法的C语言转义字符的是()A.'\b' B. '0xf'C.'\037' D. '\'7. 若x、y、z均为int型变量,则执行以下语句后的输出是()x=(y=(z=10)+5)-5;printf("x=%d, y=%d, z=%d\n",x,y,z);y=(z=x=0,x+10);printf("x=%d, y=%d, z=%d\n",x,y,z);A. x=10, y=15, z=10B.x=10, y=10, z=10x=0, y=10, z=0x=0, y=10, z=0C.x=10, y=15, z=10D. x=10, y=10, z=10x=10, y=10, z=0 x=10, y=10, z=08. 在以下一组运算符中,优先级最高的运算符是()A.<= B. =C.% D. &&9. 已知:int x; float y; 所用的scanf调用语句格式为:scanf( “x=%d, y=%f”, &x, &y );为了将数据10和66.6分别赋给x和y,正确的输入应当是()A.x=10, y=66.6<回车> B. 10, 66.6<回车>C.10<回车>66.6<回车> D. x=10<回车>y=66.6 <回车>10. 已有如下定义的输入语句,若要求A1,A2,C1,C2的值分别为10,20,A和B,当从第一列开始输入数据时,正确的数据输入方式是()(注:□表示空格,<CR>表示回车)int a1, a2,;char c1, c2;scanf( “%d%c%d%c”, &a1, &c1, &a2, &c2 );A.10□A□20B<CR> B. 10□A□20□B<CR>C.10A20B<CR> D.10A20□B<CR>11. 能正确表达:“当x取值在[1,10]和[200,210]范围内为真,否则为假”的表达式是()A.(x>=1) && (x<=10) && (x>=200) && (x<=210)B. (x>=1) || (x<=10) || (x>=200) || (x<=210)C.(x>=1)&&(x<=10) || (x>=200)&&(x<=210)D. (x>=1) || (x<=10)&&(x>=200) || (x<=210)12. 假定所有变量均已正确说明,下列程序段运行后x的值是()a=b=c=0; x=35;if(!a) x--;else if (b);if(c) x=3;else x=4;A.34 B. 4C.35 D. 313. 若变量c为char类型,能正确判断出c为大写字母的表达式是()A.'A'<=c<= 'Z' B. (c>= 'A')||(c<= 'Z')C.('A'<=c)and ('Z'>=c) D. (c>= 'A')&&(c<= 'Z')14. 若给定条件表达式:(!n) ? (c++) : (c--),则与表达式n等价的表达式是()A.n==0 B. n==1C.n!=0 D. n!=115. 已知:int a=4, b=5, c; 则执行表达式c=a=a>b后变量a的值为()A.0 B. 1C.4 D. 516. 定义int i=1; 执行语句while(i++<5); 后,i的值是()A.3 B. 4C.5 D. 617. 合法的数组说明是()A.int a[] = “string”; B.int a[] = { 0, 1, 2, 3, 4, 5 }; C.char a = “string”; D.char a[] = { 0, 1, 2, 3, 4, 5 };18. 当调用函数时,实参是一个数组名,则向函数传送的是()A.数组的长度 B. 数组的首地址C.数组每一个元素的地址 D. 数组每个元素中的值19. 函数调用:strcat(strcpy(str1,str2),str3)的功能是()A.将串str1复制到串str2中后再连接到串str3之后B. 将串str1连接到串str2之后再复制到串str3之后C.将串str2复制到串str1中后再将串str3连接到串str1之后D. 将串str2连接到串str1之后再将串str1复制到串str3中20. 已知:int a[]={1,2,3,4,5,6,7,8,9,10.11.12}, *p=a; 则(*p) 的值是()A.1 B. 2C.3 D. a二、判断题:(共10题,每题2分,共20分)()1.C语言中能使用关键字作为标识符。
高级语言程序设计期末考试卷B答案
《高级语言程序设计》(B卷答案)一、填空题(每空1分,共20分)1. 基本类型、派生类型、复合类型。
2. 1,false,true。
3.十进制数形式、指数形式。
4.调用初始化、执行函数调用、调用后处理。
5. 按值传递、地址传递或引用传递。
6. 数组名。
7. struct。
8. typedef。
9. 数据域、指针域。
10. 局部、全局二、选择题(每空2分,共20分)1-5:D B D B A 6-10:D C A B A三、程序填空题(每空2分,共10分)char *pchar *q*q=*p;p++;q++;四、读程序写结果(第1题6分,第2题4分,共10分)程序1:程序运行结果为:25 10 (3分)25 10 (3分)程序2:程序运行结果为:441 (4分)第 1 页共4 页五、程序设计题(共4题,每题10分,共40分)1.#include <iostream>using namespace std;int main(){int nTotal=0;for (int nNum=1; nNum<=50; nNum++)nTotal += nNum;cout<< "1到50的和为:"<< nNum<<nTotal << "\n";return 0;}2.#include<iostream>using namespace std;int getMax();void main(){int max=getMax();cout<<"The max number is: "<<max<<endl;}int getMax(){int c1,c2,c3;int max;cout<<"输入三个整数:";第 2 页共4 页cin>>c1>>c2>>c3;max=c1;if(max<c2) max=c2;if(max<c3) max=c3;return max;}3.#include <iostream>using namespace std;int sum(int);int main(){int n;cout<<"请输入一个整数:";cin>>n;cout<<"sum="<<sum(n)<<endl;return 0;}//求1+2+3+4+…+nint sum(int n){if(n==1)return 1;elsereturn(n+sum(n-1));//递归调用}第 3 页共4 页4.#include <iostream>#include<math>using namespace std;struct POINT3D{float x;float y;float z;};Double Distance(POINT3D pt1,POINT3D pt2){return sqrt(pow((pt1.x - pt2.x),2)+pow((pt1.y - pt2.y),2)+pow((pt1.z - pt2.z),2)); }int main(){POINT3D pt1={1,1,1},pt2={2,2,2};cout<<"两点间的长度是"<<Distance(pt1, pt2)<<endl;}第 4 页共4 页。
高级语言程序设计试题(B)卷
2011—2012学年度下学期期末考试11 级计算机教育专业(三年制)高级语言程序设计试题(B)卷(请将答案写在答题纸上,并写清考试课程名称、考场编号、考试时间及题号)一、填空(每空1分,共10分)1.C语言中普通整型变量的类型说明符为()。
2.执行下列语句int a=8; a+=a-=a*a; 后,a的值是()。
3.C语言中基本的数据类型有:()、实型、字符型。
4.数组int a[3][4];共定义了()个数组元素。
5.有如下输入语句:scanf("a=%d,b=%d,c=%d",&a,&b,&c);为使变量a的值为1,b的值为3,c的值为2,从键盘输入数据的正确形式应是()。
6.C语言的预处理语句以()开头。
7.C语言编译系统在判断一个量是否为“真”时,以0代表“假”,以()代表“真”。
8.结构化程序设计方法规定程序或程序段的结构有三种:顺序结构、()和循环结构。
9.用{}把一些语句括起来称为()语句。
10.设y为int型变量,请写出描述“y是奇数”的表达式()。
二、单项选择(每小题2分,共40分)1.设整型变量a为5,使b不为2的表达式是()。
A.b=a/2B.b=6-(--a)C.b=a%2D.b=a>3?2:12.为了避免嵌套的条件分支语句if-else的二义性,C语言规定:C程序中的else总是与()组成配对关系。
A.缩排位置相同的ifB.在其之前未配对的ifC.在其之前未配对的最近的ifD.同一行上的if3.以下程序的输出结果是( )。
int x=10,y=10;printf("%d %d\n",x--,--y);A.10 10B.9 9C.9 10D.10 94.选出下列标识符中不是合法的标识符的是()。
A.hot_doB.cat1C._priD.2ab5.以下程序的输出结果是()。
int a=5;float x=3.14;a*=x*('E' - 'A');printf("%f\n",(float)a);A.62.000000B.62.800000C.63.000000D.626.在函数中默认存储类型说明符的变量应该是()存储类型。
2018高级语言程序设计考卷B及参考答案
⋯⋯⋯⋯试卷名装订姓线⋯⋯⋯⋯⋯⋯装订线内不号要学答题,不要填写考生信级息班⋯业⋯专⋯⋯⋯⋯试卷装订线⋯院⋯学⋯⋯武汉理工大学考试试卷(B 卷)2018~2019 学年 1 学期高级语言程序设计 A课程闭卷时间 120分钟,56 学时, 3.5 学分,总分 100 分,占总评成绩 70%年月日题号一二三四五六七八九十合计任课满分30251530100教师得分得分一、单项选择题(本大题共15 小题,每小题 2 分,共30 分)在每小题列出的四个备选项中只有一个是符合题目要求的,请将所选代码填写在下面表格中的对应位置。
错选、多选或未选均无分。
1234567891011121314151.在 C++中,错误的 int类型的常数是A .0B. 037C. 0xaf D. 1E52.已知 int x = 7,y=8,z=5;则表达式 (x*y/z++)的值是A .9B. 9.33C. 11D. 11.203.与 k=n++完全等价的表达式是A .k=n , n=n+1B. n=n+1, k=n C. k=++n D. k+=n+14.设 int a=1,b=2,c=3,d=4,f;,执行语句 f=(a!=b)?c++:d++ ;后 f 的值是A .2B. 3C. 4D. 55.设 int a;, 则语句 for(a=0;a==0;a++);和语句 for(a=0;a=0;a++);执行循环的次数分别是A .0,0B.1, 0C.0,1D. 1,16.若有定义 int a[4]={1, 2,3, 4} ;则 a[a[0]+2 * a[2]-a[3]]等于A .1B. 2C. 3D. 47.定义二维数组并初始化,正确的是A.int a[ ][ ]={1,2,3,4,5,6};B. int a[ ][3]={1,2,3,4,5,6};C. int a[2][ ]={1,2,3,4,5,6};D.int a[2,3]={1,2,3,4,5,6};8.下面有关重载函数的说法中,正确的是A .重载函数名可以不同B .重载函数必须有不同的形参列表C.重载函数形参个数必须不同 D .重载函数必须具有不同的返回值类型9.在 C++中,函数的形式参数是A .局部变量B.全局变量C.静态变量D.外部变量10.设有 int a[3][2]={1,2,3,4,5,6,}, (*p)[3] ; p=a;则 *( p+1) +1 代表的是A. a[0][1]+1 B . &a[1]+1C. a[1][1] D . &a[1][1]11.已知函数 func 的原型是 double func(double *pd , int &ri);变量 x 和 y 的定义是 double x ;int y;则正确的调用语句是A. func(x,&y) ; B . func(&x,y); C. func(&x,&y); D . func(x,y) ;12.设有定义int i=0;执行语句“while ( i++<5 );”后,变量 i 的值为A. 1 B . 5C. 6 D .713.设有定义 int a[20];则与元素a[4]等价的表示为A. a+4B. *a+4C. *(a+4)D. *(a+16)14.设有定义 int i,*p;使 p 指向 i 的赋值语句是A . p=&i ;B . *p=&i ;C. *p=i ;D. p=*&i ;15.设宏定义#define N 3#define Y(n) ((N+1)*n)则执行语句cout<<2*(N+Y(5+1))<<endl;后的输出结果是A. 42B.48C. 54 D .62得分二、程序阅读题(本大题共 5 小题,每小题 5 分,共25 分)请将下面各程序运行后的输出结果填写在下划线处。
03303043高级语言程序设计(上)期末考试试卷B(上机考试)
上海电机学院2010–2011学年第1学期(03303043)《高级语言程序设计》(上)期末考试试卷B卷开课学院:电子信息学院出卷教师:吉顺如考试形式:闭卷考试时间90 分钟上机考考生姓名:学号:班级:一、选择题(共20分,每小题1分)1.以下叙述正确的是()A)C程序总是从main()函数开始执行B)组成C程序的是语句C)组成C程序的是main()函数D)C程序中,注释只能位于一条语句之后2.编译程序的功能是 ( ) A)建立并修改程序 B)将C源程序编译成目标程序C)调试程序 D)命令计算机执行指定的操作3.下列符号串中,属于C语言合法标识符的是()A)int B)sum one C)123 D)_2max4.以下选项中合法的C语言字符常量是()A) ‘\092 ' B) "a" C) ‘xy’ D) ‘\xA2’5.若有以下程序段,则变量c的二进制值是()int a=6,b=3,c;c=a^b<<2;A)00011011 B) 00011000 C) 00001010 D)000001106.要输入double型数据,用格式字符()。
A)%d B)%f C)%lf D)%s7.从终端输入一个字符,可以用函数()A)getchar( ) B)putchar( ) C)gets( ) D)puts( )8. 若x是int类型变量,y是float类型变量,则为了将数据55和55.5分别赋给x和y,则执行语句: scanf(“x=%d, y=%f”,&x,&y,); 时,正确的键盘输入是()。
A) 55 55.5↙ B)x=55, y=55.5↙ C)55↙55.5↙ D)x=55↙y=55.5↙9.假设变量a=b=c=d=1,m=n=2。
则执行表达式:(m=a>b)&&(n=c>d)后,n的值为( )A)0 B)1 C)2 D)310.为了避免嵌套的if-else语句的二义性,c语言规定else总是与( )组成配对关系。
高级语言程序设计试题(B)卷答案
2011—2012学年度下学期期末考试11 级计算机教育专业(三年制)高级语言程序设计试题(B)卷参考答案(请将答案写在答题纸上,并写清考试课程名称、考场编号、考试时间及题号)一、填空(每空1分,共10分)1.int2.-1123.整型4.125.a=1,b=3,c=26.#7.非零8.选择结构9.复合10.Y%2,或者y%2!=0二、单项选择(每小题2分,共40分)1.C2.C3.D4.D5.A6.C7.B8.D9.B10.C11.C12.D13.C14.D15.C16.D17.D18.C19.B20.C三、程序改错(每小题6分,共12分)1.//求n!#include<stdio.h>void main(){int i,n,f; //改为: int i,n,f=1;scanf("%d",n); //改为: scanf("%d",&n);for(i=1;i<=n;i++)f*=i;printf("%d!=%d\n",n,f);}2.以下程序中标注有下划线的语句有错误,请改正。
//求1+2+3+…+100#include<stdio.h>void main(){int i,sum=1; //改为: int i,sum=0;for(i=1,i<100,i++) //改为: for(i=1;i<=100;i++) sum+=i;printf("sum=%d\n",sum);}四、写出下列程序的运行结果(每小题6分,共18分)1.运行结果为:y=252.运行结果为:x=1,y=23.运行结果为:NO.:10101name:Li Linsex:Maddress:123 Beijing Road五、编程题(每小题10分,共20分)1.编程实现分段函数⎪⎩⎪⎨⎧<-=>=010001x x x y ,x 的值由键盘输入,输出对应的y 值。
高级语言程序设计试题(卷)与答案
1.1 单项选择题1.二进制语言是属于()①面向机器语言②面向问题语言③面向过程语言④面向汇编语言【解】人们研制了许许多多计算机程序设计语言,其中二进制语言直接来自计算机的指令系统,与具体计算机紧密相关,所以是一种面向机器语言。
面向问题语言是为了易于描述和求解某类特定领域的问题而专门设计的一种非过程语言。
面向过程语言是一种能方便描述算法过程的计算机程序设计语言。
有汇编语言,但没有面向汇编语言。
汇编语言也是一种面向机器的语言,与机器语言比较,汇编语言用有助于记忆的符号来代表二进制代码。
所以解答是①。
2.下列语言中不属于面向过程的语言是()①高级语言②低级语言③C语言④PASCAL语言【解】C语言和PASCAL等程序设计语言都是高级语言,它们用于描述复杂加工的处理过程,所以也称它们是面向过程语言。
低级语言是指机器语言和汇编语言,低级语言是面向机器的语言,而不是面向问题的语言。
所以解答是②。
3.下列字符中属于键盘符号的是()①②n ③t ④b【解】键盘符号是指键盘上有标记,并能在显示器上直接以其标记字样显示的字符。
有许多键盘上有标记的符号,它们不是用于直接显示的,键入这种字符用于表示特定的意义,如常用的回车符。
为了能让C程序标记这种符号,程序采用转义字符的方式书写这种字符。
如"n"、"t" 、"b"都不是键盘字符,在C语言中,它们都得用转义字符来表达。
只有字符才是键盘字符。
所以解答是①。
但在C程序中,反斜杠字符已特别用作转义字符的引导符,它也得用转义字符的表达形式书写,将它写成""。
4.下列字符列中,不是用来表达转义字符是()①②" ③074 ④【解】转义字符有三种书写形式:反斜社字符后接上某个规定的字符;反斜杠字符后接上13个八进制数字符;反斜社字符和字符X之后接上1至2个十六进制数字符。
后两种分别八进制数和十六进制数直接给出字符的ASCll代码值。
2020年高级语言程序设计考试试卷含答案
《 高级语言程序设计 》考试试卷(B 卷)(闭卷 时间120分钟)考场登记表序号一、单项选择题(每小题2分,共20分)1.在C 语言中,’\n ’在内存占用的字节数是【 】 A. 1 B. 2 C. 3 D. 42.不能作为C 语言标识符的是 【 】 A. x B. x_x C. x_0 D. 0_x3.设整型变量i 的值为3,则表达式“i- - -i ”的值为 【 】A. 0B. 1C. 2D. 34.设x 为整型变量,和表达式“!(!x)”值完全相同的表达式是 【 】 A. x= =0 B. x= =1 C. x!=0 D. x!=15.若变量x 和y 为double 类型,则表达式x=1,y=x+3/2的值是 【 】 A. 1 B. 2 C. 2.0 D. 2.56.在以下一组运算符中,优先级最高的运算符是 【 】 A. - - B. = = C. || D. &&7.设x,y,z,t 均为int 型变量,执行下列语句串后变量t 的值为 【 】 x=y=z=0; if (x=y) t=z; else t=!z;A. 不定值B. 2C. 1D. 0 8.设有下列循环语句,其循环体执行的次数是 【 】for (x=0,y=0; (x<4)||(y!=123);x++);A. 无限次B. 不确定次C. 4次D. 3次9.下列数据定义语句中,正确的是 【 】 A. char a[3][]={’abc ’,’1’}; B. char a[][3]={ ’abc ’,’1’}; C. char a[3][]={ ’a ’, ”1”}; D. char a[][3]={ ”a ”, ”1”};10.设有下列数据定义语句,则下列选项中使b 不为3的是 【 】 int a=3,b,*p=&a;A. b=*&a;B. b=*p;C. b=a;D. b=*a;二、填充题(每小题2分,共20分)1.用十进制表示整型常量-017为__________。
2017高级语言程序设计考卷B及参考答案
C.*a[0]
D.*(*(a+0)+0)
14.设有 int a=5,*b,**c; 执行语句 c=&b;和 b=&a;后,**c 的值是
A.变量 a 的地址
B.变量 b 的地址
C.变量 a 中的值
D.变量 b 中的值
得分
二、程序阅读题(本大题共 6 小题,每小题 4 分,共 24 分)
请将下面各程序的输出填写在下划线处。
A.a[p-a]
B.*(&a[1]) C.p[1]
D.a[10]
10.设有 int i=1,j=2,k=3;则执行语句:if(i++==1&&(++j==3||k++==3)) cout<<i<<,j<<k;
后的输出结果是
A.1 2 3
B.2 2 3
C.设 char s[10],*p=s; 下列语句中错误的是
C.一个用于指向函数的指针变量
D.一个返回值为指针型的函数名
1
8.下列定义语句中,错误的是
A.int a[]={1,2}; B.char *a[3];
C.int n=5,a[n];
D.char s[10]=”test”;
9.若已定义:int a[ ]={0,1,2,3,4,5,6,7,8,9], *p=a; 则对 a 数组元素不正确的引用是
四、程序编写题(本大题共 3 小题,每小题 10 分,共 30 分)
1.#include <iostream>
using namespace std;
int main()
{
int n,a,b,c;
高级语言程序设计-期末复习题和答案
《高级语言程序设计(基于JAVA)》课程2019年春季期末考试复习资料第一部分客观题(请在答题纸的客观题答题区域作答)一、单项选择题(每题2 分,共40 分)1.下面哪个是不合法的标识符?(C)A.$persons;B.TwoUsers;C.*point;D._endline;A.3, 3B.2, 3C.3, 2D.2, 23.下列选项中哪个是将一个十六进制值赋值给一个long型变量的正确方法(D)A.long number = 345L;B.long number = 0345;C.long number = 0345L;D.long number = 0x345L;4.下面哪条语句导致程序回到循环开头,并从那里继续运行?(A。
)A.continueB.breakC.nextD.goto :05.下面初始化数组的语句中,不正确的是:(D)A.int x[] = {8,5,6,4};B.int x[4] = {8,5,6,4};C.int[] x = {8,5,6,4};D.int x[] = new int[]{8,5,6,4};6.下列关于构造方法的叙述中,错误的是(C)A.Java语言规定构造方法名与类名必须相同B.Java语言规定构造方法没有返回值,但不用void声明C.Java语言规定构造方法不可以重载D.Java语言规定构造方法只能通过new自动调用7.类与对象的关系是(A)A.类是对象的抽象B.类是对象的具体实例C.对象是类的抽象D.对象是类的子类8.下列关于修饰符混用的说法,错误的是(D)A.abstract不能与final并列修饰同一个类B.abstract类中不可以有private的成员C.abstract方法必须在abstract类中D.static方法中能处理非static的属性B.5C.6D.以上答案都不对10.下面哪个单词不是Java语言的关键字(A)A.FloatB.thisC.superD.boolean11. 对象的特征在类中表示为变量,称为类的(B)。
高级语言程序设计__吉林大学(4)--期末考试试题B卷
2014-2015学年 第1学期2014级《程序设计基础》期末考试试题(B)考试时间:2015年01月班级学号姓名✧请将答案写在答题纸上,写清题号,不必抄题,字迹工整、清晰。
✧请在试题纸、答题纸和草稿纸上都写上班级、学号和姓名,交卷时一并提交。
✧每题均需要编写程序或函数,必须添加必要的注释,程序命名和书写要规范,个别题目还需要画出对应的PAD。
✧务必使用同一颜色的中性笔或钢笔答题,不允许使用铅笔答题和画图。
一、 [20分] 编写函数并画出对应的PAD,删除整型数组中所有为0的元素,将处理后的数组输出,并返回剩余元素个数。
注:函数中不能定义额外的新数组。
二、 [20分] 编写函数,对一个给定字符串中的所有字符(不考虑默认字符串结束符'\0')进行排序,使得排序后的字符串满足从左到右为ASCII 码递增的字符序列。
注:本题不允许使用string.h头文件和相关的字符串处理函数,以及系统定义的各类排序函数。
三、 [20分] 编写递归函数,计算给定数组中所有元素的中位数。
中位数标准定义为:按照从小到大排序后的正中间的数。
如果元素个数为偶数,取最中间的两个数的平均数作为中位数。
本题可以粗略地认为n个元素的中位数为按照从小到大排序后的第n/2个数。
四、 [20分] 每个教师的信息卡片包括教工号、姓名、性别、入职年份(限定为1900-2100之间的整数)四项。
定义存储教师信息的单向链表的结点类型;编写函数,由当前目录下文件名为input.txt的文件依次读入n(n≥1)个教师的信息,创建一个用于管理教师信息的单向链表。
五、 [20分] 编写函数,在上题创建的单向链表中删除所有入职年份信息大于k(k的值由用户从键盘输入,且限定为1900-2100之间的整数)的结点。
第 1 页共 1 页。
高级语言程序设计期末复习题
高级语言程序设计期末复习题一、选择题1.以下程序的输出结果是()main( ){int a=10,b=12;printf("%d %d\n",--a,++b);}A)9 10 B)9 13 C)11 10 D)10 132.下面的程序()main(){ int x=3;do {printf("%d\n",X-=2);}while(!(--x));}A) 输出的是1 B) 输出的是1和-2C) 输出的是3和0 D) 是死循环3.下面能正确进行字符串赋值操作的语句是()A)char s[5]={"ABCDE"}; B)char s[5]={'A'、'B'、'C'、'D'、'E'};C) char *s;s="ABCDEF"; D)char *s; scanf("%s",s);4.若有以下定义:char a;int b;float c;double d;则表达式a*b+d-c值的类型为A)float B)int C)char D)double5.若已定义:int a[8],*p=a;并在以后的语句中未改变p的值,不能表示a[1] 地址的表达式是()A) p+1 B) a+1 C) a++ D) ++p6.若执行下面的程序时从键盘上输入4和5,则输出是()main(){ int a,b,s;scanf("%d %d",&a,&b);s=a;if(a<b)s=b;s=s*s;printf("%d\n",s);}A) 14 B) 16 C) 18 D) 207.请读程序:#include#define SUB(X,Y) (X)*Ymain(){ int a=3, b=4;printf("%d", SUB(a++, b++));}上面程序的输出结果是()A) 12 B) 15 C) 16 D) 208.若要求在if后一对圆括号中表示a不等于0的关系,则能正确表示这一关系的表达式为()A) a<>0 B) !aC) a=0 D) a9.设p1和p2是指向同一个int型一维数组的指针变量,k为int型变量,则不能正确执行的语句是()A)k=*p1+*p2; B)p2=k; C)p1=p2; D)k=*p1 *(*p2);10.以下程序输出结果是()main( ){int m=5;if(m++>5)printf("%d\n",m);else printf("%d\n",m--);}A)7 B)6 C)5 D)411.若x是整型变量,pb是基类型为整型的指针变量,则正确的赋值表达式是()A) pb=&x B) pb=x; C) *pb=&x; D) *pb=*x12.下列语句中,将c 定义为文件型指针的是()① FILE c;② FILE *c;③ file c;④ file *c;12.标准库函数fputs(pl,p2)的功能是()①从pl 指向的文件中读一个字符串存入p2 指向的内存②从p2 指向的文件中读一个字符串存入pl 指向的内存③从pl 指向的内存中的一个字符串输出到p2指向的文件④从p2 指向的内存中的一个字符串输出到pl指向的文件13.以下程序运行后,输出结果是int d=1;fun(int p){int d=5;d+=p++;printf("%d",d);}main(){int a=3;fun(a);d+=a++;printf("%d\n",d);} ()A)84 B)99 C)95 D)4414.给出以下定义:char x[]="abcdefg";char y[]={'a','b','c','d','e','f','g'};则正确的叙述为A)数组X和数组Y等价B)数组x和数组Y的长度相同C)数组X的长度大于数组Y的长度D)数组X的长度小于数组Y的长度15.设有如下定义,则对data 中的a 成员的正确引用是()struct sk{int a;float b;} data,*p=& data;A) (*p).data.a B) (*p).a C) p->data.a D) p.data.a16.C 语言中,函数的隐含存储类型是()①auto ②static③extern ④无存储类别17.设函数的功能是交换x 和y 的值,且通过正确调用返回交换结果。
高级语言程序设计试卷及答案解析修订稿
高级语言程序设计试卷及答案解析公司内部编号:(GOOD-TMMT-MMUT-UUPTY-UUYY-DTTI-单项选择题1.二进制语言是属于()①面向机器语言②面向问题语言③面向过程语言④面向汇编语言【解】人们研制了许许多多计算机程序设计语言,其中二进制语言直接来自计算机的指令系统,与具体计算机紧密相关,所以是一种面向机器语言。
面向问题语言是为了易于描述和求解某类特定领域的问题而专门设计的一种非过程语言。
面向过程语言是一种能方便描述算法过程的计算机程序设计语言。
有汇编语言,但没有面向汇编语言。
汇编语言也是一种面向机器的语言,与机器语言比较,汇编语言用有助于记忆的符号来代表二进制代码。
所以解答是①。
2.下列语言中不属于面向过程的语言是()①高级语言②低级语言③C语言④PASCAL语言【解】 C语言和 PASCAL等程序设计语言都是高级语言,它们用于描述复杂加工的处理过程,所以也称它们是面向过程语言。
低级语言是指机器语言和汇编语言,低级语言是面向机器的语言,而不是面向问题的语言。
所以解答是②。
3.下列字符中属于键盘符号的是()①②n ③ t ④ b【解】键盘符号是指键盘上有标记,并能在显示器上直接以其标记字样显示的字符。
有许多键盘上有标记的符号,它们不是用于直接显示的,键入这种字符用于表示特定的意义,如常用的回车符。
为了能让C程序标记这种符号,程序采用转义字符的方式书写这种字符。
如"n"、"t" 、"b"都不是键盘字符,在 C语言中,它们都得用转义字符来表达。
只有字符才是键盘字符。
所以解答是①。
但在C程序中,反斜杠字符已特别用作转义字符的引导符,它也得用转义字符的表达形式书写,将它写成""。
4.下列字符列中,不是用来表达转义字符是()①②" ③074 ④【解】转义字符有三种书写形式:反斜社字符后接上某个规定的字符;反斜杠字符后接上13个八进制数字符;反斜社字符和字符X之后接上1至2个十六进制数字符。
《高级语言程序设计》期末考试题及答案剖析
2016年下半年《高级语言程序设计(高起专)》期末考试试题1. ( 单选题)以下程序的输出结果是()。
main(){int i,k,a[10],p[3];k=5;for(i=0;i<10;i++) a[i]=i;for(i=0;i<3;i++) p[i]=a[i*(i+1)];for(i=0;i<3;i++) k+=p[i]*2;printf("%d\n",k);}(本题2.0分)A、20B、21C、22D、23标准答案:B2. ( 单选题)有以下程序,输出结果是()float fun(int x,int y){ return(x+y); }main(){int a=2,b=5,c=8;printf("%3.0f\n",fun((int)fun(a+c,b),a-c));}(本题2.0分)A、9B、21C、9.0D、编译出错标准答案:A3. ( 单选题) C语言程序的基本单位是()(本题2.0分)A、程序行B、语句C、函数D、字符标准答案:C4. ( 单选题) 一个 C 程序的执行是从( )(本题2.0分)A、本程序的main函数开始,到main函数结束B、本程序文件的第一个函数开始,到本程序文件的最后一个函数结束C、本程序的main函数开始,到本程序文件的最后一个函数结束D、本程序文件的第一个函数开始,到本程序main函数结束标准答案:C5. ( 单选题) 一个 C 语言程序是由( )(本题2.0分)A、一个主程序和若干子程序组成B、函数组成C、若干过程组成D、若干子程序组成标准答案:B6. ( 单选题) 变量的指针,其含义是指该变量的()(本题2.0分)A、值B、名C、地址D、一个标志标准答案:C7. ( 单选题) C语言提供的合法的数据类型关键字是_____(本题2.0分)A、DoubleB、shortC、integerD、Char标准答案:B8. ( 单选题) 以下关于数组的描述正确的是( )(本题2.0分)A、数组的大小是可变的,可以有不同的类型的数组元素B、数组的大小是固定的,所有数组元素的类型必须相同C、数组的大小是可变的,但所有数组元素的类型必须相同D、数组的大小是固定的,但可以有不同的类型的数组元素标准答案:B9. ( 单选题) C 语言提供的合法关键字是()(本题2.0分)A、swicthB、chanC、CaseD、default标准答案:D10. ( 单选题) 若定义int a[2][2]={1,2,3,4},则a数组的各数组元素值分别为()(本题2.0分)A、a[0][0]=1,a[0][1]=3,a[1][0]=2,a[1][1]=4B、a[0][0]=4,a[0][1]=3,a[1][0]=2,a[1][1]=1C、a[0][0]=1,a[0][1]=2,a[1][0]=3,a[1][1]=4D、a[0][0]=4,a[0][1]=2,a[1][0]=3,a[1][1]=1标准答案:C11. ( 单选题) 关于return语句,下列正确的说法是()(本题2.0分)A、必须在每个函数中出现B、可以在同一个函数中出现多次C、在主函数和其他函数中均要出现D、只能在除主函数之外的函数中出现一次标准答案:B12. ( 单选题) C 语言中的标识符只能由字母、数字和下划线三种字符组成 , 且第一个字符 ()(本题2.0分)A、必须为下划线B、可以是字母、数字和下划线中的任意一种C、.必须为字母或下划线D、必须为字母标准答案:C13. ( 单选题) 设a=12、b=12345,执行语句printf(“%4d,%4d”,a,b)的输出结果为()(本题2.0分)A、12, 123B、12, 12345C、12, 1234D、12, 123456标准答案:B14. ( 单选题) putchar 函数可以向终端输出一个()(本题2.0分)A、整型变量表达式值B、实型变量值C、字符串D、字符或字符变量值标准答案:D15. ( 单选题) C语言规定:在一个源程序中,main函数的位置( ) 。
2019高级语言程序设计考卷B及参考答案
…………试卷装订线………………装订线内不要答题,不要填写考生信息………………试卷装订线…………二、程序阅读题(本大题共7 小题,每小题4分,共28分)请将下面各程序运行后的输出结果填写在下划线处。
11. #include <stdio.h>int main(){char s1[5]="ABCD", s2[5];for (int k=0; k<4; k++)s2[k]=(s1[k]-'A'-3+26)%26+'A';s2[4]='\0';puts( s2);return 0;}输出:12. #include <stdio.h>int main(){int x,y,s=0,k;for (x=1;x<=5;x++){k=0;for (y=1;y<=x;y++)k=10*k+x;s=s+k;}printf("%d\n",s);return 0;}输出:13. #include <stdio.h>int main(){int i,s=0,a[10],p[3];for (i=0;i<10;i++) a[i]=i;for (i=0;i<3;i++) p[i]=a[i*(i+1)];for (i=0;i<3;i++) s+=p[i]*2;printf("%d\n",s);return 0;}输出:14. #include <stdio.h>int f(char *s){char *p=s;while (*p!='\0') p++;return(p-s);}int main(){printf("%d\n",f("ABCDEF"));return 0;}输出:得分三、程序填空题(本大题共2小题,每小题6分,共12分)请填空将下面的程序补充完整以实现指定的功能。
高级语言程序设计B期末终结版
一单选题(30题,30分) 二判断题(10题,10分) 三改错(5题,15分) 四填空(10题,20分) 五读程序写结果(5题,25分)第2章选择题,第3、4、5、7、8、9章所有选择题填空题,1数据库系统DBS包括数据库DB、数据库管理系统DBMS、数据库应用系统DBAS2数据管理的几个发展阶段及其特点(1)人工管理阶段:数据不能保存;数据与程序存在一一对应关系;没有专门的数据管理软件,应用程序依赖于数据、数据的逻辑结构、数据的存储形式(2)文件管理阶段:优点:数据以文件的形式长期保存;程序和数据之间有一定的独立性,应用系统通过管理系统与数据文件发生联系。
缺点:数据冗余度大;数据的不一致性;数据的依赖性(3)数据库管理阶段:数据共享;具有最低的冗余度;具有较高的数据独立性;具有数据控制功能(4)分布式数据库管理系统:数据是分布的;数据是逻辑相关的;结点的自治性3两个不同实体集的三种关系:一对一、一对多、多对多。
病人和病床之间关系:一对一;省与市之间关系:一对多;教师与学生的关系为:多对多4关系数据库的特点:数据的冗余度低;具有高度的数据和程序独立性;数据具有共享性;数据的安全性、完整性和对数据实行集中控制;5关系运算,包括如下两类:(1)传统的集合运算,包括并、差、交;(2)专门的关系运算,包括选择、投影和联接6常量:(1)数值型常量(N):3.1415 、12 、0.1234(2)字符型常量(C):[abc] 、‘abC’“abc”有三对字符串定界符应成对使用。
如果在字符串中需要出现定界符号,需用其他定界符定界,如“AB[CCD[ED]FEF”(3)日期型常量(D):{^2010-07-10} 、{07/10/2010} 分严格的日期格式与传统日期格式(4)日期时间型常量(T): {^2010-07-10,08:30:30}(5)逻辑型常量(L):.T. 、.t. 、.Y. 、.y. 表示逻辑真;.F. 、 .f. 、 .N. 、 .n. 表示逻辑假(6)货币型常量(Y):$123.45677变量名命令规则(1)由字母(汉字)、数字和下划线_组成,但必须以字母或下划线开头,中间不能有空格。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
2005-2006学年第一学期期末考试05级计算机科学技术 《高级语言程序设计》期末试卷 B
一、 填空题:(20分,每空1分) 1.实型变量分为 和 ,即float 和double 型。
2.在C 程序中,数据可以用__________和__________两种代码形式存放。
3.Int 型的取值范围是 ,long 型的取值范围是 。
4.16位的无符号数的最小数为 ,最大数是 ;16位有符号数的最小数是 ,最大数是 。
5.为表示关系x>=y>=z ,应使用C 语言表达式为 。
6.表达式(int )2.1416的值为: 。
7.一个指针变量p 和数组变量a 的说明如下: int a[10],*p; 则p=&a[1]+2的含义是指p 指向数组a 的第 个元素。
8.对于数组a[m][n]来说,使用数组的某个元素时,行下标最大值是 , 列下标的最大值是 。
9.为了建立如下结构(每个结点有两个域:data 是数据域,next 是指向结点的指针域),补充完成下述的结构定义语句: struct link { char data; ; }node; 10.i = sizeof (int) ; j = sizeof ( char); i= ; j=。
11.在C 语言程序中,若对函数类型未加显式说明,函数的隐含类型为:_______。
12. 定义FILE *fp,这里fp 是一个__________。
二、 选择题:(45分,每题3分) 1. 在C 语言中,逻辑运算符 &&、 ||、 !的优先级从高到低的排列为: (A) !、||、 && (B) &&、 ||、 ! (C) ||、 !、 && (D) !、 &&、 || 2. 执行下列程序后, a 值为: int a, b;
a = 15 ;
b = 12;
a = (a-- == b) ? a%5 : b/5;
(A) 0 (B) 2.4 (C) 4 (D) 2
char c, i;
c='b'; i=4;
switch(c)
{ case 'a': i=1;
case 'b': i=2;
case 'c': i=3;
}
printf ("%d ", i);
其输出应为:
(A) 2 (B) 3 (C) 4 (D) 5
4. 分析下面程序
#include <stdio.h>
main()
{ int i;
int *int_ptr;
int_ptr=&i;
*int_ptr=5;
printf("i=%d",i);
}
程序的执行结果是__________。
(A) (A) i=0 (B) i为不定值(C) 程序有错误(D) i=5
5. 在C语言程序中,以下描述正确的是__________。
(A) 函数的定义可以嵌套,但函数的调用不可以嵌套
(B) 函数的定义不可以嵌套,但函数的调用可以嵌套
(C) 函数的定义和函数的调用均不可以嵌套
(D) 函数的定义和函数的调用均可以嵌套
6. 对于循环 while(e) 语句, e等价于:
(A) e == 0 (B) e != 0 (C) e == 1 (D) e != 1
7. 执行 i=3; if(i>3) if(i<4) i=1; else i=2; 后i 的值应为:
(A) 1 (B) 2 (C) 3 (D) 语句错误
8.若变量已正确定义并赋值,下面符合C语言语法的表达式是
A) a:=b+1 B) a=b=c+2 C) int 18.5%3 D) a=a+7=c+b
9. C语言中运算对象必须是整型的运算符是
A) %= B) / C) = D) 〈=
10.若已定义x和y为double类型,则表达式x=1,y=x+3/2 的值是A〉 1 B〉 2 C〉 2.0 D〉 2.5
11.能正确表示逻辑关系:“a≥=10或a≤0”的C语言表达式是
A ) a>=10 or a<=0 B) a>=0|a<=10
C) a>=10 &&a<=0 D) a>=10‖a<=0
12. 以下程序的运行结果是()。
main()
{int c,x,y;
x=1; y=1; c=0;
c=x++ || y++ ;
printf(“\n%d %d %d\n”,x,y,c);}
(A)1 1 0 (B) 2 1 1 (C)2 2 1 (D) 0 0 1
13. 写出下面程序的输出结果()
main()
{int x=40,y=4,z=4;
x = y = =z;
printf(“%d”,x);
x = x = = (y-z);
printf(“%d”,x);}
(A)4 0 (B)4 1 (C)1 1 (D)1 0
14. 下列符号中,可以作为变量名的是()
(A)+a (B)12345e (C)a3B (D)5e+0
15. 若有说明:int a[3][4];则对a数组元素的正确引用是()(A)a[2][4] (B)a[1,3] (C)a[1+1][0] (D)a(2)(1)
三、基础应用:(每空1.5分, 共9分)
1 执行完下列语句段后, i,j值分别为:__ _____
int i, j;
j=10*(i=5);
i+=j*=i+2;
2 执行完下列语句段后, i值为:__ ____
static int a[3][4]={{1,2,3},{4,5,6}}, i;
i= a[0][1];
3 执行完下列语句段后, i值为:___ ___
int i;
int f(int x)
{ return ((x>0)? x*f(x-1):3); }
i=f(3);
4 对于char c; 若已知其值为小写字母, 将其转换为相应大写字母的表达式为
5 将p说明为字符数组指针,数组大小为10,可写为:_____ _______
6 如下函数
void f(char *s, char *t)
{ int i;
i=0;
while (s[i]=t[i]) i++;
}
等价于:
void f(char *s, char *t)
{ while (____ __ = = *t++);
}
四、综合应用:(26分)
1.(5分)编写C 程序实现C=5/9 * (F-32)的转换过程。
2.(7分)分编程输出杨辉三角形(五行)。
3.(8分)编程序对数组A中的数据进行降序排序。
4.(6分)编程实现S=1+2+3+ (100)。