中南大学考试试题(C语言)10级程序设计试题(修改)

合集下载

《C语言程序设计》练习题及答案

《C语言程序设计》练习题及答案

《C语言程序设计》练习题及答案1. 单选题1. 设有定义:int n=0,*p=&n,**q=&p,则下列选项中正确的赋值语句是A. p=1;B. *q=2;C. q=p;D. *p=5;正确答案:D2. 设有int x=11;则表达式(x++*1/3)的值是A. 3B. 4C. 11D. 12正确答案:A3. 下面程序的输出结果是main(){ int a[10]={1,2,3,4,5,6,7,8,9,10},*p=a; printf("%d\n",*(p+2));}A. 3B. 4C. 1D. 2正确答案:A4. sizeof(float)是A. 一个双精度型表达式B. 一个整型表达式C. 一种函数调用D. 一个不合法的表达式正确答案:B5. 在16位C编译系统上,若定义long a;,则能给a赋40000的正确语句是A. a=20000+20000;B. a=4000*10;C. a=30000+10000;D. a=4000L*10L正确答案:D6. 请选出以下语句的输出结果printf("%d\n",strlen("\t\"\065\xff\n"));A. 5B. 14C. 8D. 输出项不合法,无正常输出正确答案:A7. 若x,i,j和k都是int型变量,则计算表达式x=(i=4,j=16,k=32)后,x的值为A. 4B. 16C. 32D. 52正确答案:C8. 下面能正确进行字符串赋值操作的是A. char s[5]={"ABCDE"};B. char s[5]={ ′A′, ′B′, ′C′, ′D′, ′E′};C. char *s;s="ABCDE";D. char *s;char a; scanf("%s",&s);正确答案:C9.以下程序的输出结果是#include "stdio.h"void reverse(int a[],int n){int i,t;for(i=0;i<n/2;i++){t=a[i];a[i]=a[n-1-i];a[n-1-i]=t;}}main(){int b[10]={1,2,3,4,5,6,7,8,9,10};int i,s=0;reverse(b,8);for(i=6;i<10;i++) s+=b[i];printf("%d\n",s);}A. 22B. 10C. 34D. 30正确答案:A10. 以下不正确的叙述是A. 在C程序中,逗号运算符的优先级最低B. 在C程序中,APH和aph是两个不同的变量C. 若a和b类型相同,在计算了赋值表达式a=b后b中的值将放入a中,而b中的值不变D. 当从键盘输入数据时,对于整型变量只能输入整型数值,对于实型变量只能输入实型数值正确答案:D2. 多选题11. 以下______是正确的转义字符。

C语言考试复习试题及参考答案

C语言考试复习试题及参考答案

中南大学现代远程教育课程考试复习试题及参考答案C语言程序设计一、单项选择题若以下各题所有库函数都可以合法使用,且变量定义如下:int m=5, i=3,j=2,*p, a=8,b=0;int arr[10]={0,1,2,3,4,5,6,7,8,9},td[ ][3]={1,2,3,4,5,6};float x=2.5,y=3.0;double z=0; long n=1;char c=’A’,ch[20]={’a’,’b’,’c’,’\0’,’d’,’\0’};struct student{ int num;char name[20];float score;struct student *next;}st1,st2,*ps;FILE *fp;1.若将3和10从键盘输入给变量a、x,输入语句为scanf(“a=%d,x=%f”,&a,&x);正确的键盘输入是(↙表回车):A a=3,x=10↙B 3,10↙C 3 10↙D 3,10.0↙2. 以下不是死循环的语句是:A for ( ;;y+=i++);B while(a) y+=i++ ;C do{ y+=i++}while (a>0);D for (b=0;(c=getchar()!=’\n’);)b++;3.若p=arr;正确的语句是:A *p=arr[10];B *p=arr[2*a];C p=arr[5];D p[i]=arr[0];4.若ps=&st1;则下面描述正确的是:A ps->num与st1->num等价。

B ps.num与st1.num等价。

C ps->num与num等价。

D ps->num与st1.num等价。

