版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
2026年湖北工业大学公共课《C语言》科目期末试卷B(有答案)一、填空题1、假设变量a和b均为整型,以下语句可以不借助任何变量把a、b中的值进行交换。请填空。a+=_______;b=a-_______;a-=_______;2、C语言源程序文件的后缀是;经过编译后,生成文件的后缀是;经过连接后,生成文件的后缀是3、一个C语言源程序由若干函数组成,其中至少应含有一个________4、若x和a均是int型变量,则执行表达式(1)后的x值为_______,执行表达式(2)后的x值为_______。(1)x=(a=4,6*2)(2)x=a=4,6*25、假设变量a、b均为整型,则表达式(a=2,b=5,a++,b++,a+b)的值为_______。6、若x=0123,则表达式(5+(int)(x))&(~2)的值是_______。7、执行下面程序段后,k的值是_______。k=1;n=263;do{k*=n%10;n/=10;}while(n);8、若有定义:doublex[3][5];,则x数组中行下标的下限为_______,列下标的上限为_______。9、下面程序段的运行结果是_______。inti=5;charc[6]="abcd";do{c[i]=c[i-1];}while(--i>0);puts(c);10、以下程序的运行结果是_______。#include<stdio.h>intmain(){chars[]="ab\'cdefg\",*p=s+1;printf("%c”,*(p++));printf("%s",p+2);return(0);}二、选择题11、下面4个选项中,是非法常量的选项是()。12、sizeof(float)是()。A.一个双精度型表达式B.一个整型表达式C.一种函数调用D.一个不合法的表达式13、以下叙述不正确的是()A.一个C源程序可由一个或多个函数组成B.一个C源程序必须包含一个main函数C.C程序的基本组成单位是函数D.在C程序中,注释说明只能位于一条语句的后面14、以下叙述正确的是A.在C程序中,main函数必须位于程序的最前面B.C程序的每行中只能写一条语句C.C语言本身没有输入输出语句D.在对一个C程序进行编译的过程中,可以发现注释中的拼写错误15、以下对二维数组a的正确说明是()。A.inta[3][];B.floata(3,4);C.doublea[][4];D.floata(3)(4);16、设有以下程序:#include<stdio.h>intmain(){inta=201,b=012;printf("%2d,%2d\n",a,B.;return0;.}程序执行后的输出结果是()。A.01,12B.201,10C.01,10D.20,0117、若有说明语句,则以下不正确的叙述是()。chara[]="Itismine";char*p="Itismine";A.a+1表示的是字符t所在存储单元的地址B.p指向另外的字符串时,字符串的长度不受限制C.p变量中存放的地址值可以改变D.a中只能存放10个字符18、若用数组名作为函数调用的实参,则传递给形参的是()A.数组的首地址B.数组第一个元素的值C.数组中全部元素的值D.数组元素的个数19、以下描述中正确的是()A.while、do-while、for循环中的循环体语句都至少被执行一次B.do-while循环中,while(表达式)后面的分号可以省略C.while循环体中,一定要有能使while后面表达式的值变为“假”的操作D.do-while循环中,根据情况可以省略while20、设有程序段:intk=10;while(k=0)k=k-1;则下面描述中正确的是()。A.while循环执行10次B.循环是无限循环C.循环体语句一次也不执行D.循环体语句执行一次21、当a=1、b=3、c=5、d=4时,执行以下程序段后x的值是()。if(a<B.if(c<D.x=l;elseif(a<C.if(b<D.x=2;elsex=3;elsex=6;elsex=7;A.1B.2C.3D.622、下面程序段的运行结果是()。inta[6],i;for(i=1;i<6;i++){a[i]=9*(i-2+4*(i>3))%5;printf("%3d",a[i]);}A)-40404B)-40403C)-40443D)-4044023、有已排好序的字符串a,下面的程序是将字符串s中的每个字符按a中元素的规律插入到a中。请选择填空。#include<stdio.h>intmain(){chara[20]="cehikngtw",s[]="fbla";inti,k,j;for(k=0;s[k]!=\0';k++){j=0;while(s[k]>=a[j]&&a[]!=\0)j++;for(i=strlen(a);i>=j;i--)[2];a[j]=s[k];puts(a);return0;}A)a[i]=a[i+1]B)a[i+1]=a[i]C)a[i]=a[i-1]D)a[i-1]=a[i]24、折半查找法的思路是:先确定待查元素的范围,将其分成两半,然后测试位于中间点元素的值。如果该待查元素的值大于中间点元素,就缩小待查范围,只测试中点之后的元素;反之,测试中点之前的元素,测试方法同前。函数binary的作用是应用折半查找法从存有10个有序整数的a数组中对关键字m进行查找,若找到,返回其下标值;反之,返回-1。请选择填空。intbinary(inta[10],intm){intlow=0,high=9,mid;while(low<=high){mid=(low+high)/2;if(m<a[mid])high=mid-1;elseif(m>a[mid])【】;elsereturn(miD.;return(一1);}A.high=mid-1B.low=mid+1C.high=mid+1D.low=mid-125、下面程序的运行结果是()。#include<stdio.h>intmain(){inti,j,x=0;for(i=0;i<2;i++){x++;for(j=0;j<=3;j++){if(j%2)continue;x++;}x++}printf("x=%d\n",x);return0;}A)x=4B)x=8C)x=6D)x=12三、读程序填空26、以下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;}27、以下程序的输出结果是_______。#include<stdio.h>intmain(){inta=252;printf("a=%oa=%#o\n",a,a);printf("a=%xa=%#x\n",a,a);return0;}28、以下程序的运行结果是_______。#include<stdio.h>intfunc(inta[][3]intmain(){inta[3][3]={1,3,5,7,9,11,13,15,17};intsum;sum=func(a);printf("\nsum=%d\n",sum);return(0);}intfunc(inta[][3]){inti,j,sum=0;for(i=0;i<3;i++)for(j=0;j<3;j++){a[i][j]=i+j;if(i==j)sum=sum+a[i][j];}return(sum);}29、以下search函数的功能是利用顺序查找法从数组a的10个元素中对关键字m进行查找。顺序查找法的思路是:从第一个元素开始,从前向后依次与关键字比较,直到找到此元素或查找到数组尾部时结束。若找到,则返回此元素的下标;若仍未找到,则返回值一1。请填空。#include<stdio.h>intsearch(inta[10],intm){inti;for(i=0;i<=9;i++)if(_______)return(i);return(-1);intmain(){inta[10],m,i,no;no=search(_______);if(_______)printf("\nOKFOUND!%d",no+1);elseprintf("\nSorryNotFound!");return(0);}30、下面程序段的运行结果是_______。i=1;a=0;s=1;do{a=a+s*i;s=-s;i++;}while(i<=10);printf("a=%d",a);31、下面程序的运行结果是_______。#include<stdio.h>intmain(){chars[]="ABCCDA";intk;charc;for(k=1;(c=s[k])!='\0';k++){switch(c)case'A':putchar('%');continue;case'B’:++k;break;default:putchar('*’);case'C':putchar('&');continue;}putchar(‘#’);}return0;}32、以下程序的功能是:输入一个字符,如果它是一个大写字母,则把它变成小写字母;如果它是一个小写字母,则把它变成大写字母;其他字符不变。请填空。#include<stdio.h>intmain(){charch;scanf("%c",8&.ch);if(_______)ch=ch+32;elseif(ch>='a′8.&ch<='z′)_______;printf("%c",ch);return0;}33、以下程序的输出结果是_______。#include<stdio.h>intmain(){char*str[]={"ENGLISH","MATH","MUSIC","PHYSICS","CHEMISTRY"};char**q;intnum;q=str;for(num=1;num<5;num+=2)printf("%s\n",*(q++));return(0);}四、编程题34、从键盘输入一个字符串,然后按照下面要求输出一个新字符串。新串是在原串中每两个字符之间插入一个空格,如原串为abcd,则新串为a□b□c□d(□代表空格)。要求在函数insert中完成新串的产生;并在函数中完成所有相应的输入和输出。35、数组a包括10个整数,把a中所有的后项除以前项之商取整后存入数组b,并按每行3个元素的格式输出数组b。试编程。
参考答案一、填空题1、【1】b【2】b【3】b2、【1】.c【2】.obj【3】.exe3、主函数(或main函数)4、【1】12【2】45、96、0130或88或0x587、368、【1】0【2】49、aabcd10、'bdefg'二、选择题11、A12、B13、D14、C15、C16、B17、D18、A19、C20、C21、B22、C23、B24、C25、A三、读程序填空26、【1】输出数据左对齐【2】囗囗囗012##12口囗囗囗##囗囗3.141592600##3.141592600囗囗##(注:答案中的囗代表空格)27、a=374囗囗a=0374a=fc囗囗a=0xfc(注:答案中的囗代表空格)28、sum=629、【1】a[i]==m【2】a,m【3】no>=030、a=-531、#&*&%32、【1】ch>='A'&&.ch<='z'【2】ch=ch-3233、ENGLISHMATH四、编程题34、#include<stdio.h>#include<string.h>voidinsert(char*p);intmain(){charstr[80];printf("Inputastring:\n");gets(str);insert(str);printf("Resultis:%s\n",str);
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- T/SDECC 006-2025氢能服务区数据采集规范
- 零售店长服务流程评估表
- 沈阳市于洪区2025-2026学年中考联考数学试卷含解析
- 通信行业网络工程师网络维护效率及质量绩效评估表
- 软式内镜清洗消毒技术培训考核试题及答案
- T/NAHIEM 164-2026医院介入中心(导管室)建设与设备配置
- 产品创新设计与开发流程指导手册
- 云南省部分学校2027届高三上学期9月月考数学试卷(含答案)
- 金融投资行业投资顾问资产配置与风险控制绩效考核表
- 河南省豫东名校联考2026-2027学年高二上学期过程性作业评价数学试卷(人教A版)(无答案)
- 医疗健康管理与慢病防控
- 2026河北机关事业单位工人技能等级考试(汽车驾驶员·高级)历年参考题库含答案详解2卷
- 正压送风口阀体损坏更换安装调试方案
- 第二届重庆市市场监管系统执法办案电子数据取证技能大竞赛赛完整试题
- 中考物理电路设计与电路故障分析三年2023-2025中考真题分类汇编解析版
- 煤炭销售部管理制度(3篇)
- 中海大海洋工程环境学课件03波浪流体力学理论
- 2025年检验检测机构授权签字人考核试题(含答案)
- 十二指肠营养管
- 跟腱断裂的术后护理
- 物料预警管理办法
评论
0/150
提交评论