欢迎来到淘文阁 - 分享文档赚钱的网站! | 帮助中心 好文档才是您的得力助手!
淘文阁 - 分享文档赚钱的网站
全部分类
  • 研究报告>
  • 管理文献>
  • 标准材料>
  • 技术资料>
  • 教育专区>
  • 应用文书>
  • 生活休闲>
  • 考试试题>
  • pptx模板>
  • 工商注册>
  • 期刊短文>
  • 图片设计>
  • ImageVerifierCode 换一换

    2019年湖北武汉科技大学C语言程序设计考研真题及答案.docx

    • 资源ID:95597185       资源大小:16.83KB        全文页数:6页
    • 资源格式: DOCX        下载积分:5.5金币
    快捷下载 游客一键下载
    会员登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录   QQ登录  
    二维码
    微信扫一扫登录
    下载资源需要5.5金币
    邮箱/手机:
    温馨提示:
    快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝    微信支付   
    验证码:   换一换

     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    2019年湖北武汉科技大学C语言程序设计考研真题及答案.docx

    2019年湖北武汉科技大学C语言程序设计考研真题及答案一、选择题(共15小题,每小题2分,共30分)1. 以下均是合法变量名的是( )。A)#name total B)node value_max C)_var long D)stu-code a+b2. 以下选项中不属于C语言类型的是( )。 A)short int B)unsigned long int C)char D)bool3. 若有声明语句:int x; char y20; double z; 则正确的输入语句是( )。A)scanf(“%d%c%len”,&x,&y,&z); B)scanf(“%2d%s%lf”,&x,&y,&z);C)scanf(“%d%s%lf”,&x,y,&z); D)scanf(“%x%s%3.2f”,&x,y,&z);4. 若a、b和t都为int变量,则下面不能交换变量a和b值的是( )。A)t=a; a=b; b=t; B)a=t; t=b; b=a;C)t=b; b=a; a=t; D)a=a+b; b=a-b; a=a-b;5. 若有定义:int a=1,b=2; float x=3,w; 则合法的switch语句是( )。A)switch(a) B)switch(b) case 1: w=a/b; break; case 1: z=a%b; case 2: w=a%b; break; case 2: z=a/b; break; C)switch (x) D)switch(a+b); case 2: w=a%b;break; case 3: case 1: w=a/b; break; case 2: w=a%b; break; 6. 对下述程序段的描述正确的是( )。 scanf("%d,%d",&a,&b); if(a>b) a=b; b=a; else a+; b+; printf("a=%d,b=%d",a,b);A)若输入4,5则输出a=5,b=6 B)若输入5,4则输出a=4,b=5C)若输入5,4则输出a=5,b=5 D)有语法错误,不能通过编译7. 以下正确的描述是( )。 A)从多层循环嵌套中退出时,只能使用break语句。B)在循环体内使用continue和break语句,作用相同。C)只能在循环体内和switch体内使用break语句。D)continue语句的作用是结束整个循环的执行。8. 如果有定义:int x=0,s=0; 则下面程序段的执行结果是( )。 while(!x != 0) s+=x+; printf(“%d”,s);A)1B)0 C)无限循环 D)控制表达式非法,无法编译9. 下面各语句中,能正确进行字符串操作的语句是( )。A)char a10='A','B','C','D','0' B)char a10; a="ABCDE"C)char *p; *p="ABCDE" D)char *s; scanf(“%s”, s);10. 以下能对数组value进行正确初始化的语句是( )。A)int value2 =1,1,2,2;B)int value 3=1,3,4,5,6;C)int value23=1,2,3,4,5,6; D)int value 3=1,4,6,;11. 函数fun和实参数组的声明形式为:void fun(char ch,float x); float a5;以下对函数的调用语句中,正确的是( )。 A)fun("a",a); B)t=fun('D',a); C)fun('65',2.8); D)fun(32,a5);12. 设有定义int a33;和函数调用语句sort(a,3); 则正确的函数声明是( )。A)void sort(int a,n); B)void sort(int a,int n);C)void sort(int a3,int n); D)void sort(int a3,n);13. 有函数定义:int func(int *p),x和y是int型变量,则( )是正确的调用。 A)y=func(x);   B)func(x); C)func()=x;  D)y=func(&x);14. 已知书籍结构定义如下,则对结构变量bk的正确赋值是( )。struct BOOK struct int year,month,day; publish; bk;A)bk.year=1998; bk.month=11; bk.day=11;B)publish.year=1998; publish.month=11; publish.day=11;C)year=1998; month=11; day=11;D)bk.publish.year=1998; bk.publish.month=11; bk.publish.day=11;15. 对于以下定义,能打印出字母h的语句是( )。 struct person char title20; int code; ; struct person book5="Physics",17,"Math",18,"English",20,"History",18;A)printf("%c",book0.title1); B)printf("%c",book1.title4);C)printf("%c",book2.title7); D)printf("%c",book3.title6);二、判断题(共10小题,每小题2分,共20分)1. C语言规定,在一个源程序中,main函数的位置必须在最开始。2. 表达式s1= =s2可以用来判断字符串s1与字符串s2是否相等。3. C语言中一个变量只能定义一次。4. C语言本身没有输入输出语句。5. 函数调用时,函数名必须与所调用的函数名字完全一致。6. 对结构变量s中成员age的引用可以采用表达式s.age。7. 在C语言中,形参是虚拟的,不占存储单元。8. 全局变量和静态变量的初值是在编译时指定的。9. 语句fp=fopen("a:aa.dat","ab");中变量fp的正确定义为:FILE *fp;10. 若有定义:int a45; 则表达式a+3表示a数组第3行的首地址。三、读程序写出程序运行结果(共4小题,每小题5分,共20分)1.void main( ) /输入:abcAxyz回车char ch=0; while(ch=getchar()!='n')if(ch>='a'&&ch<='z')ch-=30; if(ch>'Z')ch-=26; printf("%cn",ch);2.void main( ) char *name4 ="Tom","Mike","John","Wang", *p=name0; int i; for(i=0;i<4;p=name+i) printf("%c",*p);3.int fun(int arr,int m,int n)int i,j,s=0;for(i=0;i<m;i=i+m-1)for(j=0;j<n;j+) s+=arri*n+j;for(j=0;i<n;j=j+n-1)for(i=1;i<m-1;i+) s+=arri*n+j;return s;void main(void )int t,a34=5,3,6,8,-2,-4,-7,9,1,0,7,2;t=fun(a0,3,4);printf("t=%dn",t);4.void move(int *arr,int n,int m) int *p,array_end=*(arr+n-1);if(m<=0) return ; for(p=arr+n-1;p>arr;p-) *p=*(p-1); *arr=array_end; m-; move(arr,n,m);void main() int i,number10=1,3,5,7,9,2,4,6,8,10; move(number,10,8);for(i=0;i<10;i+) printf("%d",numberi); 四、程序填空题(共15个空,每空2分,共30分)1以下程序为输出所有的水仙花数(3位数中各位上数字的立方和等于三位数自身)。 void main(void) int i,s,n,t  for ( i=100 ; i<1000 ; i+ ) s = ; n = i  while ( ) t=n%10; s=s- ; ; if ( ) printf(%d, i ); 2. 下面排序算法的思想是:第一趟比较将最小的元素放在r0中,最大的元素放在rn-1中,第二趟比较将次小的放在r1中,将次大的放在rn-2中,,依次下去,直到待排序列为递增序。void sort(int r,int n) int i=0,j,t,min,max;while( ) min=max=i; for (j=i+1; ;+j) if( ) min=j; else if(rj>rmax) max=j; if( ) t=rmin; rmin=ri; ri=t; if(max!=n-i-1) if( ) t=rmin;rmin=rn-i-1; rn-i-1=t; else t=rmax; rmax=rn-i-1; rn-i-1=t; i+;/sort3. 下面函数用来删除结点类型为intnode的链表中结点数据域值为x的一个结点。struct intnode int data; struct intnode *next; ;int deletenode( , int x) struct intnode *p=*headp, *last; while( ) last=p; ; if( ) if(p=*headp) *headp=p->next; else ; free(p) ; return(1);else return(0);五、程序设计题(共4小题,前2小题各10分,后2小题各15分,共50分)1. 设计程序:从键盘输入一个三位整数,然后将该三位整数的各位数字重新排列,输出重新排列后的最大的三位整数。2. 在数组a中含有n个整数,函数fun的功能是找出数组a中没有出现的最小正整数。例如,数组a为-8,5,1,3,则未出现的最小正整数是2;又如数组a为1,3,2,则未出现的最小正整数是4。请采用尽量高效的算法完成函数fun,其返回值就是未出现的最小正整数。int fun(int a, int n)3设计程序完成:在主函数中首先输入平面上N(由键盘输入)个点的坐标(x,y),接着调用Distance函数计算各点与原点的距离,然后调用Sort函数对所有点按与原点的距离从大到小排序,最后调用函数Output输出排序后各点的坐标及距原点的距离。平面上的点用结构体Point实现。各函数的声明如下: void Distance(struct Point p, int n); / 计算n个点与原点的距离 void Sort(struct Point p, int n); /排序 void Output(struct Point p, int n); /输出4. 二叉排序树采用二叉链表存储,结点包含左孩子指针left,右孩子指针right和整数data其定义为:struct Node int data; struct node *left, *right; ;请设计如下非递归算法SortTree按照从大到小输出非空二叉排序树所有结点的数据。 void SortTree(struct Node *root)答案一、选择题(共15小题,每小题2分,共30分)BDCBA DCBAC BCDDA二、判断题(共10小题,每小题2分,共20分) 三、读程序写出程序运行结果(共4小题,每小题5分,共20分)1.CDEAZAB 2.TMJW 3.t=32 4.57924681013四、程序填空题(共15个空,每空2分,共30分)1.I n t*t*t n=n/10 i=02.i<n-i-1 j<n-i rj<rmin min!=i max=i3.struct intnode *headp p&&p->data!=x;p=p->next p last->next=p->next五、程序设计题(共4小题,前2小题各10分,后2小题各15分,共50分)1.#include<stdio.h>int main()int n,a,b,c,t,m;scanf("%d",&n);a=n/100; b=n/10%10; c=n%10;if(a<b) t=a; a=b; b=t; if(a<c) t=a; a=c; c=t; if(b<c) t=b; b=c; c=t; m=a*100+b*10+c;printf("%dn",m);return 0;2.int fun(int a,int n)int i,*b;b=(int *)malloc(n*sizeof(int);for(i=0;i<n;i+) bi=0;for(i=0;i<n;i+) if(ai>0&&ai<=n) bai-1=1; for(i=0;i<n;i+) if(bi=0) break;free(b);return i+1;3.#include<stdio.h>#include<math.h>struct Pointdouble x,y,dis; ;void Distance(struct Point p,int n)int i;for(i=0;i<n;i+) pi.dis=sqrt(pi.x*pi.x+pi.y*pi.y);void Sort(struct Point p,int n)int i,j;struct Point t;for(i=0;i<n-1;i+)for(j=0;j<n-i-1;j+)if(pi.dis<pi.dis) t=pj; pj=pj+1; pj+1=t; void Output(struct Point p,int n)int i;for(i=0;i<n;i+) printf("(%lf,%lf) dis=%lfn",pi.x,pi.y,pi.dis);int main()struct Point p1000;int n,i;scanf("%d",&n);for(i=0;i<n;i+) scanf("%lf%lf",&pi.x,&pi.y);Distance(p,n);Sort(p,n);Output(p,n);return 0;4.void SortTree(struct Node *root)struct Node *stack1000,*p=root;int top=0;while(p)stacktop+=p;p=p->right;while(top>0)p=stack-top;printf("%d",p->data);p=p->leftt;while(p)stacktop+=p;p=p->right;

    注意事项

    本文(2019年湖北武汉科技大学C语言程序设计考研真题及答案.docx)为本站会员(wo****o)主动上传,淘文阁 - 分享文档赚钱的网站仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知淘文阁 - 分享文档赚钱的网站(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    关于淘文阁 - 版权申诉 - 用户使用规则 - 积分规则 - 联系我们

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

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

    收起
    展开