5.语句printf(“%d",a<i>j);的输出结果是:A 1B 0C 8 D都不对6.表达式 j/i+a%i+x 的值是:A 6B 4.5C 6.0D 5.57.表达式 b||a+i&&i<j 的值是:A 不确定B 0.0C 1D 08.若执行语句 a=b+=3*j+(int)x;则b的值为:A 1B 8C 0D 8.59. 若执行语句 a=b>j ?++i : i++;则a与i的值分别为:C x=D x=1a≥b 1 a<b11.将字符串“Wan Ming”输入数组ch中,正确的是:A、scanf(“%s”,ch)B、scanf(“%s”,&ch)C、ch=“Wan Ming”D、gets(ch)12. 执行语句printf(“%c”,td[1][0]+’A’)的结果是:A、AB、BC、DD、E13.下列关于main()函数说法正确的是A、C语言程序总是从main()开始执行B、C语言程序可以没有main()函数C、C语言程序可以包含多个main()函数,但必须在不同的模块中D、C语言程序中main()函数不能有形式参数14.下列关于函数说法正确的是A、C语言程序的函数内还可定义其他的函数B、C语言程序的函数内不可再定义其他的函数C、C语言程序的函数不能自己调用自己D、C语言程序中只有同一源文件中的函数才能有调用与被调用关系15.若#define squ(x) x*x 执行语句printf(“result=%d”,squ(i+j));结果为:A、result=36B、36C、result=11D、1116. 若#define squ(x) (x)*(x) 执行语句printf(“result=%d”,squ(i+j));结果为:A、result=36B、result=17C、result=11D、result=25 17.C语言对宏命令叙述正确的是A、宏替换占用运行时间B、编译程序对宏命令的处理是在对源程序中其它成分编译之前进行的C、宏命令的处理是在程序执行时进行的D、宏命令的处理是在程序连接时进行的18. 若执行语句a- =a+=a*=10;a的值为:A、0B、-10C、-100D、100 19.若执行语句p=arr; printf(“%d”,*(p+i));输出结果为A、0B、2C、3D、120.若执行printf(“%s”,ch);结果为:A、’abc’B、abcC、abcdD、abc\0d21.若对数组进行初始化:charcarr[ ]={’s’,’t’,’u’,’d’,’e’,’n’,’t’},barr[ ]=”student ”;则正确的是A、carr与barr长度相同B、carr比barr长C、carr与barr相同D、carr比barr短22.若有说明语句int (*p)[N];则p是A、N个指向整型变量的指针B、可指向有N个整型元素的一维数组的指针C、指向N个整型变量的函数指针D、有N个指针元素的一维指针数组23.若有说明语句int *f( );则函数f是A、f是一个指向整型变量的数组指针B、f返回一个整型数据C、f是一个指向整型变量的函数指针D、f 返回一个整型指针,指向函数本身24.若函数f定义如下:void f(char *d, char *s){ while ( *d++=*s++);}函数f的功能是:A、串比较B、串复制C、求串长D、串反向25.表达式100+a+’a’+x*z的值的数据类型为A、intB、floatC、doubleD、char26.若要动态申请一个double型内存单元,正确的语句是A、pd=double malloc(sizeof(double))B、pd=( *double)malloc(sizeof(double))C、pd=double * malloc(sizeof(double))D、pd=(double*)malloc(sizeof(double))27.若要从键盘上输入67892到变量n中,正确的语句是A、scanf(“%lf”,&n);B、scanf(“%ld ”,&n);C、scanf(“%lf ”,n);D、scanf(“%d ”,&n); 28.判断字符变量c是否不为小写英文字母的正确表达式是A、’a’<=c <=’z’B、c>= ‘a’ && c<=’z’C、’a’≤c ≤’z’D、c<’a’ || c>’z’ 29.下列每组表达式被执行后,结果完全等价的是A、!(b= =0)与!(!b )B、b=(a=4,4*5) 与 b=a=4,4*5C、float(i/j) 与 float i/jD、0<x<100 与 x>0 && x<10030.表达式(m&1)==(m%2)的值是A、 0B、无法确定C、 1D、以上都不对31.数学式ln2x+asin(60°)的C语言表达式是A、log(2*x)+a*sin(60)B、ln(2*x) +a*sin(60/180*3.14)C、ln(2*x) +a*sin(60)D、log(2*x)+a*sin(3.14*60/180)32. 要打开一个已经存在的非空文件file用于修改,则正确的语句是A、fopen(“file”,”r+”)B、fopen(“file”,”w”)C、fopen(“file”,”a+”)D、fopen(“file”,”r”)33. 若打开文件时发生错误,则fopen()函数的返回值是A、1B、0C、不确定D、没有返回值34. 调用函数fseek(fp,-25L,2),其操作结果是A、文件位置指针从文件开始处前移25字节B、文件位置指针从文件结尾处后移25字节C、文件位置指针从文件当前位置处前移25字节D、文件位置指针从文件当前位置处后移25字节35. 能正确表示a和b同时为正或同时为负的逻辑表达式是A、(a>=0||b>=0)&&(a<0||b<0)B、(a>=0&&b>=0)&&(a<0&&b<0)C、(a*b>0&&(a*b<=0)D、a*b>036. 若x=y=z=1;表达式(x--||++y)&&(z++)执行后,x,y,z的值分别为:A. 0,1,1B. 0,1,2C. 0,2,1D. 0,2,237.下列变量的初始化,不正确的是:A. int x,y=5;B. float x=y=3.5;C. char s[]=”a”;D. int a[][3]={{1},{},{0,9}};38. 可以代替while(x!=0)中的条件x!=0的是:A. xB. !xC. x==1D. x!=139.有关函数参数,下列说法不正确的是:A. 实参和形参是不同的变量;B. 实参可以将数据传给形参;C. 形参可以将数据传给实参;D. 实参和形参必须个数相等,类型一致。

中南大学试题

中南大学试题

; 用汇编语言实现实现冒泡排序,并将排序后的数输出DATAS SEGMENT A dw 3 10 8 56 22 36 1 43 31 3N=$-A ; 计算数字所占的字节数DATAS ENDSCODES SEGMENTASSUME CS:CODES,DS:DATASSTART:MOV AX,DATASMOV DS,AX MOV SI,0 MOV CX,N/2-1 CALL BUBBLE;SI 遍历数字; 前一个数的地址;设置循环次数,M(M=N/2个数需要,循环M-1次;调用BUBBL将原来的数排序; 输出排序后的数MOV CX,N/2 MOV SI,0 MOV DI,0;循环M次输出排序后的M个数;SI 遍历排序后的数;用DI记录数字的位数MOV BP,N+5 ;BP 用于遍历存储的转化后的字符的位置SHOW: PUSH CX; 循环次数入栈MOV DX,0 ; 由于将要进行16位除需要置高16位为0 MOV AX,[SI] ; 低16位为排序后的数CALL DTOC ;调用DTO将十进制数转换为字符串CALL SHOW_STR调用SHOW_S将一个数转化得到的字符串输出ADD SI,2 ; 下一个数POP CX ; 循环次数出栈栈LOOP SHOWMOV AH,4CHINT 21H ; 冒泡排序BUBBLE PROCL1: PUSH CXLEA SI,AL2: MOV AX,A[SI]CMP AX,A[SI+2]JBE NEXTXCHG AX,A[SI+2]; 将循环次数入栈;SI遍历DATA数据段的数字; 将前一个数存于AX; 比较前后两个数; 如果前一个数小于或等于后一个数则继续本轮的比较; 否则,交换前后两个数的位置MOV A[SI],AXNEXT:ADD SI,2LOOP L2POP CXLOOP L1RET BUBBLE ENDP; 下一个数; 注意内层循环的次数已经确定了; 将循环次数出栈; 下一轮比较将十进制数转换为字符串并储存起来DTOC PROCS:MOV CX,10 ; CALL DIVDW ADD CL,30H将除数10,放入CX中;调用DIVDV程序;把数字转换为ASCII码,这样就能显示了MOV DS:[BP],CL ; 把ASCII码放到内存中INC DIPUSH AXADD AX,DXJZ BACKPOP AXDEC BP ; JMP S; 用DI 记录循环的次数; 将低16位入栈; 将高位与低位相加,接着判断是否已经除尽; 除尽后返回调用处; 将低1 6位出栈逆序存放转化后的字符,便于主程序调用SHOW_STRBACK:POP AX;RET为了得到正确的IP值,需要出栈一次; 子程序定义开始, 功能是分离被除数的各个位的数字; 公式:X/N=int(H/N)*65536+[rem(H/N)*65536+L]/N DIVDW PROCPUSH AX MOV AX,DX MOV DX,0DIV CXMOV BX,AX POP AXDIV CX ; MOV CX,DX ; MOV DX,BX ; RET ;DIVDW ENDP ; 低16位入栈;将高16位写入AX,; 将高16位置零; 将新的数除10,;将商int(H/N)转移到BX 默认余数rem(H/N)在DX; 将低16位出栈,将[rem(H/N)*65536+L]除10,默认余数在DX 将余数转移到CX将商int(H/N)转移到dx,相当于int(H/N)*65536 子程序定义结束; 实现字符串的输出SHOW_STR PROC S2:MOV AH,2 MOV DL,DS:[BP] INT 21HINC BPDEC DIJZ OKJMP S2; 输出数字转化后的字符串; 顺序输出; 数字的位数减一; 字符串输出完了就结束; 否则继续输出OK:MOV AH,2 ;输出空格MOV DL,0INT 21HRETSHOW_STR ENDPCODES ENDSEND START第一个累加和的源码:AREA TEXT,CODE,READWRITEENTRYMOV R0,#100 ;循环数目MOV R1,#0 ;初始化数据LOOPADD R1,R1,R0 ;将数据进行相加,获得最后的数据SUBS R0,R0,#1 ;循环数据R0减去1CMP R0,#0 ;将R0与0比较看循环是否结束BNE LOOP ;判断循环是否结束,接受则进行下面的步骤LDR R2,=RESULTSTR R1,[R2]RESULTDCD 0STOPB STOP第二个排序的源码附上:;排列算法:先将所有的数据与第一个进行比较,最后取出最小的数据放到第一个内存单元中;然后再从第二个内存单元开始进行比较,将第二小的数据放到第二个内存单元中,;以此内推则能将十个数据进行排列。

中南大学大数据库试的题目

中南大学大数据库试的题目

一、填空(10空,每空1分,共10分)1.SQL语言有四类语句,分别是、、DML和。

(中文及英文简写均可)2.基本表中,“关键字”概念应该体现其值的和两个特征。

3.数据库系统的模式结构由、和三级组成。

4.SQL有两种使用方式:和。

二、选择(10题,每题 1.5分,共15分)1.数据是指所有能输入到计算机中并被计算机程序所处理的的总称。

A)文字 B)字母 C)符号 D)数字2.数据模型的三要素是指。

