版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、10809学年第学年第2学学期期?C语言程序设计语言程序设计?试卷试卷2一、单项选择题一、单项选择题每题每题2分,共分,共50分分1、设有以下宏定义:、设有以下宏定义: define N 3 define Yn N+1*n那么执行语句:那么执行语句:z2*N+Y5+1;后,后,z的值为的值为 。A、出错、出错 B、42 C、48 D、542、假设有说明:、假设有说明:int a10;那么对数组元素的那么对数组元素的正确引用是正确引用是 。A、a10 B、a3.5 C、a5 D、a10-10CD33、以下能正确计算、以下能正确计算s=123.10的程的程序段是序段是 。 Adoi=1;s=1;
2、s=s*i; i+; whilei=10;Bdoi=1;s=0; s=s*i; i+; whilei=10;Ci=1;s=1; dos=s*i; i+; whilei=10;Di=1;s=0; dos=s*i; i+; whilei=10;C44、下面程序段的运行结果是、下面程序段的运行结果是 。 forx=3;xy z=x; B、ifx=y z=0; C、ifx!=y printf“%d,x else printf“%d,y; D、 ifxy x+;y-; 11、如有函数调用语句:、如有函数调用语句:funcrec1,rec2+rec3,rec4,rec5;在该函数在该函数调用语句中,含有的
3、实参个数是调用语句中,含有的实参个数是 。A、3 B、4 C、5 D、有语法错误、有语法错误CA912、下面程序的输出结果是、下面程序的输出结果是 。 mainint n5=0,0,0,i,k=2;fori=0;ik;i+ ni=ni+1; printf“%dn,nk;A、不确定的值、不确定的值 B、2 C、1 D、013、假设二维数组、假设二维数组a有有m列,那么计算任一元列,那么计算任一元素素aij在数组中位置的公示为在数组中位置的公示为 。假设假设a00位于数组的第一个位置上位于数组的第一个位置上 A、i*m+j B、j*m+i C、i*m+j-1 D、 i*m+j+1DD1014、设、
4、设x和和y均为均为int变量,那么以下语句:变量,那么以下语句:x+=y;y=x-y;x-=y;的功能是的功能是 。A、把、把x和和y按从小到大排序按从小到大排序 B、把、把x和和y按从大到小排序按从大到小排序 C、无确定结果、无确定结果 D、交换、交换x和和y中的值中的值D1115、假设执行以下程序段,其输出结果是、假设执行以下程序段,其输出结果是 。int a=0,b=0,c=0;c=a-=a-5,a=b,b+3;printf“%d,%d,%d,a,b,c; A、5,0,-10 B、0,0,5 C、-10,5,-10 D、5,0,316、C语言规定:在一个源程序中,语言规定:在一个源程序中
5、,main函数的函数的位置位置 。A、必须在最开场、必须在最开场 B、必须在系统调用的库函、必须在系统调用的库函数的后面数的后面 C、可以任意、可以任意 D、必须在最后、必须在最后BC1217、在、在C语言中,每个语句和数据定义是用语言中,每个语句和数据定义是用 完毕。完毕。A、句号、句号 B、逗号、逗号 C、分号、分号 D、括号、括号18、假设有语句、假设有语句int *point,a=4;和和point=&a;下面均代表地址的一组选项是下面均代表地址的一组选项是 。A、a,point,*&a B、&*a,&a,*pointC、*&point,*poi
6、nt,&a D、&a,&*point,pointCD1319、在、在printf函数中用来输出十六进制无符号整函数中用来输出十六进制无符号整数的格式字符是数的格式字符是 。 A、d格式符格式符 B、x格式符格式符 C、u格式符格式符 D、o格式符格式符20、假设要求在、假设要求在if后一对圆括号中表示后一对圆括号中表示a不等于不等于0的关系,那么能正确表示这一关系的表达式的关系,那么能正确表示这一关系的表达式为为 。 A、a B、!a C、a=0 D、a0BA1421、利用、利用fseek函数可以实现的操作是函数可以实现的操作是 。 A、改变文件的指针位置、改变文件的指
7、针位置 B、文件的顺序读写、文件的顺序读写 C、文件的随机读写、文件的随机读写 D、以上答案均正确、以上答案均正确22、设、设p1和和p2为指向同一个为指向同一个int型一维数组的指型一维数组的指针变量,针变量,k为为int型变量,那么不能正确执行的语型变量,那么不能正确执行的语句是句是 。 A、k=*p1+*p2; B、p2=k; C、p1=p2; D、 k=*p1*p2; AB1523、假设有说明:、假设有说明:int a3=1,2,3,4,5,6,7;那么那么a数组第一维的大小是数组第一维的大小是 。 A、2 B、3 C、4 D、无确定值、无确定值24、以下程序的输出结果是、以下程序的输
8、出结果是 。pointchar *pt;mainchar b4=a,c,s,f,*pt=b;pointpt;printf“%cn, *pt;pointchar *pp+=3; A、a B、c C、s D、 fBA A1625、设有声明语句:、设有声明语句:int a=1,b=0;那么执行以那么执行以下语句后输出下语句后输出 。swithacase 1: swithb case 0: printf“*0*;break; case 1: printf“*1*;break; case 2: printf“*2*;break; A、*0* B、*0*2* C、*0*1*2* D、 有语法错误有语法错误
9、B17二、程序填空题二、程序填空题每空每空2分,共分,共16分分下面给下面给出了假设干个程序,请按照题意将下划线处缺少的部出了假设干个程序,请按照题意将下划线处缺少的部分补上,使其能正确运行。分补上,使其能正确运行。26、函数、函数fun的功能是使一个字符串按逆序存放,请填空。的功能是使一个字符串按逆序存放,请填空。void funchar strchar m; int i,j;fori=0,j=strlenstr;i【1】 ;i+,j- m=stri; stri=【2】 ; strj-1=m;printf“%sn,str;1 j2 strj-1 1827、用、用“两路合并法把已按升序排序的数
10、组合并两路合并法把已按升序排序的数组合并成一个升序数组。成一个升序数组。mainint a4=15,34,48,98; int b5=12,32,55,67,78; int c10; int i,j,k; 【3】;whilei4&j5 ifaibj ck=ai;k+;i+; else ck=bj;k+;j+;while 【4】 ck=ai; i+; k+; while 【5】 ck=bj; j+; k+;fori=0;ik;i+printf“%5d,ci;printf“n;3 i=j=k=04 i4&j=55 i=4&jnext 20三、修改以下程序错误三、修改以下程序
11、错误每处每处3分,共分,共15分分例例 mainint I;*found* i=5;printf“%d,I;那么答案为:将那么答案为:将i=5;改为;改为I=5;在修改中不得增行或减行,也不得更改程序的构造!在修改中不得增行或减行,也不得更改程序的构造!2129、以下程序中函数、以下程序中函数cpoystr的功能是:将的功能是:将p1指向的字符串中从第指向的字符串中从第m个字符开场的全部个字符开场的全部字符复制到另一个字符串字符复制到另一个字符串由由p2指向指向。例。例如:如:p1=“abc-de12345,m=5,那么复那么复制后,制后,p2=“e12345。请改正程序中的错。请改正程序中的
12、错误,使它能得出正确的结果。误,使它能得出正确的结果。22includeint copystrchar *p1,char *p2,int m/*found1*/ p1=p1+m;while*p1!=0/* found2*/*p1=*p2;p1+;p2+;/* found3*/*p2=“0;mainint m;char str120,str220;printf“input string;getsstr1;printf“which character that begin to copy?;scanf“%d,&m;ifstrlenstr1m|m=0printf“input error;el
13、secopystrstr1,str2,m;printf“result:%s,str2;p1=p1+m;改成改成p1=p1+m-1;*p1=*p2;改成改成*p2=*p1;*p2=“0;改成改成*p2=0;2330、按顺序读入、按顺序读入10名学生名学生4门课程成绩,计算门课程成绩,计算出每位学生的平均分并输出。出每位学生的平均分并输出。mainint n,k,score,sum; float ave;/* found4*/ Forn=1;n=10;n+sum=0;scanf“%d,&score;sum+=score;/* found5*/ave=sum/4;printf“No.%d:%
14、fn,n,ave;Forn=1;n=10;n+改改成成forn=1;n1n!2532、假定输入的字符串只含字母和、假定输入的字符串只含字母和*号。请编号。请编写函数写函数fun,它的功能是:除了尾部的,它的功能是:除了尾部的*号外,将号外,将字符串中的其他字符串中的其他*号全部删除。形参号全部删除。形参p已指向字符已指向字符串中最后一个字母。在编写函数时,不得是用串中最后一个字母。在编写函数时,不得是用C语语言提供的字符串函数。言提供的字符串函数。例如:字符串的内容为:例如:字符串的内容为:*A*BC*DEF*G*,删除后,字符串删除后,字符串中的内容应是:中的内容应是:ABCDEFG*。注意
15、:部分源程序如下,请勿改动主函数注意:部分源程序如下,请勿改动主函数main和其他函数中的任何内容,仅在函数和其他函数中的任何内容,仅在函数fun的花括号的花括号中填入你编写的假设干语句。中填入你编写的假设干语句。26include void funchar *a,char *p mainchar s81,*t;printf“Enter a string:n;getss;t=s;while*tt+;t-;while*t=*t-;funs,t;printf“The string after deleted:n;putss;270708学年第学年第2学学期期?C语言程序设计语言程序设计?试卷试卷2
16、8一、单项选择题一、单项选择题每题每题2分,共分,共50分分 1以下表达不正确的选项是以下表达不正确的选项是。 、一个语言程序可以由一个或多个函数组成、一个语言程序可以由一个或多个函数组成 、语言程序的根本组成单位是函数、语言程序的根本组成单位是函数 、在语言程序中,注释只能位于一条语句的后面、在语言程序中,注释只能位于一条语句的后面 、一个语言程序必须包含一个、一个语言程序必须包含一个main函数函数 2假设已定义假设已定义x和和y为为double类型,那么执行表达类型,那么执行表达式式x=1,y=x+5/2后,后,y的值是的值是。 A、2.0B、3C、3.0D、3.5CC29 3在在C语言
17、中,字符型语言中,字符型char数据在内存中存放数据在内存中存放的形式为的形式为。 A、BCD码码B、原码、原码C、补码、补码D、ASCII码码 4在在C语言中,以下合法的长整型常量为语言中,以下合法的长整型常量为。 A、aB、0.012345C、2.14e12D、0L 5假设定义语句:假设定义语句:int a,b,c,*p=&c;之后,接着执之后,接着执行以下选项中的语句,那么能正确执行的语句是行以下选项中的语句,那么能正确执行的语句是。 A、scanf“%d,a,b,c;B、scanf“%d%d%d,a,b,c;C、scanf“%d,p;D、scanf“%d,&p;DDC3
18、0 6假设变量已正确定义并赋值,以下合法的假设变量已正确定义并赋值,以下合法的C语言语言赋值语句是赋值语句是。 A、x=y=5;B、x=n%2.5 C、x+n=i; D、x=5=4+1; 7假设变量已正确定义,有以下程序段:假设变量已正确定义,有以下程序段:int i=0; do printf“%d,i; whilei+; printf“%dn,i;其输出结果为其输出结果为。 A、0,0B、0,1C、1,1 D、程序进入无限循环、程序进入无限循环AB31 8下面的程序段表示的数学函数关系是下面的程序段表示的数学函数关系是。 y=-1; ifx!=0 ifx0 y=1; else y=0; A、
19、y=-1(x0)B、y=1(x0)C、y=0(x0)D、y=-1(x0)C32 9有以下程序,程序运行结果是有以下程序,程序运行结果是。 #include int y=9; for;y0;y- ify%3=0 printf“%d,-y;A、741 B、963 C、852 D、875421C33 10下面程序段的输出结果是下面程序段的输出结果是。 x=3; doy=x-; if!yprintf“x;continue; printf“#;while1=x=2; A、将输出、将输出# B、将输出、将输出#* C、是死循环、是死循环 D、含有不合法的控制表达式、含有不合法的控制表达式C34 11以下表
20、达中正确的选项是以下表达中正确的选项是。 A、用、用#include包含的头文件的后缀不可以是包含的头文件的后缀不可以是.a B、假设一些源文件中包含某头文件,当该头文件、假设一些源文件中包含某头文件,当该头文件有错时,只需对该头文件进展修改,包含此头文件有错时,只需对该头文件进展修改,包含此头文件的所有源程序不必重新进展编译的所有源程序不必重新进展编译 C、宏定义可以看成是一行语句、宏定义可以看成是一行语句 D、C程序中的预处理是在编译之前进展的程序中的预处理是在编译之前进展的D35 12以下程序的输出结果是以下程序的输出结果是。 #define Sr 10*r*r main int a=2
21、0,b=20,s; s=Sa+b; printf“%dn,s;A、320 B、620 C、16000 D、400B36 13以下程序的输出结果是以下程序的输出结果是。 main int x=1,y=0,a=0,b=0; switchx case 1: switchy case 0:a+;break; case 1:b+;break; case 2:a+;b+;break; printf“a=%d,b=%dn,a,b; A、a=2,b=1 B、a=1,b=1 C、a=1,b=0 D、a=2,b=2A37 14假设假设w=1,x=2,u=3,z=4,那么表达式,那么表达式wx?w:uz?u:z的值
22、是的值是。 A、4 B、3 C、2 D、1 15以下正确的字符串常量是以下正确的字符串常量是。 A、“ B、abc C、 D、Olympic GamesDC 38 16在以下定义中,标识符在以下定义中,标识符fprt是是。 int*fprt; A、是一个指向一维数组的指针、是一个指向一维数组的指针B、是一个指向、是一个指向int型变量的指针型变量的指针C、是一个指向函数的指针。该函数返回值为、是一个指向函数的指针。该函数返回值为int型型 D、定义不正确、定义不正确C 39 17以下程序的输出结果是以下程序的输出结果是。 main int k=8,m=4,n=6; int *pk=&k
23、,*pm=&m,*p; *p=&n=*pk*pm; printf“%dn,n;A、36 B、32 C、8 D、10B 40 18当调用函数时,实参是一个数组名,那么实参当调用函数时,实参是一个数组名,那么实参向形参传递的是向形参传递的是。A、数组的长度、数组的长度 B、数组的首地址、数组的首地址 C、数组每一个元素的地址、数组每一个元素的地址 D、数组每个元素的、数组每个元素的值值B 19以下能正确表示以下能正确表示 的的C语言表达式是语言表达式是。A、a+b/a-bc B、a+b/a-bc C、 a+b/a-b*c D、 a+b*c/a-b a+ba-bcD 41 21以下是
24、对数组以下是对数组s的初始化,其中不正确的选项是的初始化,其中不正确的选项是 。A、char s=“abc; B、char s5=a,b,c;C、char s5=“;D、char s5=“abcdef; 20以下不正确的定义语句是以下不正确的定义语句是。A、double x5=2.0,4.0,6.0,8.0,10.0; B、int y5=0,1,3,5,7,9; C、char c1=1,2,3,4,5;D、char c2 =x10,xa,x8;B D 42#includemainFILE *fp;int i=30.j=40,k,n;fp=fopen“d1.dat,w;fprintffp,%dn
25、,i;fprintffp,%dn,j;fclosefp;fp=fopen“d1.dat,r;fscanffp,%d%dn,&k,&n;printf“%d %dn,k,n;fclosefp;22以下程序的运行结果以下程序的运行结果是是_ 。 A20 30 B30 40 C30 50 D20 40 B 4323假设有定义语句:假设有定义语句:inta36;,按在内存中的按在内存中的存放顺序,存放顺序,a数组的第数组的第10个元素是个元素是_。 Aa04 B a13 Ca03 D a14 B 24在一个在一个C程序中,程序中,main函数出现的位置是函数出现的位置是_。 A必须在程序
26、的最后面必须在程序的最后面 B 可以在任意地方可以在任意地方 C必须在程序的最前面必须在程序的最前面 D必须在系统调用的库函数的后面必须在系统调用的库函数的后面B 4425假设假设fp是一个指向某二进制文件的指针,且是一个指向某二进制文件的指针,且已读到此文件的末尾,那么库函数已读到此文件的末尾,那么库函数feoffp的的返回值是返回值是_。AEOF B0 C1 DNULL C 45二、程序填空题二、程序填空题 每空每空2分,共分,共16分分,请按,请按照题意将缺少部分补上,使其能正确运行。照题意将缺少部分补上,使其能正确运行。26用用for循环打印循环打印1 4 7 10 13 16 19
27、22 25,请完善请完善printf函数。函数。 fori=1;i=a&ch=A&ch05 n%10+486 strI=04829输入输入3个个int型的整数,求最大数。型的整数,求最大数。#includeint maxint x,int yreturn_7_;mainint a,b,c;scanf“%d%d%d,&a,&b,&c;printf“max=%dn,max_8_;7 xy?x:y 8 a,maxb,c49三、修改以下程序的错误。三、修改以下程序的错误。每处每处3分,共分,共15分分在书写过程中,如某一行中有错,请先将该行所在书写过程中,如某一
28、行中有错,请先将该行所有语句抄写,在写出正确的一行的所有语句。有语句抄写,在写出正确的一行的所有语句。例例 mainint I;*found* i=5;printf“%d,I;那么答案为:将那么答案为:将i=5;改为;改为I=5;在修改中不得增行或减行,也不得更改程序的构造!在修改中不得增行或减行,也不得更改程序的构造!5030、以下给定程序中函数、以下给定程序中函数fun的功能是:计算的功能是:计算1/n!的值。例如:给的值。例如:给n输入输入5,那么输出,那么输出0.008333。#include#include/*found1*/int funint ndouble result=1.0;ifn=0return 1.0;whilen1&n170/*found2*/result*=n+;result=1/result;return result;void mainint n;printf“input n;scanf“%d,&n;printf“n1/%d!=%lfn,n,funn;5131以下程序中函数以下程序中函数calc的功
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026 学龄前自闭症家校互动实操课件
- 2025年中小企业碳中和实施路径与成本优化方案
- 工程信号与系统(第2版)课件 第四章傅里叶变换域频域分析2
- 安全员安全工作总结(13篇)
- 工作心得体会3篇
- 我与企业共成长演讲稿(15篇)
- 隧道工程专项验收
- 2026年水利工程边坡开挖安全操作培训方案
- 采光顶防水施工工艺流程
- 市政工程施工作业指导书
- 2026年及未来5年中国和田玉行业市场发展现状及投资规划建议报告
- 2026庐山云雾茶产业集团有限公司社会招聘工作人员16人备考题库附答案详解(能力提升)
- 2026年5月第37届520中国学生营养日校园营养餐健康助成长课件
- 储备粮轮换工作制度
- 山东省烟台市莱山区2026年初三第二次模拟考试数学试题含解析
- 2026年中国化工经济技术发展中心招聘备考题库及一套完整答案详解
- 地理试题卷山东省九五高中协作体2026届高三年级12月质量检测(九五联考)(12.17-12.18)
- 学堂在线实绳结技术期末考试答案
- 2025年《中国脂肪肝防治指南》
- 尼康D90-使用指南
- T-GDWCA 0035-2018 HDMI 连接线标准规范
评论
0/150
提交评论