版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
2026年成都大学公共课《C语言》科目期末试卷A(有答案)一、填空题1、请读程序段:unsigneda=16;printf("%d,%d,%d\n",a>>2,a=a>>2,a);以上程序段的输出结果是_______。2、在C语言中,输入操作是由库函数________完成的,输出操作是由库函数________完成的。3、一个C语言源程序由若干函数组成,其中至少应含有一个________4、把以下多项式写成只含7次乘法运算,其余皆为加、减运算的C语言表达式为_______。5x7+3x6-4x5+2x1+x3-6x2+x+105、若有定义语句:charc='\010';则变量c中包含的字符个数为_______。6、下面程序段的运行结果是_______。chara[]="12345",*p;ints=0;for(p=a;*p!=\0';p++)s=10*s+*p-'o';printf("%d\n",s);7、鸡兔共有30只,脚共有90只,下面程序段是计算鸡兔各有多少只。请填空。for(x=0;x<=30;x++){y=30一x;if(_______)printf("%d,%d\n",x,y);}8、为建立如图10-5所示的存储结构(即每个结点两个域,data是数据域,next是指向结点的指针域),请将定义补充完整。structs{chardata;_______}node;9、假设变量a和b均为整型,以下语句可以不借助任何变量把a、b中的值进行交换。请填空。a+=_______;b=a-_______;a-=_______;10、下面程序wdm的运行结果是_______。inti,x[10]={2,3,0,3,0,2,3,2,1,3},y[4]={0};for(i=0;i<10;i++)y[x[i]]++;printf("%d\n",y[3]);二、选择题11、在C语言中,char型数据在内存中的存储形式是()。A.补码B.反码C.原码D.ASCII码12、设有说明语句:charw;intx;floaty;doublez;则表达式w*x+z-y值的数据类型为()。A.float.B.charC.intD.double13、设x、y和z均为int型变量,则执行语句x=(y=(z=10)+5)-5;后,x、y和z的值是()。A.x=10B.x=10C.x=10D.x=10y=15y=10y=10y=5z=10z=10z=15z=1014、设有如下程序:#include<stdio.h>intmain(){charch1='A',ch2='a';printf("%c\n",(chl,ch2));return0;}则以下叙述中正确的是()。A.程序的输出结果为大写字母AB.程序的输出结果为小写字母aC.运行时产生错误信息D.格式说明符的个数少于输出项的个数,编译出错15、以下对二维数组a的正确说明是()。A.inta[3][];B.floata(3,4);C.doublea[][4];D.floata(3)(4);16、以下叙述正确的是A.在C程序中,main函数必须位于程序的最前面B.C程序的每行中只能写一条语句C.C语言本身没有输入输出语句D.在对一个C程序进行编译的过程中,可以发现注释中的拼写错误17、对for(表达式1;;表达式3)可理解为()。A.for(表达式1;0;表达式3)B.for(表达式1;1;表达式3)C.for(表达式1;表达式1;表达式3)D.for(表达式1;表达式3;表达式3)18、C语言规定,简单变量作为实参时,它和对应形参之间的数据传递方式是()A.地址传递B.单向值传递C.由实参传给形参,再由形参传回给实参D.由用户指定传递方式19、main函数的正确说明形式是()。A.intmain(intargc,char*argv)B.intmain(intabc,char*xabv)C.intmain(intargc,charargv)D.intmain(intc,charv[])20、以下与库函数strcpy(char*p1,char*p2)功能不相等的程序段是()。voidstrcpyl(charxpl,char*p2){while((*p1++=*p2++)!=\0');}B)voidstrcpy1(char*pl,char*p2){while((*pl=*p2)!=\0){p1++;p2++;}}C)voidstrcpy1(char*pl,char*p2){while(*p2)*p1++=*p2++;}D)voidtrcpyl(char*p1,char*p2){while((*pl++=*p2++);)*p='\0';}21、以下程序的正确运行结果是()。#include<stdio.h>intf(intA.;intmain(){inta=2,i;for(i=0;i<3;i++)printf("%4d",f(A.);return(0);}intf(intA.{intb=0;staticintc=3;b++;c++;return(a+b+C.;}A.777B.71013C.7911D.78922、下面程序段的运行结果是()。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、下面程序段的运行结果是()。chara[7]="abcdef";charb[4]="ABC";strcpy(a,B.;printf("%c",a[5]);A.口B.\0C.eD.f(其中口表示1个空格)24、以下程序的输出是()。#include<stdio.h>intmain(){intx=1;if(x=2)printf("OK");elseif(x<2)printf("%d\n",x);elseprintf("Quit");return0;}A.OKB.QuitC.1D.无输出结果25、下面程序的功能是将从键盘输入的偶数写成两个素数之和。请选择填空()#include<stdio.h>#include<math.h>intmain(){inta,b,c,d;scanf("%d",&.A.;for(b=3;b<=a/2;b+=2){for(c=2;c<=sqrt(B.;c++)if(b%c==0)break;if(c>sqrt(B.)d=【】;elsebreak;for(c=2;c<=sqrt(D.;c++)if(d%c==0)break;if(c>sqrt(D.)printf("%d=%d+%d\n",a,b,D.;}return0;}A.a+bB.a-bC.a*bD.a/b三、读程序填空26、以下程序的运行结果是_______。#include<stdio.h>intmain(){intm=177;printf("%o\n",m);return0;}27、有以下程序:#include<stdio.h>intmain(){intk=0;charc1='a',c2='b';scanf("%d%c%c”,&k,&c1,&c2);printf("%d,%c,%c\n",k,c1,c2);return0;}若运行时从键盘输入:55AB<回车>,则输出结果是_______。28、为了使以下程序的输出结果为t=4,输入值a和b应满足的条件是_______。#include<stdio.h>intmain(){ints,t,a,b;scanf("%d,%d”,&a,&b);s=1;t=1;if(a>0)s=s+1;if(a>b)t=s+t;elseif(a==b)t=5;elset=2*s;printf("s=%d,t=%d",s,t);return0;}29、以下程序段的功能是:针对输入的截止日期(年一yend;月一mend;日—dend)和出生日期(yman,mman,dman),计算出某人的实际年龄。请填空。intyend,mend,dend,yman,mman,dman,age;age=yend-yman;if(mend_______mman)age--;elseif(mend_______mman&&dend_______dman)age--30、下面程序的功能是用辗转相除法求两个正整数的最大公约数。请填空。#include<stdio.h>intmain(){intr,m,n;scanf("%d%d",&m,&n);if(m<n){_______};r=m%n;while(r){m=n;n=r;r=_______;}printf("%d\n",n);return0;}31、以下函数fun的功能是:将输入的大写字母,先转换为与其对应的小写字母,然后再转换成该小写字母后的第3个字母,返回后输出。例如,若输入的字母为E,输出的字母则为h;若输入的字母为Y,输出的字母则为b。请填空。#include<stdio.h>#include<string.h>charfun(charc){!c=_______:if(c>=1a1&&c<='w')c=c+3;elseif(c>='x'/&&c<='z')_______:returnc;}intmain(){charc;c=getchar();c=fun(e);putchar(c);return(0);}32、下面程序的运行结果是_______。#include<stdio.h>intmain(){inta[10]={7,3,5,2,9,1,0,6,8,4},i=0,j=9,t;while(i<j){t=a[i];a[i]=a[j];a[j]=t;i+=2;j-=2;}for(i=0;i<10:i+=2)printf("%d",a[i]):return0;}33、以下程序通过指针数组p和一维数组a构成如下所示的二维数组的左下半三角结构,然后输出。请填空。#include<stdio.h>#defineM5#defineNUM(M+1)x(M)/2intmain()inta[NUM],*p[M],i,j,index,n;for(i=0;i<M;i++){index=i*(i+1)/2;p[i]=_______;}for(i=0;i<M;i++){n=1;for(j=0;j<=i;j++){p[i][j]=_______;n++;}printf("TheOutput:\n");for(i=0;i<M;i++){for(j=0;_______;j++)printf("%4d",p[i][j]);printf("\n");}return(0);}四、编程题34、编写程序,统计d输入的命令行中第二个参数所包含的英文字符个数。35、编写程序,将字符串computer赋给一个字符数组,然后从第一个字母开始间隔地输出该串,请用指针完成。
参考答案一、填空题1、1,4,162、【1】scanf【2】printf3、主函数(或main函数)4、X*(X*(X*(X*(X*(X*(5*X+3)一4)+2)+1)-6)+1)+105、16、123457、2*x+4*y==908、structs*next;9、【1】b【2】b【3】b10、4二、选择题11、D12、D13、A14、B15、C16、C17、B18、B19、B20、D21、B22、C23、D24、A25、B三、读程序填空26、26127、55,,A28、0<a<b29、【1】<【2】==【3】<30、【1】r=m,m=n,n=r【2】m%n31、【1】tolower(c)或c=c+32【2】c=c-2332、4610833、【1】8.a[index]【2】i*M+n【3】j<=i四、编程题34、#include<stdio.h>#include<ctype.h
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026年财产险精算助理全真模拟题及答案详解
- 标准护理品管圈
- 康复科口腔护理
- 一过性滑膜炎护理
- 2026事业单位工勤技能-上海-上海不动产测绘员一级(高级技师)历年参考题库含答案详解
- 2026主任医师(正高)-口腔医学(正高)021历年题库含答案详解
- 2026临床医学期末复习-基础医学综合(本科定向)历年题库含答案详解
- 2026中级银行从业资格(官方)-个人理财2参考试题库历年考点答案详解
- 2026中级卫生职称-主治医师-整形外科学(中级)代码:324历年参考题库含答案详解
- 2026中国质量协会质量专业能力考试(六西格玛黄带)历年参考题库含答案详解
- 2025年中国养老地产行业市场研究报告:CCRC与居家养老
- 2026-2027学年人教版八年级上学期数学第一次月考模拟测试抢分卷(含答案)
- 教师五年专业发展目标达成情况个人总结
- (2026秋新版)苏教版五年级数学上册全册教案
- 2026北京急救中心第三批招聘27人笔试参考题库及答案解析
- 2025年四川省纪委监委遴选笔试题库及答案
- 骨科脊柱退变性疾病保守治疗规范
- 煤矿作业规程培训课件
- 雨课堂学堂云在线《人工智能原理》单元测试考核答案
- 【MOOC】《知识创新与学术规范》(南京大学)期末考试慕课答案
- 金太阳陕西省2028届高一上学期10月月考语文(26-55A)(含答案)
评论
0/150
提交评论