A)数据结构、数据对象和数据共享B)数据结构、数据操作和数据控制C)数据结构、数据对象和完整性D)数据结构、数据操作和完整性约束条件3.一般说来,两个实体之间的联系可分为种。

A)四 B)三 C)二 D)六4.某个用户对某类数据有何种操作权力由决定。

A)用户 B)系统分析员 C)DBA D)应用程序员5.若关系R(U)的每个属性值都是不可分的原子值,且每个非主属性完全函数依赖于关键字,则称R满足。

A)1NF B)2NF C)3NF D)BCNF6.数据库系统中,数据独立性是指。

A)数据之间相互独立 B)应用程序与数据库的结构之间相互独立C)数据的逻辑结构与物理结构相互独立D)数据与磁盘之间相互独立7.对数据库中数据的操作分成两大类。

A)查询和更新 B)检索和修改 C)查询和修改 D)插入和修改8.SQL中,“SALARY IN(1000,2000)”的语义是。

A)SALARY<=2000 AND SALARY>=1000B)SALARY<2000 AND SALARY>1000C)SALARY=1000 AND SALARY=2000D)SALARY=1000 OR SALARY=20009.下列式子中,不正确的是。

A)R-S=R-(R∩S) B)R=(R-S) ∪(R∩S)C)R∩S=S-(S-R) D)R∩S=S-(R-S)10.数据库设计人员和用户之间沟通信息的桥梁是。

A)程序流程图 B)实体联系图 C)模块结构图 D)数据流图(DFD)三、简答题(5×3′)1、数据库系统阶段的数据库管理有哪些特点?2、关系三完整性规则是什么?3、为什么要进行关系模式的分解?分解的依据的是什么?4、基于数据库系统生存期的数据库设计分成哪些阶段?5、简述层次模型、网状模型、关系模型的特点?四、名词解释(5×2′)1、3NF2、视图3、DBMS4、实体5、模式五、E-R模型设计题(24分)1.设有商务数据库用以处理销售记帐,它涉及的数据包括顾客、商品信息。

中南大学考试试卷带答案

中南大学考试试卷带答案

中南大学考试试卷带答案2010 —2011 学年上学期时间110分钟MATLAB程序设计与仿真课程32 学时2 学分考试形式:闭卷专业年级:电子信息工程20XX级,总分100分,占总评成绩70%一、填空题(本题42分,每空2分)1.MATLAB中的显示所有内存变量的命令是:who ;清除内存变量的命令是:clear 。

2.在MA TLAB命令窗口中的“≥”标志表示MA TLAB处于准备状态。

3.把一个图形显示在一个图像窗口的m×n个子图像中的第p个位置的命令是subplot(m,n,p) 。

4.设A=reshape(1:9,3,3), 删除矩阵A的第7号元素后,A= 1 2 3 4 5 6 8 9 。

5.已知A=[1 2 3;4 5 0;7 8 9];B=[1 0 3;1 5 0;0 1 2];写出下列各指令运行的结果。

A+B ans=2 2 6;5 10 0;7 9 11 ;A.*B ans= 1 0 9;4 25 0;0 8 18 ;diag(A)/diag(B) ans= ;A(3)*B(4) ans= 0 。

6.假定变量A是5行4列的矩阵,则plot(A)将在图形窗口绘制 4 条折线。

7.x=-2.65, 则fix(x)= -2 , floor(x)= -3 , ceil(x)= -2 。

8.假定将符号变量x,y定义“x=sym(‘a’);y=sym(’5’); z=sym(’2’);”,则写出下列指令的运行结果:y+z ans= 7 ;x^z-y ans= a^2-5 ;9.(超纲)MA TLAB中的读图像的函数是imread ;显示图像的函数是:imshow 。

10.MATLAB中,特殊变量‘nargin’表示在函数体内判断输入变量个数;‘nargout’表示在函数体内输出参数的个数。

?11. 产生3行4列均值为1,方差为2的正态随机矩阵的命令是a=_____1+sqrt(2)*randn (3,4)_______。

中南大学计算机数据结构试题参考答案讲解学习

中南大学计算机数据结构试题参考答案讲解学习

中南大学计算机数据结构2013试题参考答案中南大学考试试卷2015--2016学年上学期期末考试试题时间100分钟数据结构课程56学时3.5学分考试形式:闭卷专业年级:计算机科学与技术10级总分100分,占总评成绩70%姓名班级学号(本试卷共四道大题,答案全部做在答题纸上!)一、选择题(每题2分,共24分)1.以下数据结构中,属于线性结构的是()A.图B.栈C.二分查找树D.森林2.用二分法查找表(a0,a1,a2,a3,……a16),需要比较2次才能找到的元素是()A.a7和a16 B.a11和a13C.a1和a14 D.a3和a123.用概率查找改进查找效率,是经过多次查找以后使得()A.查找次数越少的元素查找速度越快B.查找次数越少的元素越往前存放C.查找次数越多的元素越往后存放D.查找次数越多的元素查找速度越快4.二分查找要求元素( )A.有序、顺序存储B.有序、链式存储C.无序、顺序存储D.无序、链式存储5.已知pPre为指向链表中某结点的指针,pNew是指向新结点的指针,以下哪段伪码算法是将一个新结点插入到链表中pPre所指向结点的后面?()A.pPre->link = pNew; pNew = null;B.pPre->link = pNew->link; pNew->link = null;C.pNew->link = pPre->link; pPre->link = pNew;D.pNew->link = pPre->link; pPre->link = null;6.在递归算法执行过程中,计算机系统必定会用到的数据结构是()A.队列B.链表C.栈D.二叉树7.一个队列的入列序为ABCD,则队列的可能输出序列为()A.DCBA B.ABCDC.ADCB D.CBDA8.具有10个叶子结点的二叉树中有()个度为2的结点A.8 B.9C.10 D.119.若A=10,B=4,C=6,D=4,E=15则后缀表达式“AB*CD+-E+”的值为( )。

