高级语言程序设计期中试卷(修改版)

合集下载

C语言程序设计期中试卷

C语言程序设计期中试卷

C语言程序设计期中试卷C 语言程序设计期中试卷一、填空题(本大题30空,每空1分共30分)1、C 语言中的基本数据类型包括、、三种。

2、C 语言中的逻辑运算符有、、三种。

3、若a =4,b =5,则! a & &b 的值为,b&&03的值为。

4、设a =10,则表达式a +=a -=2*3的值为。

5、设i =5,执行z =-i --后,z 的值为,i 的值为。

6、定义一个4行5列的整型数组VB 的方法。

7、定义int num[]={1,2,3,4,5},*p =&num[1],则表达式*p+3的值为, *(p+3)的值为。

8、设char str[10]="China",strlen(str)的值为。

9、逗号表达式a =b =3,6*a 的值为。

10、将算术表达式31лR2·h 书写为C 语言表达式。

11、用宏TB 来定义3.14 。

12、循环for (i=2;i<=12;i =i+2)结束后,i 的值为。

13、数组char b[15]表示它有个字符元素。

14、在C 语言中没有专为存储字符串的变量,但可以用字符型数组或存储字符串。

15、C 语言文件存储在磁盘上有两种形式,一种是按存储,另一种是按存储。

16、在C 语言中,变量的存储类别有四种,它们分别是自动变量、外部变量、和寄存器变量,其中自动变量又称为。

17、若有int a=10,b=5;则c=++a -b --;的值为。

18、定义一个数组int b[14],则b 数组一共有个元素,数组的最后一个元素是。

19、若有int a[10],*p ;p=&a[2];则后面语句使用*p 时是在引用。

20、表达式2sin30°的C语言表达式为。

二、选择题(本大题共20小题,每题2分,共40分)1、设i=6,则执行j=i++; j=++i后,j的值为()A、7B、8C、6D、92、设x=2.5,a=4,y=7,则表达式x+a%3*(int)(x+y)%2/4的值为( )A 、3.5B 、4C 、2D 、2.53、下面的指数形式正确的是()A 、4.6EB 、E+4C 、1.23E-10 D、4.3E6.84、指出下列非法的赋值语句()A 、z=(a>b)?a:b;B、I=++(I+J);C、y=y*(z+1);D、unsigned z=45.67;5、设x=4, y=5, z=2, 则表达式(x< p="">A 、0 B、1 C 、4 D 、56、下列正确的语句是()A 、int * p; p=&(a+b);B 、y : =(a<="" p="">C、for(i=0 , i<=5,i++);D、int a,b=3;7、初始化字符数组char str[ ]=“A book”,则可确定数组的长度为()A 、6B 、7C 、8D 、98、函数strlen(“ab c\de\”)的值为( )A 、6B 、10C 、5D 、89、设i=1 ; 则循环while(i++<5)结束后,i的值为()A 、4B 、5 C、6 D 、710、初始化数组int val[3] [3]={{1},{2,3},{3}}则val[1][1]的值为()A 、1B 、2 C、3 D 、{2,3}11、在C语言程序中,main函数的位置()A.、必须作为第一个函数B、必须作为最后一个函数C、可以任意D、必须放在它所调用的函数之后12、下列不合法的常量是()A、"program"B、- e8C、0x35D、12313、C语言中的基本数据类型所占存储空间长度的大小顺序是()A、char<=int<=float<=double<=longB、int<=char<=float<=long<=doubleC、int <= long <=float<=double<= charD、char<=int<=float<=long<= double14、在C语言中,要求当a的值为奇数时,表达式的值为“真”,a的值为偶数时为“假”。

(完整版)python期中考试试卷优质

(完整版)python期中考试试卷优质

(完整版)python期中考试试卷优质一、选择题1.在Python中,下面代码的运行结果是()x=365g=x%10 #%为求余的意思s=x//10%10 # //为整除的意思b=x//100sum=g*100+s*10+b #sum英文是求和的意思print(sum)A.365 B.14 C.563 D.412.在Python程序设计语言中,表示整除的符号是()A./ B.% C.mod D.//3.以下是猜数游戏的 Python程序,请你补全代码:请选择适当的代码填入程序①处。

()A.for B.print C.elif D.input4.使用UltraEdit软件观察字符“2020,Python来袭”的内码,部分界面如图所示。

下列说法正确的是()A.图中字符“2020,Python 来袭”共占15个字节,其中共有10个ASCII字符B.字符“10”的十六进制内码是3AC.“CO B4”是“来”字在计算机内存储和处理时的交换码D.小写字母p的二进制内码是11100005.在VB中,下列与表达式Len("python")+20的值相等的是()A.Int(Rnd * 26)+1 B.Val("20")+16 mod 9C.Mid("Hello2019",6,2)+"6" D.a bs(Sqr(16)– 30)6.两个阻值分别为R1、R2的电阻并联后,电路阻值R可由公式求解,下面能正确求出R的Python表达式是( )A.(R1+ R2)/(R1*R2) B.R1+R2/(R1*R2)C.R1*R2/R1+R2 D.R1*R2/(R1+R2)7.Python语句中以r或R开头的字符串表示原始字符串,则print(r"\nGood")的运行结果是()A.新行和字符串Good B.r"\nGood" C.\nGoodD.字符r、新行和字符串Good8.王明编写了Python程序,根据输入的体重和身高计算BM值并显示是否超标。

《C语言程序设计》期中考试试卷

《C语言程序设计》期中考试试卷

淮海工学院10–11学年第2学期C语言程序设计期中考试一试卷题号一二三四五总分得分单项选择题答题表1234567891011121314151617181920一、单项选择题(共 20 题,每题 1 分,共 20 分,答案填写在单项选择题答题表中)1.以下表达中正确的选项是()。

A) C 程序的基本构成单位是语句B) C 程序中的每一行只好写一条语句C)简单 C 语句一定以分号结束D) C 语句一定在一行内写完在2.一个 C 程序是由 ____________。

