2018年江西东华理工大学C语言程序设计考研真题.doc

上传人:wo****o 文档编号:86208649 上传时间:2023-04-14 格式:DOC 页数:6 大小:56KB
返回 下载 相关 举报
2018年江西东华理工大学C语言程序设计考研真题.doc_第1页
第1页 / 共6页
2018年江西东华理工大学C语言程序设计考研真题.doc_第2页
第2页 / 共6页
点击查看更多>>
资源描述

《2018年江西东华理工大学C语言程序设计考研真题.doc》由会员分享,可在线阅读,更多相关《2018年江西东华理工大学C语言程序设计考研真题.doc(6页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、2018年江西东华理工大学C语言程序设计考研真题一、选择题:(共 30 小题,1-20 每小题 1 分,21-30 每小题 2 分,共 40 分) 1.C 语言提供的合法关键字是( ) A.switch B.cher C. default D. case 2.在 C 语言中,合法的字符常量是( ) A.084 B. ab C. x43 D.0 3.若已定义 x 和 y 为 double 类型,则表达式: x=1,y=x+3/2 的值是( ) A. 2.0 B.2 C.1 D.2.5 4.合法的数组定义是( ) A.int a=string; B. char a=0,1,2,3,4,5; C.c

2、har a=string; D. int a5=0,1,2,3,4,5; 5.设 a 为整型变量,不能正确表达数学关系 10a15 的 C 语言表达式是( ) A. a10&a15 B.a=11|a=12|a=13|a=14 C. 10a15 D.!(a=10)&!(a=15) 6.若 t 为 double 类型,表达式 t=1,t+5,t+的值是( ) A. 2.0 B.6.0 C.1 D.1.0 7.若有定义和语句: char s10;s=abcd;printf(%sn,s);则结果是(以下 代表空格)( ) A. 编译不通过 B.输出 a C.输出 abcd D. 输出 abcd 8.若

3、有定义和语句:int *pp, *p, a=10, b=20; pp=&p;p=&a;p=&b;printf(%d,%dn,*p,*pp);则输出结果是( ) A.10,10 B. 20,20 C.20,10 D. 10,20 9.若有以下定义和语句: int u=010, v=0x10, w=10; printf(%d,%d,%dn,u,v,w);则输出结果是( ) A. 8,8,10 B.10,10,10 C. 8,16,10 D. D.8,10,10 10.若有以下定义和语句: char c1=b, c2=e; printf(%d,%cn,c2-c1,c2-a+A);则输出结果是( )

4、A.2,M B.2,E C. 3,E D.输出项与对应的格式控制不一致,输出结果不确定 11.若有定义:int a34;,( )不能表示数组元素 a11。 A.*(a1+1) B. *(a+5) C.(*(a+1)1 D. *(&a11) 12.若 i、j 已定义为 int 型,则以下程序段中内循环体的总的执行次数是( ) for(i=5;i0;i-) for(j=0;j4;j+)A.30B.24C.25 D.20 13.若有以下定义和语句: char *s1=12345,*s2=1234; printf(%dn,strlen(strcpy(s1,s2);则输出结果是( ) A.9 B.5 C

5、.4 D.10 14.若有以下定义和语句: int a10=1,2,3,4,5,6,7,8,9,10,*p=a; 则不能表示 a 数组元素的表达式是( ) A.*p B. ap-a C.*a D. a10 15.下面程序的输出结果是( ) A. k=2 a=3 b=2 B.k=3 a=3 b=2 C. k=3 a=2 b=3 D.k=2 a=2 b=3 16.下面程序的输出结果是( ) main( ) unsigned a=32768; printf(a=%dn,a); A.a=32768 B.a=-32767 C.a=32768 D.a=-1 17.执行下面语句后的输出结果为( ) int

6、i=-1; if(i=0) printf(*n); else printf(%n) A. 有语法错误,不能正确执行 B.% C.%c D. * 18.对于条件表达式(M)?(a+):(a-),其中的表达式 M 等价于( ) A. M!=0 B.M=1 C. M=0 D.M!=1 19.下述程序段的输出结果是( ) int x=10; int 7nbspy=x+;printf(%d,%d,(x+,y),y+); A.10,10 B.11,11 C.11,10 D.10,11 20.若有以下的定义: int a=1,2,3,4,5,6,7,8,9,10,*p=a;则值为 3 的表达式是( ) A.

7、 p+=2,*+p B. p+=2,*(p+) C.p+=3,*p+ D.p+=2,+*p 21.假定所有变量均已正确说明,下列是程序段运行后 x 的值是( ) a=b=c=0;x=35; if(!a) x-; else if(b); if(c) x=3; else x=4; A.34 B.3 C.35 D.4 22.在以下一组运算中,优先级最高的运算符是( ) A.= B.= C. & D. % 23.若有以下定义和语句: int w23,(*pw)3;pw=w; 则对 w 数组元素的非法引用是( ) A. pw00 B.*(pw+1)2 C. *(w0+2) D.*(pw1+2) 24.若

8、有以下程序片段: char str =abn012; printf(%d,strlen(str);上面程序片段的输出结果是( ) A.12 B.6 C.4 D.3 25.函数调用:strcat(strcpy(str1,str2),str3)的功能是( ) A.将串 str2 复制到串 str1 中后再将串 str3 连接到串 str1 之后 B.将串 str2 连接到串 str1 之后再将串 str1 复制到串 str3 中 C.将串 str1 复制到串 str2 中后再连接到串 str3 之后 D.将串 str1 连接到串 str2 之后再复制到串 str3 之后 26.以下对 C 语言函数

9、的有关描述中,正确的是( ) A.C 函数既可以嵌套定义又可以递归调用 B.函数必须有返回值,否则不能使用函数 C.C 程序中有调用关系的所有函数必须放在同一个源程序文件中 D.在 C 中,调用函数时,只能把实参的值传送给形参,形参的值不能传送给实参 27.以下叙述中不正确的是( ) A.在 C 中,外部变量的隐含类别是自动存储类别 B.在 C 中,函数形参可以说明为 register 变量 C.在 C 中,函数中的自动变量可以赋初值,每调用一次,赋一次初值 D.在 C 中,在调用函数时,实参和对应形参在类型上只需赋值兼容 28.设有以下定义或语句,则输出的结果是(用 small 模式编译,指

10、针变量占 2 个字 节)( ) struct date long *cat; struct date *next; double dog; too; printf(%d,sizeof(too); A.12 B.14 C.16 D.20 29.设有定义:struct skint a;float b;data,*p; 若有 p=&data;,则对 data 中的 a 域的正确引用是( ) A.(*p).data.a B.p-data.a C.(*p).a D.p.data.a 30.以下对枚举类型名的定义中正确的是( ) A.enum a=one,two,three; B.enum aone,tw

11、o,three; C.enum a=one,two,three; D.enum aone=9,two=-1,three; 二、程序填空题:(每空 2 分,共 50 分) 11下列算法为奇偶交换排序,思路如下:第一趟对所有偶数的 i,将 ai和 ai+1 进行比较,第二趟对所有奇数的 i,将 ai和 ai+1进行比较,每次比较时若 aiai+1,将二者交换;以后重复上述二趟过程,直至整个数组有序。 void oesort (int a,int n) int flag,i,t; do flag=0; for(i=0;iai+1) flag= (2) ; t=ai+1;ai+1=ai;ai=t; f

12、or( (3) ) if (aiai+1)flag= (4) ; t=ai+1;ai+1=ai;ai=t; while (5) ; 2. 下面是对有序表(递增)进行二分查找的递归算法(如果找到,返回起下标,否则 返回-1)。 int BSearch( ElemType A ,int low, int high, KeyType K ) if (low Amid.key) return (3) else return (4) else return (5) 3. 下面程序在数组 a 中查找与 x 值相同的元素所在位置。 void main( ) int a11, i, x ; printf( “

13、输入 10 个整数:”); for(i=0; i1 另外有一个数列 xn,该数列中各元素的值为: x(i)=a(i)/a(i+1) i=0,1,n 要求对 xn 中的元素按升序进行排序,然后以分数形式输出排序后的 xn。 例如 n=5 时,排序前的 xn=1/1,1/2,2/3,3/5,5/8, 排序后的 xn=1/2,3/5,5/8,2/3,1/1。 make 函数首先生成排序前的 xn,然后调用函数 sort()进行排序,最后输出所求结果。 struct fact long m,n; ; void sort(int n,struct fact *p) int a; long s,t,u,v

14、; struct fact *q,*end; for(end=p+(n-1),a=1; (1) ;end-) for(a=0,q=p; (2) ;q+) s=q-m; t=q-n; u=(q+1)-m; v=(q+1)-n; if( (3) ) q-m=u; (4) ; (5) ; (q+1)-n=t; a=1; void make(int n) int i; long a,b,c; struct fact *x,*y; x=(struct fact *)malloc(sizeof(struct fact)*n); x-m=1; x-n=1; for(a=1,b=1,i=2;im=a; (x+(i-1)-n=b; (7) ; printf(x%d=%d/%d,n,x-m,x-n); for(y=x+1; (8) ;y+) printf(,%d/%d,y-m,y-n); printf(n); (9) ; void main() int n; (10) ; make(n);

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 考试试题 > 升学试题

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号© 2020-2023 www.taowenge.com 淘文阁