中南大学C 题库精华

中南大学C  题库精华

中南大学C++题库选择题:1.下列常量中不能作为C++常量的是:03282.下列哪个是C++语言的合法字符常量:’\x89’3.表达式(1,2,3,4)的结果是:44.关于C++和C语言的描述中,错误的是:C语音和C++都是面向对象的5.结构化程序由三种基本结构组成,不包括:控制结构6.在位运算中,操作数每右移一位,其结果相当于:操作数除以27.用C++于洋便血的代码程序:是一个源程序8.在函数中如果不说明变量的存储类型,则默认的存储类型是:auto9.不属于C++源程序的翻译过程的是:解释分析10.二进制文件与字符文件不同的是:二进制文件中每字节数据都没有用ASCII码表示11.变量生成期是指:变量在内存中分配存储但愿到被释放期间12.C++源程序中,以下说法不正确的是:变量定义语句一定会给变量赋初值13.不属于C++源程序的独立部分是:存储区分配部分14.函数的返回值的类型由:定义函数时所指定的返回值类型15.有关变量的正确说法是:存储单元及内容16.设有int a[10],*p=a;则下面哪种表示与a[5]不等价:p+517.若有:int a,*p=&a;则下面哪个表达式为假:*p==&a18.下面哪一C++语言表达式不能正确表示数学关系a<x<=b。

选项为:a<x<=b19.下面字符序列中,合法的常量是:5L20.编译程序的功能是:将高级语言程序转换为目标程序21.设a和b为整型变量,执行语句b=(a=2+3,a*4),a+5;后a和b的值为:5,1022.有关符号常量不正确的说法:增加了程序执行速度23.以下属于C++语言的基本数据类型是:整数型24.VC++中常用数020表示十进制数:1625.不是VC++6.0的开发过程:使用exe程序26.VC++中常熟0x11表示十进制书:1727.有关变量的正确说法是:存储但愿及内容28.源程序中包含文件编译命令的作用是:把某个头文件中已写好的源代码加入源程序29.struct sd{int a;double b;}s;语句定义了变量s,s存储单元的长度至少为:1230.将圆的周长计算式定义为一个宏L,正确的写法为:#define L(R) (2*PI*(R))31.已知char a[][20]={“Beijing”,”shanghai”,”changsha”};语句cout<<a[3];得到的输出是:输出结果不确定32.如有定义:int a[20];则下面可以正确引用数组元素的表达式是:a[10-10]33.已知类MyClass声明如下:class MyClass{int n;public;MyClass(int k):n(k){}Int getValue()const {return n;}};在下列数组定义中正确的是:MyClass *x5[2]34.已知有数组定义char a[3][4];下列表达式中错误的是:a[2][3]=’W’35.设有数组定义:char array[]=”China”,则数组array所占的空间为:6个字节36.下面关于一维数组的说法错误的是:一维数组的定义中,表示数组长度的可以是直接常量、符号常量和变量37.有如下类定义:ciass A {char *a;public;A():a(0){}A(char *aa){//把aa所指字符串拷贝到a所指向的存储空间a= ;strcpy(a,aa);}~A()(delete []a; }};横线处应填写的表达式是:new char[strlen(aa)+1]38.C++语言的跳转语句中,对于break和continue说法正确的是:continue语句只应用于循环体中39.C++源程序分为区:2个40.与switch同时出现的关键字是:case41.关键字break不会直接影响的是:if42.下列关于循环的描述,错误的是:do-while、while和for循环均是先执行循环体语句,后判断表达式43.若有定义int i=1;则执行完循环while(i++<5);以后i的值为:644.若已有int e;则while(e){…},中的循环控制条件等价于:e!=045.下列关于for训话的描述中,正确的是:for循环的循环体语句中,可以包含多条语句,但必须用花括号{}括起来46.下列关于break语句的描述中,不正确的是:break语句可用在if语句中,它将使执行流程跳出当前的if语句47.下列关于do-while语句的描述中,正确的是:do-while语句所构成的循环只有在while后面的表达式为零时才结束48.下列关于switch语句的描述中,正确的是:switch语句中default子句可以没有,也可以有一个49.下列说法不正确的是:for和do-while循环都是先执行循环体语句,后判断循环条件表达式50.下列叙述中正确的是:栈是“先进先出”的线性表51.已知函数FA调用FB,若要把这两个函数定义在同一个文件中,则:若FB定义在FA之后,则FB的原型必须出现在FA的定义之前52.其中关系T由关系R和S通过某种操作得到,该操作为:并53.数据库管理系统是:在操作系统支持下的系统软件54.在E-R图中,用来表示实体联系的图形是:菱形55.下列选项中不属于结构化程序设计原则的是:可封装56.软件设计中划分模块的一个准则是:低内聚低耦合57.算法的空间复杂度是指:算法在执行过程中所需要的计算机存储空间58.对于基类型相同的指针变量,进行下面哪种运算是没有意义的:+59.int *p1,*p2;p1=b;由此可推知,变量a和b的类型分别是:int和int*60.若有:int a,*p=&a;则下面哪个表达式为假:*p==&a61.设有int a[20],*p=x;则下面中哪个与x[1]不等价:p[1]62.sizeof关键字的作用是:求类型变量的字节数63.下面哪个定义或语句序列能使p指向a:int a,*p=&a;64.与delete关系最密的关键字是:new65.char *s=”Hello world!”;:char *p=s;66.要使指针变量p指向一维数组a的第1个元素,正确的赋值表达式是:p=a或p=&a[0]67.有关指针变量说法不正确的是:指针变量是一个不变的地址数68.若已定义:int a[]={0,1,2,3,4,5,6,7,8,9},*p=a,i;则对a数组元素不正确的引用是:a[10]69.已知char c;char *const pc=”asdf”.*pc=’b’是正确的70.有二维字符数组char s[4][6]={“zhang”,”gao”,”tang”,”wang”},执行程序cout<<*s[2]屏幕上显示:tang71.定义语句int(*p)();的含义是:p是一个指向函数的指针,该函数返回值是整数72.下列关于指针的运算中,两个指针在一定条件下可以相加是非法的73.1、2、3、4变成1、2、2、1。

中南大学C语言历年试卷

中南大学C语言历年试卷