A)一个主程序和若干个子程序构成B)一个或多个函数构成C)若干过程构成D)若干子程序构成3.以下选项中正确的定义语句是 ____________。

A)double a; b;B)double a=b=7;C)double a=7, b=7;D)double, a, b;4.计算机能直接履行的程序是()。

A) C 源程序B)目标程序C)汇编程序D)可履行程序5.以下符号能够作为变量名的是 ____________。

A)+aB)*pC)_DAYD)next day6. 设 c 是字符变量,则以下表达式正确的选项是____________。

A)c=666B)c='c'C)c="c"D)c="abcd"7.以下说法正确的选项是 ____________。

A) 输入项能够为一个实型常量,如scanf("%f", 3.5)B) 只有格式控制没有输入项也能进行正确输入,如scanf("%d")C)当输入一个实型数据时,格式控制部分应规定小数点后的位数,如scanf(%4.2f", &f)D) 当输入数据时,一定指定变量的地点,如scanf("%f", &f)8.若 a, b, c 均定义为整型,要给它们输入数据,正确的输入语句是 ____________ 。

大学考试—高级语言程序设计——试题库及答案

大学考试—高级语言程序设计——试题库及答案

设有定义语句“struct{int a;float b;char c;}abc,*p; ”,则对结构体成员 a 的引用可以是 ( )。

收藏A.(*p) .aB.abc- >aC.abc.aD.p->a回答错误 !正确答案: A C D以下叙述中,正确的叙述是:收藏A.预处理行不是 c 的可编译语句B.在程序中凡以 #开始的语句都是预处理命令C.C程序在执行过程中对预处理命令进行处理D.预处理命令须以 #开始回答错误 !正确答案: A B D下列属于单字符输入输出函数的是()。

收藏A.getchar()B.printf()C.scanf()D.putchar()回答错误 !正确答案: A D当一个函数为外部函数时,不正确的说法是( )。

收藏A.该函数不能被本文件中函数调用B.该函数不能被其他文件调用C.该函数只能被main() 调用D.该函数只能被非主函数调用回答错误 !正确答案: A B C D不能将高级语言编写的源程序转换成目标程序的是:收藏A.编译程序B.解释程序C.编程程序D.链接程序回答错误 !正确答案: B C D下列选项中关于外部变量,正确的是( )。

收藏A.main 函数是主函数,不在main 函数内部定义的变量都是外部变量B.外部变量必须定义在源程序的开始处C.定义外部变量时,可以进行初始化外部变量必须定义在所有函数的外面回答错误 !正确答案: C D已知“int a=1;char b=65; float c=2.0;double d=3.5; 。

”则下述赋值表达式结果为整型的是()。

收藏A.b=a+b;B.b=(int)(c+d);C.a=3.2;D.a=c+d;E.c= a+b;F.c= (int)3.2;回答错误 !正确答案: A B C D已有 char s[10][10]={0};int i=10;。

在下列表达式中,没有意义的表达式是:收藏*(&(s+i)+i)B.*(*(s+i)+i)C.*(*(s+i-1)+i-1)D.s[i][i]回答错误 !正确答案: A B D下列属于 C 语言标准库函数的为()。

高级语言C++程序设计--考试试卷 - 答案

高级语言C++程序设计--考试试卷 - 答案

高级语言C++程序设计-考试试卷—答案姓名: ________________ 成绩__________________答案:1-11题 D C D A C D A B D D B 答案:12-22题 D A D D A D D D A A D1. 按照C 语言规定的用户标识符命名规则,不能出现在标识符中的是A)大写字母B)下划线C)数字字符D)连接符2. 以下选项中不合法的标识符是A)cout B)FOR C)&&a D)_003. 设有定义:int x=2;,以下表达式中,值不为6的是A)x*=(1+x) B)x*=x+1 C)x++,2*x D)2*x, x+=24. C++ 源程序中不能表示的数制是A)二进制B)十六进制C)十进制D)八进制5. 以下关于结构化程序设计的叙述中正确的是A)一个结构化程序必须同时由顺序、分支、循环三种结构组成B)有三种基本结构构成的程序只能解决小规模的问题C)在C ++语言中,程序的模块化是利用类实现的D)结构化程序使用goto 语句会很便捷6. 以下定义语句中正确的是A)float a=1,*b=&a,*c=&b; B)int a=b=0;C)double a=0.0;b=1.1; D)char A=65+1,b=’b’;7. 计算机能直接执行的程序是A)可执行程序B)目标程序C)源程序D)汇编程序8. 以下叙述中正确的是A)C++ 语言程序中的注释必须与语句写在同一行B)简单C++ 语句必须以分号结束C)C++ 语句必须在一行内写完D)C++ 程序中的每一行只能写一条语句9. 以下选项中,不合法的C++语言用户标示符是A)AaBc B)a_b C)_1 D)a--b10.关于C++语言的变量,以下叙述中错误的是A)由三条下划线构成的符号名是合法的变量名B)所谓变量是指在程序运行过程中其值可以被改变的量C)程序中用到的所有变量都必须先定义后才能使用D)变量所占的存储单元地址可以随时改变11. C ++语言中double 类型数据占字节数为A)12 B)8 C)4 D)1612. 以下叙述中正确的是A)空语句就是指程序中的空行B)花括号对{}只能用来表示函数的开头和结尾,不能用于其他目的C)复合语句在语法上包含多条语句,其中不能定义局部变量D)当用cin 从键盘输入数据时,每行数据在没有按下回车键(Enter 键)前,可以任意修改13. 以下叙述中正确的是A)C++ 语言程序总是从main 函数开始执行B)C++ 语言程序所调用的函数必须放在main 函数的前面C)C++ 语言程序中main 函数必须放在程序开始位置D)C++ 语言程序总是从最前面的函数开始执行14. 以下叙述中正确的是A)if 语句只能嵌套一层B)不能在else 子句中在嵌套if 语句C)改变if-else 语句的缩进格式,会改变程序的执行流程D)if 子句和else 子句中可以是任意合法的C ++语句15. 以下叙述中正确的是A)在while 语句和do-while 语句中无法使用continue 语句B)当break 出现在循环体中的switch 语句体内时,其作用是跳出该switch 语句体,并终止循环C)continue 语句的作用是:在执行完本次循环体中剩余语句后,终止循环D)只能在循环体内和switch 语句体内使用break 语句16. 已定义以下函数:int fun(int *p){return *p;}fun 函数返回值是A)一个整数B)形参p 的地址值C)形参p 中存放的值D)不确定的值17. 设有定义:double a[10],*s=a;以下能够代表数组元素a[3]的是A)*s[3] B)(*s)[3] C)*s+3 D)*(s+3)18. 下列选项中,能正确定义数组的语句是A)int num[0...2008]; B)int num[ ];C)int N=2008; int num[N]; D)#define N 2008; int num[N];19. 设有以下函数:void fun(int n,char *s){......} 则下面对函数指针的定义和赋值均正确的是A)void *pf(); pf=fun; B)void (*pf)(int,char );pf=&fun;C)void *pf(); *pf=fun;D)void (*pf)(int ,char *) ; pf=fun;20. 以下叙述中正确的是A)int *p1,int **p2,int *p3;都是合法的定义指针变量语句B)语句p==NULL;与p==\0 是等价的语句C)p==NULL;执行后,指针p 指向地址为0 的存储单元D)指针变量只能通过求指针运算符(&)获得地址值21. int *func(int a[10], int n);则以下叙述中正确的是A)说明中的a[10]改为a[]或*a 效果完全一样B)函数中不能对a 进行移动指针(如a++)的操作C)只有指向10 个整数内存单元的指针,才能作为实参传递给形参D)形参a 对应的实参只能是数组名22. 若有以下语句typedef struct S{ int g;char h;} T;以下叙述中正确的是A)T 是struct S 类型的变量B)可用S 定义结构体变量C)S 是srurct 类型的变量D)可用T 定义结构体变量第二题:类与对象编程(25分)自定义一个简单的时间类TimeType,它具有数据成员h、m、s,用来表示当前时间的时、分、秒。

