版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
2022年湖南工商大学公共课《C语言》科目期末试卷A(有答案)一、填空题1、设x的二进制数是11001101,若想通过x&y运算使x中的低4位不变,高4位清零,则y的二进制数是_______。2、在C语言中,输入操作是由库函数________完成的,输出操作是由库函数________完成的。3、C语言的源程序必须通过【】和【】后,才能被计算机执行。4、C语言中的标识符可分为关键字、_______和_______3类。5、若x和n均是int型变量,且x的初值为12,n的初值为5,则执行表达式x%=(n%=2)后x的值为_______。6、若有以下定义和语句:int*p[3],a[6],i;for(i=0;i<3;i++)p[i]=8&a[2*i];则*p[0]引用的是a数组元素_______,*(p[1]+1)引用的是a数组元素_______。7、函数swap(intx,inty)可完成对x和y值的交换。在运行调用函数中的如下语句后,a[0]和a[1]的值分别为_______,原因是_______。a[o]=1;a[1]=2;swap(a[o],a[1]);8、为建立如图10-5所示的存储结构(即每个结点两个域,data是数据域,next是指向结点的指针域),请将定义补充完整。structs{chardata;_______}node;9、若有以下定义和语句,为使变量c1得到字符’A',变量c2得到字符’B’,正确的输入形式是_______。charcl,c2;scanf("%4c%4c",&cl,8&c2);10、字符串"ab\n\\012\\\"”的长度是_______。二、选择题11、下面4个选项中,是合法整型常量的选项是()。A.160B.-0xcdfC.-01D.-0x48a-0xffff01a9860122e50110xe06680x12、sizeof(float)是()。A.一个双精度型表达式B.一个整型表达式C.一种函数调用D.一个不合法的表达式13、已知ch是字符型变量,下面不正确的赋值语句是()A.ch='a+b';B.ch='\o';C.ch='7'+'9';D.ch=5+9;14、设x、y均为float型变量,则以下不合法的赋值语句()。A.++x;B.yy=(x%2)/10;C.x*=y+8;D.x=y=0;15、有下面的程序段:chara[3],b[]="China”;a=b;printf("%s",A.;则()。A.运行后将输出ChinaB.运行后将输出ChC.运行后将输出ChiD.编译出错16、C语言规定:在一个源程序中,main函数的位置()A.必须在最开始B.必须在系统调用的库函数的后面C.可以任意D.必须在最后17、下面程序段的运行结果是()。a=1;b=2;c=2;while(a<b<C.{t=a;a=b;b=t;c—一;}printf("%d,%d,%d",a,b,C.;A.1,2,0B.2,1,0C.1,2,1D.2,1,118、以下程序有语法性错误,有关错误原因的正确说法是()。#include<stdio.h>intmain(){intG=5,k;voidprt_char();-----k=prt_char(G);---}A.语句voidprt_char();有错,它是函数调用语句,不能用void说明B.变量名不能使用大写字母C.函数说明和函数调用语句之间有矛盾D.函数名不能使用下划线19、执行下列程序后编译将出现错误,错误是()。#include<stdio.h>intmain(){chara,b,c,*d;a=\V;b='\xbe';c=\0xab";d="\0127";printf("%c%c%c%c\n",a,b,c,*D.;return(0);}A.只有a=\';语句不正确B.b='\xbc';语句不正确C.d="\0127";语句不正确D.a='\V;和c=\0xab";语句都不正确20、下面程序段的运行结果是()。char*s="abcde";s+=2;printf("%d',s);A.cdeB.字符cC.字符c的地址D.无确定的输出结果21、以下程序的运行结果是()。#include<stdio.h>intf(intx,inty){return(y-x)*x;}intmain(){inta=3,b=4,c=5,d;d=f(f(a,C.,f(a,B.+f(c,B.);printf("%d\n",D.;return(0);}A.-48B.58C.-58D.4722、当运行以下程序时,从键盘输入:aabb<回车>ccdd<回车>则下面程序的运行结果是()。#include<stdio.h>intmain(){charal[5],a2[5],a3[5],a4[5];scanf("%s%s",al,a2);gets(a3);gets(a4);puts(a1);puts(a2);puts(a3);puts(a4);return0;}A)aaB)aaC)aaD)aabbbbbbbbccccccddddccddddee23、下面程序的功能是将已按升序排好序的两个字符串a和b中的字符按升序归并到字符串c中。请选择填空。#include<stdio.h>#include<string.h>intmain(){chara[]="acegikm",b[]="bdfhjlnpq";charc[80],*p;inti=0,j=0,k=0;while(a[i]!=\o'&&b[j]!='\o'){if(a[i]<b[j]){c[k]=a[i];i++}else{【】}k++;}c[k]='\o';if(a[i]=='\0')p=b+j;elsep=a+i;strcat(c,p);puts(C.;return0;}A.c[k]=a[i];i++;B.c[k]=a[j];i++;C.c[k]=a[i];j++;D.c[k]=a[j];j++;24、以下程序的输出是()。#include<stdio.h>intmain(){intx=2,y=-1,z=2;if(x<y)if(y<0)z=0;elsez+=1;printf("%d\n",z);return0;3B.2C.1D.025、下面程序的运行结果是()。#include<stdio.h>intmain(){intnum=0;while(num<=2){num++;printf("%d\n",num);return0;}A)1B)1,2C)1,2,3D)1,2,3,4三、读程序填空26、以下程序的输出结果为_______。#include<stdio.h>intmain(){charc='x';printf("c:dec=%d,oct=%o,hex=%x,ASCIl=%c\n",c,c,c,c);return0;}27、以下printf语句中的负号的作用是_______,该程序的输出结果是_______。#include<stdio.h>intmain(){intx=12;doublea=3.1415926;printf("%6d##\n",x);printf("%一6d##\n",x);printf("%14.101f##\n",a);printf("%-14.101f##\n",a);return0;}28、将以下含有switch语句的程序段改写成对应的含有非嵌套if语句的程序段。请填空。含有switch语句的程序段:Intx,y,m;y=(int)(x/10);switch(y){case10:m=5;break;case9:m=4;break;case8:m=3;break;case7:m=2;break;case6;m=1;break;default:m=0;}含有非嵌套if语句的程序段:intx,m;if(_______)m=5;if(x<100)&&(x=90))m=4;if(x<90)&&(x>=80))m=3;if(×<80)&&(x>=70))m=2;if(x<70)&&(x=60))m=1;if(_______)_______;29、下面程序的功能是:根据表4-3中给定的函数关系,对输入的每个x值计算出相应的y值。请填空。函数关系xy2<x≤10x(x+2)-1<x≤22xx≤-1x-1#include<stdio.h>intmain(){intx,y;scanf("%d",&x);if(_______)y=x*(x+2);elseif(_______)y=2*x;elseif(x<=-1)y=x-1;else(_______);if(y!=-1)printf("%d",y);elseprintf("error");return0;}30、下面程序的功能是统计用数字0~9可以组成多少个没有重复的3位偶数。请填空。#include<stdio.h>intmain(){intn=0,i,j,k;for(i=1;i<=9;i++)for(k=0;k<=8;_______)if(k!=i)for(j=0;j<=9;j++)if(_______)n++;printf("n=%d\n",n);return0;}31、以下程序的运行结果是_______。#include<stdio.h>intmax(intx,inty);intmain(){inta=1,b=2,c;c=max(a,b);printf("maxis%d\n",c);return(0);}intmax(intx,inty){intz;z=(x>y)?x:y;return(z);}32、下面程序段的功能是将字符串a中下标值为偶数的元素由小到大排序,其他元素不变。请填空。chara[]="labchmfye",t;inti,j;for(i=0;i<7;i+=2)for(j=i+2;j<9;_______)if(_______){t=a[i];a[i]=a[j];a[j]=t;j++;}puts(a);33、若有以下输入(口表示空格),则下面程序的运行结果是_______。15口12口4口8口20口9口2口6口5口12<回车>#include<stdio.h>intmain(){inta[10],i,j,k,t;printf("Enter10integers:\n");for(i=0;i<10;i++)scanf("%d",a+i);for(j=0;j<9;j++){k=j;for(i=j+1;i<10;i++)if(*(a+i)>*(a+k))k=i;t=a[j];*(a+j)=*(a+k);*(a+k)=t;}for(i=0;i<10;i++)printf((i%5)?"%4d":"\n%4d",*(a+i));printf("\n");return(0);}四、编程题34、以下函数fun的功能是从3个红球(x)、5个白球(y)、6个黑球(z)中任意取出8个,且其中必须要有红球和白球。请编写函数,输出所有方案。#include<stdio.h>intfun(intx,inty,intz){inti,j,k,sum=0;(请在此处编写函数)}intmain(){intsum,x=3,y=5,z=6;sum=fun(x,y,z);printf("sum=%4d\n",sum);return(0);}35、从键盘输入一个字符串a,并在a串中的最大元素后边插入字符串b(b[]="ab")。试编程。
参考答案一、填空题1、000011112、【1】scanf【2】printf3、【1】编译【2】连接4、【1】用户标识符【2】预定义标识符5、06、【1】a[0]【2】a[3]7、a[0]=1a[1]=2【2】单向值传递,不能返回交换后的值。8、structs*next;9、A囗囗囗B囗囗囗<回车>10、9二、选择题11、A12、B13、A14、B15、D16、C17、A18、C19、D20、C21、A22、A23、D24、B25、C三、读程序填空26、c:dec=120,o
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025上半年教资幼儿园综合素质真题及答案解析
- 2025消防安全知识培训试题及答案
- 2025医疗器械法律法规相关知识培训试题+答案
- 2025中医助理医师考试病例分析试题及答案
- 2025中小学生航空航天科普知识竞赛试题库及答案
- 2026年电子评标能力模拟题(含答案)
- 2026年人工智能培训师试题及答案
- 高中英语教资面试听力专项真题演练题库及解析
- 医疗服务模式创新与患者体验提升
- 西南农大研究生就业分析
- 市政道路工程监理实施细则
- 2026 年妇科宫腔镜手术围手术期护理课件
- 2026年北京市中考英语试卷真题及答案详解(精校打印版)
- 2026年家禽屠宰加工工协同作业考核试卷及答案
- 社会体育导论 课件全套 0社会体育导论课程介绍-10社会体育指导实践
- 2026年秋人美版(新教材)小学美术四年级上册(全册)教学设计(附目录p153)
- 2026年全科医生转岗培训考试(理论考核)题库及答案(辽宁省)
- 2026年中级消防设施操作员(监控方向)考试题库(附答案)
- 2026年平安岗前培训测试题及答案
- 电梯使用维护安全管理培训课件
- 高级职称晋升面审消化内科(副)主任医师答辩专业技术问答题
评论
0/150
提交评论