[6] );
if(isprime(*(p+i)) ) sum+=*(p+i)
}
printf(“sum=%d”,sum);
}
int isprime(int x)
{ int i,f=1;
for(i=2;i<=sqrt(x);i + + )
if(x%i = = 0) {f=0;break;}
[7]
;
}
3. 以下程序调用 invert 函数按逆序重新放置 a 数组中元素的值。a 数组中的值在 main
if (*(p1+k)= =*(p2+k))
printf("%c",*(p1+k));
}
四. 阅读程序,根据提示信息完善程序,每个空只能填写一条语句或一个表达式(每空
3 分,共 30 分)
1. 以下程序求数组中值最大的元素在数组中的下标。
# include <stdio.h>
void main()
{ int a[10] , i , num = [1]
void main()
{ char *chp ;
for (chp =b;*chp ;chp +=2) printf("%s",chp);
printf("\n");
}
10. 以下程序运行后,输出结果是 [10]
void main( )
{ char *s="abcde";
s+=2;
print("%s \n",s);
函数中读入。
#include <stdio.h>

中南大学C 语言程序设计试卷

中南大学C 语言程序设计试卷

C 语言程序设计试卷一、单项选择题(每题1分,共20分)1. C语言规定:在一个源程序中,main函数的位置( )。

A. 必须在最开始B. 必须在系统调用的库函数的后面C. 可以任意D. 必须在最后2. 下面四个选项中,均是合法浮点数的选项是( )。

A. +1e+1 5e-9.4 03e2B. -.60 12e-4 -8e5C. 123e 1.2e-.4 +2e-1D. -e3 .8e-4 5.e-03. 若a=-14,b=3,则条件表达式a<b? a:b+1的值为()。

A. -14B. -13C. 3D. 44. 已知:int n,i=1,j=2;执行语句n=i<j?i++:j++;则i和j的值是( ).A. 1,2B. 1,3C. 2,2D. 2,35. 为了判断两个字符串s1和s2是否相等,应当使用( )A. if (s1==s2)B. if(s1=s2)C. if (strcmp(s1,s2))D. if (strcmp(s1,s2)==0)6. 以下正确的描述是( )。

A. 函数的定义可以嵌套,但函数的调用不可以嵌套。

B. 函数的定义不可以嵌套,但函数的调用可以嵌套。

C. 函数的定义和函数的调用均不可以嵌套。

D. 函数的定义和函数的调用均可以嵌套。

7. 在C语言中,下面对函数不正确的描述是( )。

A. 当用数组名作形参时,形参数组值的改变可以使实参数组之值相应改变。

B. 允许函数递归调用。

C. 函数形参的作用范围只是局限于所定义的函数内。

D. 子函数必须位于主函数之前。

8. 如果在一个函数中的复合语句中定义了一个变量,则以下正确的说法是( )。

A. 该变量只在该复合语句中有效B. 该变量在该函数中有效C. 该变量在本程序范围内均有效D. 该变量为非法变量9. 以下正确的函数形式是( )。

A. double fun(int x,int y) { z=x+y;return z;}B. fun(int x,y) { int z; return z;}C. fun(x,y) { int x,y; double z; z=x+y; return z;}D. double fun( int x,int y) {double z; z=x+y; return z; }10. 以下程序的输出结果是( )。

中南大学计算机基础考试题库试题

中南大学计算机基础考试题库试题
3. 个人计算机属于( )。
(A) 微型计算机
(B) 小型计算机
(C) 中型计算机
(D) 小巨型计算机
参考答案:
(A)
没有详解信息!
4. 自计算机问世至今已经经历了4个时代,划分时代的主要依据是计算机的( )。
(A) 规模 (B) 功能 (C) 性能 (D) 构成元件
参考答案:
(C)
没有详解信息!
32. 在Windows中,想同时改变窗口的高度和宽度的操作是拖放( )。
(A) 窗口角
(B) 窗口边框
(C) 滚动条
(D) 菜单栏
参考答案:
(A)
没有详解信息!
33. 在Windows中,打开一个窗口后,通常在其顶部是一个( )。
(A)
没有详解信息!
23. 超市收款台检查货物的条形码,这属于对计算机系统的( )。
(A) 输入
(B) 输出
(C) 显示
(D) 打印
参考答案:
(A)
没有详解信息!
24. 在文件系统的树形目录结构中,从根目录到任何数据文件,其通路有( )。
36. 操作系统是( )。
(A) 用户与软件的接口
(B) 系统软件与应用软件的接口
(C) 主机与外设的接口
(D) 用户与计算机的接口
参考答案:
(D)
没有详解信息!
37. Windows中可以设置、控制计算机硬件配置和修改显示属性的应用程序是( )。
(C)
没有详解信息!
43. 计算机的应用范围很广,下列说法中正确的是( )。
(A) 数据处理主要应用于数值计算

中南大学十套数据结构试题及答案

中南大学十套数据结构试题及答案

中南大学十套数据结构试题及答案数据结构试卷(1)................1数据结构试卷(2)................4数据结构试卷(3)................6数据结构试卷(4)................8数据结构试卷(5)................11数据结构试卷(6)................14数据结构试卷(7)................16数据结构试卷(8)................18数据结构试卷(9)................20数据结构试卷(10)................2 3数据结构试卷(1)参考答案.........26数据结构试卷(2)参考答案 (27)数据结构试卷(3)参考答案.........28数据结构试卷(4)参考答案 (30)数据结构试卷(5)参考答案.........32数据结构试卷(6)参考答案 (33)数据结构试卷(7)参考答案.........36数据结构试卷(8)参考答案...37数据结构试卷(9)参考答案.........38数据结构试卷(10)参考答案 (39)数据结构试卷(1)1,单项题(每题2分,共20分)1。

堆栈和队列的共同特征是()A.仅允许在端点b插入和删除元素。

所有元素都是先进先出。

所有元素都是先进先出。

没有公共基础2。

以链接方式存储的队列。

在插入操作过程中()。

A .只应修改头部指针b。

头指针和尾指针都应该修改c .只有尾指针d .头指针和尾指针都应该修改3。

下列哪种数据结构是非线性结构?()队列b堆栈c线性表d二叉树4。

有一个二维数组[m][n]。

假设[0][0]存储在644(10)中,[2][2]存储在676(10)中。

每个元素占据一个空间。

问一问[3][3)(10)它储存在哪里?脚注(10)用十进制表示a . 688b . 678c . 692d . 6965。

这棵树最适合用来代表()a .有序数据元素b .无序数据元素c .元素之间具有分支层次关系的数据d .元素之间没有连接的数据6。

中南大学C题库

中南大学C题库

中南大学C题库31以下叙述中不正确的是_____。

A.在不同的函数中可以使用相同名字的变量B.函数中的形式参数是局部变量C.在一个函数内定义的变量只在本函数范围内有效D.在一个函数内的复合语句中定义的变量在本函数范围内有效参考答案D32 C++语言中函数返回值的类型决定于A.return语句中的表达式类型B.调用函数的主调函数类型C.调用函数时变量的类型D.定义函数时所指定的函数类型参考答案D 33使用值传递方式将实参传给形参,下列说法正确的是A.形参是实参的备份B.实参是形参的备份C.形参和实参是同一对象D.形参和实参无联系参考答案A 34若有如下的函数定义:int sum( int a, float b){ return a+(int)b; }则下列函数原型不正确的是()。

A.int sum( int, float );B.int sum( int x, float y );C.int sum( int b, float a );D.int sum( int a=10, float b );参考答案D 35在下面的函数声明中,存在着语法错误的是A.void bc(int a, int) ;B.void bc(int, int);C.void bc (int, int x=5) ;D.void bc(int x; int y);参考答案D36下列叙述中错误的是()。

A.一个函数中可以有多条return语句B.调用函数必须在一条独立的语句中完成C.函数中通过return语句使函数值返回D.主函数名main也可以带形参参考答案B以下语句的输出结果是________enum weekday {sun, mon=3, tue, wed, thu};weekday workday;workday=wed;cout<<workday<<endl;< bdsfid="117" p=""></workday<<endl;<>A.3B.5C.1D.4参考答案B37不能放在声明区的语句是__________。

中南大学2010级电气类C语言程序设计试题

中南大学2010级电气类C语言程序设计试题

中南大学考试试卷2010 -- 2011学年2 学期期末考试试题A卷时间110分钟C语言程序设计基础课程48学时3学分考试形式:闭卷专业年级:2010级总分100分,占总评成绩70 % 注:此页不作答题纸,请将答案写在答题纸上一填空题(每空2分,共30分)1.若int x = 2,y = 7,z = 6;则表达式:x= = ( y = z );执行完后,x的值是;y的值是。

2.若int a,b = 9,d = 8;表达式:a =(――b= = d+ +)? d++ : ――b;则a的结果是;表达式执行完后d的值为。

3.已有宏定义#define P(x) x*x-2设int x = 1,y = 3;且a = P(2+x);b = P(y);则a的值为;b的值为。

4.若int x = 4,y = 6,z = 0;有循环while(x = y) {z ++;y--;}则循环语句执行完后,z值为。

5.若有定义:char str1[ ]={…C‟, …h‟, …i‟, …n‟, …a‟};char str2[ ]=“China”;则数组str1的长度为;数组str2的长度为。

6.已知有定义:int a = 1,b = 2,c = 3,d = 4,m = 1,n =1,k;则语句:k = (m = a > b) && (n = c > d);运行完毕后,m的值为;n的值为;k的值为。

7.已有定义:char *p[]={“Chinese”,“France”,“America”,“Russia”};则语句printf(“%s”, p[1]);printf(“%c”, p[1][2]);printf(“%c”, *(p[3]+1));的输出结果分别为:、、。

二判断题(每小题1分,共10分)1、标准C中,并不区分英文字符的大小写。

2、标准C中,变量可以先使用再定义。

3、若定义函数时,其返回类型为void,则调用函数时,不能将其作为一个值赋给某个变量。

中南大学C++程序设计试卷含答案

中南大学C++程序设计试卷含答案

一、单项选择题(总分21)1. (分值:1.0 分)有如下程序段:</p> int i=1;</p> while(1)</p> { i++;</p>if (i==10) break;</p> if (i%3==0) cout<<"*";</p> }</p>执行这个程序段输出字符*的个数是( )。

A: 1B: 2C: 3D: 4序号:31 难度:1 考查点:程序控制结构2. (分值:1.0 分)要建立文件流并打开当前目录下的文件file.dat 用于输入,下列语句中错误的是A: ifstream fin=ifstream.open ("file.dat");B: ifstream *fin=new ifstream ("file.dat");C: ifstream fin; fin.open ("file.dat");D: ifstream *fin=new ifstream(); fin->open ("file.dat");序号:72 难度:1 考查点:输入输出流3. (分值:1.0 分)有下列程序:#include<iostream.h>void main( ){int i,k,a[10],p[3];k=5;for(i=0;i<9;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;cout<<k;}其输出结果是()。

A: 20B: 21C: 22D: 23序号:100 难度:1 考查点:数组4. (分值:1.0 分)下面4 个选项中,()是用来声明虚函数的。

A: virtualB: publicC: usingD: false序号:141 难度:1 考查点:多态性与虚函数5. (分值:1.0 分)存放多个字符串,用________比较适合。

中南大学C语言历年试卷

中南大学C语言历年试卷

中南大学C语言历年试卷2007年秋C语言试题一、单项选择题:(10分,每题2分)1.char (*p)[5];该语句声明p是一个。

A)指向含有5个元素的一维字符型数组的指针变量pB)指向长度不超过5的字符串的指针变量pC)有5个元素的指针数组p,每个元素可以指向一个字符串D) 有5个元素的指针数组p,每个元素存放一个字符串2.C语言源程序的某文件中定义的全局变量的作用域为:_______。