高级语言程序设计试卷及答案解析

高级语言程序设计试卷及答案解析

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代码值。

C语言程序设计期中试卷(含答案)

C语言程序设计期中试卷(含答案)

C语⾔程序设计期中试卷(含答案)桂林电⼦科技⼤学信息科技学院试卷2008-2009 学年第 2 学期课号课程名称:C 语⾔程序设计(闭卷)适⽤班级(或年级、专业)通信、电⼦(本试卷包括第⼀卷和第⼆卷,答卷时间总共120分钟)第⼀卷说明:(1) 第⼀卷全部为选择题,每题可供选择的答案中,只有⼀个正确答案。

(2) 答本卷的题⽬时,要在标准答题纸上编写对应的栏⽬中,⽤铅笔在正确答案图⿊,在试题上直接勾划者不得分。

(3) 本卷共70分,其中第1~26题每题2分,第27~32题每题3分。

第⼀部分:基础知识(20题,共40分)1 以下叙述中正确的是A )C 语⾔的源程序不必通过编译就可以直接运⾏B )C 语⾔中的每条可执⾏语句最终都将被转换成⼆进制的机器指令 C )C 源程序经编译形成的⼆进制代码可以直接运⾏D )C 语⾔中的函数不可以单独进⾏编译 2 以下选项中合法的⽤户标识符是A) long B) _2Test C) 3Dmax D) A.dat3 已知⼤写字母A 的ASCII 码值是65,⼩写字母a 的ASCII 码是97,则⽤⼋进制表⽰的字符常量'\101'是A) 字符A B) 字符a C) 字符e D) ⾮法的常量 4 以下⾮法的赋值语句是A) n=(i=2,++i); B) j++; C) ++(i+1); D) x=j>0; 5 设a 和b 均为double 型变量,且a=5.5、b=2.5,则表达式(int)a+b/b 的值是 A)6.500000 B) 6 C) 5.500000 D) 6.0000006 已知i 、j 、k 为int 型变量,若从键盘输⼊:1,2,3<回车>,使i 的值为1、j 的值为2、k 的值为3,以下选项中正确的输⼊语句是A) scanf("%2d%2d%2d ",&i,&j,&k); B) scanf("%d %d %d ",&i,&j,&k); C) scanf("%d,%d,%d ",&i,&j,&k); D)scanf("i=%d,j=%d,k=%d ",&i,&j,&k);7设有定义:float a=2,b=4,h=3;,以下C 语⾔表达式与代数式计算结果不相符的是A) (a+b) *h/2 B) (1/2)*(a+b)*h C) (a+b)*h*1/2 D) h/2*(a+b)h b a )(218与数学式⼦123-x nx对应的C 语⾔表达式是A) 3*x^n(2*x-1) B) 3*x**n(2*x-1)C) 3*pow(x,n)*(1/(2*x-1)) D) 3*pow(n,x)/(2*x-1)9 设有定义:long x=-123456L ;,则以下能够正确输出变量x 值的语句是A) printf("x=%d\n ",x); B) printf("x=%1d\n ",x); C) printf("x=%8dL\n ",x); D) printf("x=%LD\n ",x); 10 若有以下程序:main(){ int k=2,i=2,m;m=(k+=i*=k); printf("%d,%d\n ",m,i); }执⾏后的输出结果是A) 8,6 B) 8,3 C) 6,4 D) 7,4 11 已有定义:int x=3,y=4,z=5;,则表达式!(x+y)+z-1 && y+z/2的值是A) 6 B) 0 C) 2 D) 1 12 以下选项中,与k=n++完全等价的表达式是A) k=n,n=n+1 B) n=n+1,k=n C) k=++n D) k+=n+1 13 下列关于单⽬运算符++、--的叙述中正确的是A) 它们的运算对象可以是任何变量和常量B) 它们的运算对象可以是char 型变量和int 型变量,但不能是float 型变量 C) 它们的运算对象可以是int 型变量,但不能是double 型变量和float 型变量 D) 它们的运算对象可以是char 型变量、int 型变量和float 型变量 14 若有以下程序段(n 所赋的是⼋进制数)int m=32767,n=032767; printf("%d,%o\n ",m,n); 执⾏后输出结果是A) 32767,32767 B) 32767,032767 C) 32767,77777 D) 32767,077777 15 C 语⾔中⽤于结构化程序设计的三种基本结构是A) 顺序结构、选择结构、循环结构 B) if 、switch 、break C) for 、while 、do-while D) if 、for 、continue16 有⼀函数,0x 0x 0x 101y <=>-=,以下程序段中不能根据x值正确计算出y值的是A) if(x>0) y=1; B) y=0;else if(x==0) y=0; if(x>0) y=1;else y=-1; else if(x<0) y=-1;C) y=0; D) if(x>=0)if(x>=0) if(x>0) y=1; if(x>0) y=1; else y=0; else y=-1; else y=-1;int m=0,n=0; char c='a';scanf("%d%c%d",&m,&c,&n);printf("%d,%c,%d\n",m,c,n);若从键盘上输⼊:10A10<回车>,则输出结果是:A) 10,A,10 B) 10,a,10 C) 10,a,0 D) 10,A,018 有以下程序main(){ int a=1,b=2,m=0,n=0,k;k=(n=b>a)||(m=aprintf("%d,%d\n",k,m);}程序运⾏后的输出结果是A) 0,0 B) 0,1 C) 1,0 D) 1,119 有定义语句:int x,y;,若要通过scanf("%d,%d",&x,&y);语句使变量x得到数值11,变量y得到数值12,下⾯四组输⼊形式中,错误的是A) 11 12<回车> B) 11, 12<回车> C) 11,12<回车> D) 11,<回车>12<回车>20 设有如下程序段:int x=2002,y=2003;printf("%d\n",(x,y));则以下叙述中正确的是A) 输出语句中格式说明符的个数少于输出项的个数,不能正确输出B) 运⾏时产⽣出错信息C) 输出值为2002D) 输出值为2003⼆第⼆部分:简单程序(12题,21-26题每题2分,27-32题每题3分,共30分)21 有以下程序main(){ int i;for(i=0;i<3;i++)switch(i){ case 1:printf("%d",i);case 2:printf("%d",i);default:printf("%d",i);}}执⾏后输出结果是A) 011122 B) 012 C) 012020 D) 120{ int i=1,j=1,k=2;if((j++||k++)&&i++) printf("%d,%d,%d\n",i,j,k);}执⾏后输出结果是A) 1,1,2 B) 2,2,1 C) 2,2,2 D) 2,2,323 有以下程序{ char a,b,c,*d;a='\'; b='\xbc';c='\0xab'; d="\017";printf("%c%c%c%c\n",a,b,c,*d);}编译时出现错误,以下叙述中正确的是A) 程序中只有a='\';语句不正确 B) b='\xbc';语句不正确C) d="\017";语句不正确 D) a='\';和c='\0xab';语句都不正确24 以下程序段中与语句k=a>b?(b>c?1:0):0; 功能等价的是A) if((a>b)&&(b>c)) k=1; B) if((a>b)||(b>c)) k=1;else k=0; else k=0;C) if(a<=b) k=0; D) if(a>b) k=1;else if(b<=c) k=1; else if(b>c) k=1;else k=0;25 有以下程序main(){ int a=5,b=4,c=3,d=2;if(a>b>c)printf("%d\n",d);else if((c-1>=d)==1)printf("%d\n",d+1);elseprintf("%d\n",d+2);}执⾏后输出结果是A) 2 B) 3 C) 4 D) 编译时有错,⽆结果26 有以下程序main(){ int i=10,j=1;printf("%d,%d\n",i--,++j); }执⾏后输出结果是A) 9,2 B) 10,2 C) 9,1 D) 10,1{ int i=0,s=0;do{ if(i%2) { i++; continue; }s+=i;} while(i<7);printf("%d\n",s);}执⾏后输出结果是A) 16 B) 12 C) 28 D) 2128 有以下程序main(){ int x=0,y=5,z=3;while(z-->0&&++x<5) y=y-1;printf("%d,%d,%d\n",x,y,z);}程序执⾏后的输出结果是A) 3,2,0 B) 3,2,-1 C) 4,3,-1 D) 5,-2,-529 有以下程序main(){ int i,s=0;for(i=1;i<10;i+=2) s+=i+1;printf("%d\n",s);}程序执⾏后的输出结果是A) ⾃然数1~9的累加和 B) ⾃然数1~10的累加和C) ⾃然数1~9中的奇数之和 D) ⾃然数1~10中的偶数之和30 有以下程序main(){ int i,n=0;for(i=2;i<5;i++){ do{ if(i%3) continue;n++;}while(!i);n++;}printf("n=%d\n",n);程序执⾏后的输出结果是A) n=5 B) n=2 C) n=3 D) n=431 要求以下程序的功能是计算:10131211++++= s main (){ int n; float s; s=1.0;for(n=10;n>1;n--) s=s+1/n; printf("%6.4f\n ",s); }程序运⾏后输出结果错误,导致错误结果的程序⾏是A) s=1.0; B) for(n=10;n>1;n--) C) s=s+1/n; D) printf("%6.4f/n ",s); 32 有以下程序段int n=0,p;do { scanf("%d ",&p); n++; } while(p!=12345 && n<3); 此处do —while 循环的结束条件是A) p 的值不等于12345并且n 的值⼩于3 B) p 的值等于12345并且n 的值⼤于等于3 C) p 的值不等于12345或者n 的值⼩于3 D) p 的值等于12345或者n 的值⼤于等于3第⼆卷说明:(1) 第⼆卷含5⼤题,均属填空题,总共有10个空栏,在阅读和理解原题程序的基础上,在空栏处填⼊适当的字符、语句,以构成⼀个正确的C 语⾔程序。

高级语言程序设计试卷A

高级语言程序设计试卷A

考生姓名:___________学号层次专业一、选择题(每题2分,共30分,请将答案写在后面的答题栏...上)1、Visual Basic是一种面向对象的可视化程序设计语言,采取了的编程机制。

(A)按过程顺序执行(B)事件驱动(C)从主程序开始执行(D)按模块顺序执行2、在过程定义的变量,若想在离开该过程后,还能保存过程中的局部变量的值,则应使用关键字(A)dim (B)private (C)public (D)static3、在一个语句内写多条语句时,每个语句之间用符号分隔。

(A),(B):(C)、(D);4、下面是不合法的变量名(A)X_yz (B)123abc (C)int2 (D)数学成绩5、设x=4,y=8变量m的值是Dim x as integerm=x<y(A)1 (B)-1 (C)True (D)False6、如下数组声明语句中,数组a包含元素的个数为Dim a(3, 5)(A)15 (B)24 (C)20 (D)127、表达式16/4-2^5*8/4 mod 5\2的值为(A)14 (B)4 (C)20 (D)28、设x=4,y=8,z=7,以下表达式的值是____________x<y And(Not y>z)Or z<x(A)1(B)-1(C)True(D)False9、下面正确的赋值语句为_______(A)x+y=30 (B)y=∏*r*r (C)y=y+30 (D)3y=x10、VB提供了结构化程序设计的三种基本结构,三种基本结构是(A)递归结构、选择结构、循环结构(B)选择结构、过程结构、顺序结构(C)选择结构、循环结构、顺序结构(D)过程结构、输入输出结构、转向结构11、关于语句If x=1 Then y=1,下列说法正确的是(A) x=1和y=1均为赋值语句(B) x=1和y=1均为关系表达式(C) x=1为关系式表达式,y=1为赋值语句(D) x=1为赋值语句,y=1为关系表达式12、下列关于过程叙述不正确的是(A)过程的传值调用是将实参的具体值传值递给形参(B)过程的传址调用是将实参在内存的地址传递给形参(C)过程的传值调用参数是单向传递的,过程的传址调用参数是双向传递的(D)无论过程传值调用还是过程传址调用,参数传递都是双向的13、如下数组声明语句,____________正确(A)dim a[3,4] as integer(B)dim a(3,4) as integer(C)dim a(n,n) as integer(D)dim a(3 4) as integer14.执行下面的程序段后,x 的值为x=5For i=1 To 20 Step 2x=x+i\5Next iA) 21 B) 22 C) 23 D) 2415.下面程序的循环次数为For I=10To40Step6Print INext IA)5 B)6 C)32 D)33请将选择题答案写在下面的答题栏...1-5 6-10 11-15二、填空题(1-3题每空1分,4-8题每空2分,共20分)1、VB是一种面向_____的可视化程序设计语言,采取了_____的编程机制。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