A)本文件的全部范围B)本函数的全部范围C)从定义该变量的位置开始到本文件结束D) 本程序的所有文件的范围3.以下程序的正确输出结果为:_______。

main(){ int a = 2, c = 5;printf("a = %%d, b = %%d\n", a, c);}A)a = %2, b = %5 B)a = 2, b = 5C)a = %%d, b = %%d D)a = %d, b = %d4.已知学生记录描述为:struct student{int no;char name[20];char sex;struct{int year;char month[20];int day;}birth;};struct student s;设变量s中的“生日”应是“1984年11月11日”,下列对“生日”的正确赋值方式是_____ 。

A) s.birth.year = 1984;s.birth.month = "11";s.birth.day = 11;B) s.birth.year = 1984;s.birth.month = 11;s.birth.day = 11;C) s.birth.year = 1984;strcpy(s.birth.month,"11");s.birth.day = 11;D) s.birth.year = 1984;s.birth.month[] = {"11"};s.birth.day = 11;5.若有二维数组定义语句:int a[3][4]; 则下面能正确引用元素a[i][j]的为:。

中南大学2020年《C语言程序设计》期末考试试题及答案

中南大学2020年《C语言程序设计》期末考试试题及答案

一、选择题(15小题,每小题2分,共计30分)1.下面不正确的字符串常量是 A 。

A)'abc' B)"12'12" C)"0" D)" "2.以下正确的叙述是 DA)在C程序中,每行中只能写一条语句B)若a是实型变量,C程序中允许赋值a=10,因此实型变量中允许存放整型数C)在C程序中,无论是整数还是实数,都能被准确无误(精确)地表示D)在C程序中,%是只能用于整数运算的运算符3.已知字母A的ASCII码为十进制数65,且c2为字符型,则执行语句c2='A'十'6'一'3';后,c2中的值为 AA)D B)68 C)不确定的值 D)C4.sizeof(float)是 B :A)一个双精度型表达式 B)一个整型表达式C)一种函数调用 D)一个不合法的表达式5.以下说法正确的是 D :A)输入项可以为一实型常量,如scanf("%f",3.5);B)只有格式控制,没有输入项,也能进行正确输入,如scanf("a=%d,b=%d");C)当输入一个实型数据时,格式控制部分应规定小数点后的位数,如scanf("%4.2f",&f);D)当输入数据时,必须指明变量的地址,如scanf("%f",&f);6.已有如下定义和输入语句,若要求a1,a2,c1,c2的值分别为10,20,A,B,当从第一列开始输入数据时,正确的数据输入方式是 D (注:<CR>表示回车)。