安徽大学2011—2012学年第一学期《高级语言程序设计》期中考试试卷班级学号姓名一、选择题(每小题2分,共30分)1. 在C语言中,合法的字符常量是( )A) 'AA' B) 'A' C) "A" D) "\0"2. 以下程序的输出结果是( )main(){ int a=5,b=8,d;d=!a>!b&&b>10;printf("%d\n",d);}A) -1 B) 0 C) 1 D)大于0的数3. 4.在while(!x)中,!x与( )等价A) x==0 B) x!=0 C) x==1 D) x!=14. 以下不能定义为用户标识符是( )A) Main; B) _0; C) _int; D) sizeof;5. 在调用函数时,如果实参是简单变量,它与对应形参之间的数据传递方式是( )A) 地址传递B) 单向值传递C) 由实参传给形参,再由形参传回实参D) 传递方式由用户指定6. 从键盘上输入"446755"时,下面程序的输出是( )#include <stdio.h>main(){ int c;while((c=getchar())!='\n')switch(c -'2'){ case 0:case 1: putchar(c+4);case 2: putchar(c+4);break;case 3: putchar(c+3);default: putchar(c+2);break;}printf("\n");}A) 888988 B) 668966 C) 88898787 D) 668987877. 有以下程序main( ){int x=102,y=012;printf("%2d,%2d\n",x,y);} 执行后输出结果是()A)10,01 B)002,12 C)102,10 D)02,108. 有以下程序main( ){ int x=0,y=5,z=3;while(z-->0&&++x<5) y=y-1;printf("%d,%d,%d\n",x,y,z);}程序执行后的输出结果是()A)3,2,0 B)3,2,-1 C)4,3,-1 D)5,-2,-59. 设有语句int a=3;则执行语句a+=a-=a*a;后,变量a的值是()A) 3 B) 0 C) -12 D) 910.表示图中坐标轴上阴影部分的正确表达式是( )A) (x<=a) && (x>=b) && (x<=c); B) (x<=a) || (b<=x<=c);C)(x<=a) || (x>=b) && (x<=c); D) (x<=a) &&|| (b<=x<=c); 有以下程序11. 有以下程序char fun(char x , char y){ if(x<y) return x;return y;}main( ){ int a='9',b='8',c='7';printf("%c\n",fun(fun(a,b),fun(b,c)));}程序的执行结果是()A)函数调用出错B)8 C)9 D)712. 以下叙述正确的是( )A) do-while语句构成的循环不能用其它语句构成的循环来代替。