int a1,a2; char c1,c2;scanf("%d%d",&a1,&a2); scanf("%c%c",&c1,&c2);A) 1020AB<CR> B)10 20<CR>AB<CR>C)10 20 AB<CR> D)10 20AB<CR>7.请阅读以下程序:void main(){int a=5,b=0,c=0;if(a=b+c) printf("***\n");e1se printf("$$$\n");以上程序 D :A)有语法错不能通过编译 B)可以通过编译但不能通过连接C)输出*** D)输出$$$8.下面程序段的运行结果是 C 。

C模拟考试题及参考答案(10级)

C模拟考试题及参考答案(10级)

C语言程序设计模拟试题(10级)一、单选题(、共30小题,每小题1分,共30分)1、有如下定义:struct date{int year,month,day;};struct person{char name[20];char sex;struct date birthday;} a;对结构体变量a的出生年份赋值时,下面正确的赋值语句是:()。

A. a.year=2010;B. birthday.year=2010;C. a.birthday.year=2010;D. year=2010;2、若定义了struct num{int a;int b;}d[3] ={{1,4},{2,5},{6,7}};则执行printf("%d\n",d[2].a* d[2].b/d[1].b);语句的输出结果是:()。

A.2B.2.5C.8D.8.43、以下程序的运行结果是:()。

void main(void){struct num{int x;int y;}cnum[2]={1,3,2,6};printf("%d\n",cnum[0].y/cnum[0].x*cnum[1].y);}A. 18B. 12C. 6D. 14、在VC++6.0中,若有以下说明:struct st{ int x;float y;};则:sizeof(struct st) 的值为():A. 6B. 8C. 10D. 125、若变量x和y均为整型,且x=y=1,则表达式y+=x+1的值为( )。

A. 3B. 2C. 1D.无正确结果6、表示关系x<=y<=z的c语言表达式为( )。

A. (X<=Y<=Z)B. (X<=Y)AND(Y<=Z)C. (X<=Y)&&(Y<=Z)D. (X<=Y)&(Y<=Z)7、x为int型变量,执行以下语句后,x的值为( )。

中南大学C++课后题答案主教材部分习题参考答案2010

中南大学C++课后题答案主教材部分习题参考答案2010
习题一
一、选择题 1. C 2. C 3. B 4. B C 5. C 6. D 7. C 8. A 4. .cpp .obj .exe 5. 符号 定义 6. 10 11 7. double 1 8. -264 9. 4 10. m-(m/n)*n 11. 6 4 2 12. 1
一、选择题 1. C 2. D 3. D 4. B 5. C 6. D 7. B 8. A 9. C 10. D 11. D 12. A
习题六
二、填空题 1. 数据成员 2. 类体内 3. private public protected private 4. 完成对象的初始化 对象的清除工作 5. 3 6. 3 完成 成员函数 类体外
习题九
一、填空题 1.抽象类 抽象类 2. 静态 动态 3. 虚函数 虚函数 二、程序阅读题 B::a() A::b() C::a() A::b()
习题十
一、选择题 1.C 2. A 3. C 二、程序阅读题 1.
习题八
一、选择题 1. C 2. A 3. D 4. D 二、填空题 1. 派生类 基类 2. 从 多 个 基 类 中 派 生 出 新 的 子 类 派生类也可以作为基类派生新的 类,这样就形成了类的层次结构 3. private 4. 仅可以被其自己和派生类中的所 有非静态成员函数和友元函数 直 接访问 5. 基类 派生类 6. √×××√
用对象A初始化对象 用对象 初始化对象B 初始化对象 7. 公有 成员 友元
8. b[0].x b[i].x a,6
习题六
三、程序阅读题 1. a转换为 转换为A 转换为 b转换为 转换为B 转换为 2. There are 1 points, There are 6 points, There are 1 points, 3. fun1:7 fun2:15 4. 97

中南大学十套数据结构试题及答案

中南大学十套数据结构试题及答案

676(10), 数据结构试卷(一) . 错误 !未定义书签。

书签。

数据结构试卷(二) . 错误 !未定义书签。

数据结构试卷(四)参考答案 错误 ! 未定义 数据结构试卷(三) . 错误 !未定义书签。

书签。

数据结构试卷(四) . 错误 !未定义书签。

数据结构试卷(五)参考答案 错误 ! 未定义 数据结构试卷(五) . 错误 !未定义书签。

书签。

数据结构试卷(六) . 错误 !未定义书签。

数据结构试卷(六)参考答案 错误 ! 未定义 数据结构试卷(七). 错误 !未定义书签。

书签。

数据结构试卷(八) . 错误 !未定义书签。

数据结构试卷(七)参考答案 错误 ! 未定义 数据结构试卷(九) . 错误 !未定义书签。

书签。

数据结构试卷(十). 错误 !未定义书签。

数据结构试卷(八)参考答案 错误 ! 未定义 数据结构试卷(一) 参考答案 错误 !未定义书签。

书签。

数据结构试卷(九)参考答案 错误 ! 未定义 数据结构试卷(二) 参考答案 错误 !未定义书签。

书签。

数据结构试卷(十)参考答案 错误 ! 未定义 数据结构试卷(三) 参考答案 错误 !未定义 书签。

数据结构试卷(一)每个元素占一个空间,问 A[3][3] (10)存放在什么位置脚注 (10)表示用 10进制表示。

A .688B . 678C .692D .696一、单选题(每题20 分)(2 分,共 1. 栈和队列的共同特点是A. 只允许在端点处插入和删除元素B. 都是先进后出C. 都是先进先出D. 没有共同点2. 用链接方式存储的队列,在进行插入运算时 ().A. 仅修改头指针B. 头、尾指针都要修改C.仅修改尾指针D.头、尾指针可能都要修改3. 以下数据结构中哪一个是非线性结构 ()A. 队列B. 栈C. 线性表D. 二叉树4. 设有一个二维数组 A[m][n],假设A[0][0]存放位置在644(io ), A[2][2]存放位置在)。

2010C++程序设计复习题及参考答案

2010C++程序设计复习题及参考答案

中南大学现代远程教育课程考试复习题及参考答案C++程序设计一、选择题:1.下列标识符作为变量名称,合法的是 [ ]A. gotoB. StudentC. 123D. k-ld2.设x和y均为int型,则x && y为真的条件是 [ ]A.其中一个为0B.其中一个为非0C.它们均为0D.它们均为非03.存储以下数据,占用存储字节最多的是 [ ]A. 0B. ’0’C. ”0”D. ’\n’4.如果有以下语句:int a,b;char m,n;cin>>a>>b>>m>>n;则下列输入数据的方式中正确的是 [ ]A. 10,20,X,YB. 1020 XYC. 10 20 X YD. 10、20、X、Y5.下列for循环的次数为 [ ]for (int I=0,x=0;!x && I<=5;I++)A. 5B. 6C. 1D. 无限6. 若有定义为“int *r =new int [10];”,则释放指针所指内存空间的操作是 [ ]A. delete [ ]r;B. delete *rC.delete r;D.delete r[ ];7. 有函数原型声明语句“int test(int a, int b=1, int c=0);”,在以下函数调用语句中,不合法的是 [ ]A. test(0);B. test(0,0);C. test( );D. test(0,0,0);8. 选择出合法的if语句(设有int x,a,b,c;) [ ]A. if (a==b) x++;B. if (a=<b) x++;C. if (a<>b) x++;D. if (a=>b) x++;9. 声明或定义一个内联函数时,必须在函数开始使用保留字 [ ]A. staticB. constC. externD. inline10. 在下面的函数声明中,存在着语法错误的是 [ ]A. BC(int a, int);B. BC(int, int);C. BC(int, int=5);D. BC(int x; int y);11. 将两个字符串连接起来组成一个字符串时,选用的函数是 [ ]A. strlen()B. strcpy()C. strcat()D. strcmp()12. 在程序中,预处理命令开头的字符都是 [ ]A. *B. #C. &D. @13. 若已知“char str[20];”,有语句“cin>>str;”,当输入为:This is a program 时,所得的结果是str= [ ]A. This is a programB. ThisC. This isD. his is a14. 在下面的do循环语句中,其循环体被执行的次数为 [ ]int i=0;do { i++; }while(i*i<10);A. 4B. 3C. 5D. 215. 在下面的一维数组定义中,有语法错误的语句是 [ ]A. int a[ ]={1,2,3};B. int a[10]={0};C. int a[ ];D. int a[5];16. 下面的保留字中,不能作为函数的返回类型 [ ]A. voidB. intC. newD. long17. 下面的函数声明中,“void BC(int a, int b);”的重载函数是 [ ]A. int BC(int x, int y);B. void BC(int a, char b);C. float BC(int a, int b, int c=0);D. int BC(int a, int b=0);18. 假定AB为一个类,则该类的复制构造函数的声明语句为 [ ]A. AB&(AB x);B. AB(AB x);C. AB(AB* x);D. AB(AB&);19. C++程序的基本功能模块为 [ ]A. 表达式B. 标识符C. 语句D. 函数20. 函数模板:“template <class T> T add(T x, T y){return x+y;}”,下列对add函数的调用不正确的是 [ ]A. add<>(1,2)B. add<int>(1,2)C. add(1.0, 2)D. add(1.0,2.0)21. 在下面的一维数组定义中,有语法错误的是 [ ]A. int a[ ]={1,2,3};B. int a[10]={0};C. int a[ ];D. int a[5];22.C++语言中的每条简单语句是以哪个符号作为结束符的 [ ]A. 分号B. 逗号C. 空格D. 换行符23. 设“int f(int); ”和“int g(int); ”是函数f和g的原形,以下将f作为语句调用的是[ ]A. g(f(3))B. f(g(3));C. g(f(3)+2);D. p=f(g(3)+1);24. 下面对构造函数和析构函数正确定义的项是 [ ]A. X::X(参数), X::~X()B. void X::X(), void X::~X()C. X::X(参数), X::~X(参数)D. void X::X(参数), void X::~X(参数)25. 在下列double型常量表示中,错误的是 [ ]A. E15;B. .35;C. 3E5;D. 3E-526. 下列各运算符中,优先级最低的是 [ ]A. ?:B. |C. ||D. !=27. 下列定义中,定义指向数组的指针p的是 [ ]A. int *p[5];B. int (*p)[5]C. (int *)p[5]D. int *p[ ];28. 设有以下定义:void f1(int * m, long & n);int a;long b;则以下调用合法的是 [ ]A. f1(a,b)B.f1(&a,b)C. f1(a,&b)D.f1(&a,&b)29. 下列各类变量中,不是局部变量的是 [ ]A. register int x; B.void f(int w)C.int z; D.static int y;(定义在函数外)30. 已知p是一个指向类A数据成员m的指针,A1是类A的一个对象。

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

中南大学考试试卷
2010 -- 2011学年2 学期期末考试试题A卷时间110分钟C语言程序设计基础课程48学时3学分考试形式:闭卷专业年级:2010级总分100分,占总评成绩70 % 注:此页不作答题纸,请将答案写在答题纸上
一填空题(每空2分,共30分)
1.若int x = 2,y = 7,z = 6;则表达式:x= = ( y = z );执行完后,x的值是;y的值是。

2.若int a,b = 9,d = 8;表达式:
a =(――b= = d+ +)? d++ : ――b;则a的结果是;
表达式执行完后d的值为。

3.已有宏定义#define P(x) x*x-2
设int x = 1,y = 3;且a = P(2+x);b = P(y);
则a的值为;b的值为。

4.若int x = 4,y = 6,z = 0;有循环while(x = y) {z ++;y--;}
则循环语句执行完后,z值为。

5.若有定义:
char str1[ ]={…C‟, …h‟, …i‟, …n‟, …a‟};char str2[ ]=“China”;
则数组str1的长度为;数组str2的长度为。

6.已知有定义:int a = 1,b = 2,c = 3,d = 4,m = 1,n =1,k;
则语句:k = (m = a > b) && (n = c > d);运行完毕后,
m的值为;n的值为;k的值为。

7.已有定义:char *p[]={“Chinese”,“France”,“America”,“Russia”};则语句printf(“%s”, p[1]);printf(“%c”, p[1][2]);printf(“%c”, *(p[3]+1));
的输出结果分别为:、、。

二判断题(每小题1分,共10分)
1、标准C中,并不区分英文字符的大小写。

2、标准C中,变量可以先使用再定义。

3、若定义函数时,其返回类型为void,则调用函数时,不能将其作为一个值赋
给某个变量。

4、表达式“3.6%2”符合C语言语法。

5、全局变量的作用域是整个源程序文件。

6、数组名可以作为参数进行传递。


7、表达式“ELSE”是合法的C语言标识符。

8、一个函数中只允许有一条return语句。

9、C语言中用到的任何一个变量都要规定其类型。

10、使用continue语句,可以使得C程序的执行直接从循环中跳出。

三下列各程序中每个程序各有2个错误,指出错误语句,写出对应正确语句(每小题4分,共16分)
四程序填空题:下列程序中缺少若干条语句,在对应的下划线上填上合适的语句,每一个下划线只填一条语句(每小题4分,共16分)
五 阅读下列程序,写出运行结果(每小题6分,共12分)
六 编程题(第1题6分,第2题10分,共16分)
1、编程求50
50
10
21111===++∑∑∑k k k k k k 。

2、编写程序求10个实数的最大值、最小值及平均值,要求: ① 最大值、最小值、平均值的求取分别通过三个函数实现,函数以
数组名或指针为参数;
② 主函数中通过键盘输入10个实数。

③ 求出结果后,要求将其在主函数中输出。

相关文档
最新文档