B) do-while语句构成的循环只能用break语句退出。

C) 用do-while语句构成的循环,在while后的表达式为非零时结束循环。

D) 用do-while语句构成的循环,在while后的表达式为零时结束循环。

13. 以下程序的输出结果是( )#include <stdio.h>main( ){int a=5,b=4,c=6,d;printf("%d\n",d=a>b?(a>c?a:c):b);}A) 5 B) 4 C) 6 D) 不确定14. 在C语言中,变量的隐含存储类别是( )A) auto B) static C) extern D) 无存储类别15. 以下不正确的if 语句形式是( )A)if( x>y && x!=y ); B) if (x==y ) x+=y;C)if (x!=y) scanf(“%d”,&x) else scanf(“%d”,&y);D)if(x <y) {x++; y++;}二、填空题(每空2分,共14分)1.下面的程序功能是输出100以内不能被7整除的数main(){ int i;for(i=1;i<100;i++){ if(i%7==0)__________;printf("%d\n",i); }}2. 下面程序段的功能是找出输入整数的所有因子scanf(“%d”,&x);i=1;for(;i<x;){if ( _______ ) printf("%3d", i);i++;}3. 下面程序的功能是从键盘输入的一组字符中,统计出大写字母的个数m和小写字母的个数n,并输出m和n中较大者。

main(){ int m=0,n=0;char c;while(( )!=’\n’){ if(c>=’A’ && c<=’Z’) m++;if (c>=’a’ && c<=’z’) n++;}printf (“%d”,m<n? );}4. 下面程序段的功能是输出1至100之间每位数的乘积大于每位数的和的数。

main(){int n,k=1,s=0,m;for(n=1;n<=100;n++){k=1;s=0; ;while ( ){k*=m%10; s+=m%10; ;}if(k>s) printf(“%d”,n);}}三、写出程序的运行结果(共24分)1. (4分)下程序的输出结果是main(){ int a, b;for(a=1, b=1; a<=100; a++){ if(b>=10) break;if (b%3==1){ b+=3; continue; }}printf("%d\n",a);}执行后输出结果是:2.(4分)写出下面程序的运行结果main()int k=0;char c='A';char *p;p=&c;do switch((*p)++){case 'A':k++;break;case 'B':k--;case 'C':k+=2;break;case 'D':k=k%2;continue;case 'E':k++;break;}while(((*p)++)<'E');printf("%c %c %d\n",c,*p,k);}3. (6分)写出下面程序的运行结果int f(int a){static int tc=3;int tb=0;a=tc++,tb++;printf("%d ,%d\n", tb, tc);return a;}main(){int a=15,i,k;for(i=0;i<2;i++)k=f(++a);printf("%d\n",k);}执行后输出结果是:4. (6分)写出下面程序的运行结果main(){ int s=0,a=2,n=4,k,m;for ( m=a,k=1;k<=n;k++){ s=s+m; m=m*10+a; }printf("%d\n",s);}执行后输出结果是:5. (4分)写出下面程序的运行结果#include <stdio.h>add(int x,int y,int z){ z=x+y; x=x*x;y*=y;Printf(“x=%d y=%d z=%d\n”,x,y,z);}main(){ int x=2,y=3,z=0;printf(“x=%d y=%d z=%d\n”,x,y,z);add(x,y,z);printf(“x=%d y=%d z=%d\n”,x,y,z); }执行后输出结果是:四、编程题(共32分)1.编写程序输入3个整数,要求从大到小的顺序输出。

(10分)2.编写程序求1000以内的所有完全数。

说明:一个数如果恰好等于它的因子之和(除自身外),则称该数为完全数,如6=1+2+3,6为完全数。

3.编写程序:根据以下函数关系,对输入的每个整数x值,计算出相应的y值。

相关文档
最新文档