2022年河北地质大学华信学院公共课《C语言》科目期末试卷B(有答案).docx

上传人:暗伤 文档编号:96545711 上传时间:2023-12-21 格式:DOCX 页数:18 大小:78.97KB
返回 下载 相关 举报
2022年河北地质大学华信学院公共课《C语言》科目期末试卷B(有答案).docx_第1页
第1页 / 共18页
2022年河北地质大学华信学院公共课《C语言》科目期末试卷B(有答案).docx_第2页
第2页 / 共18页
点击查看更多>>
资源描述

《2022年河北地质大学华信学院公共课《C语言》科目期末试卷B(有答案).docx》由会员分享,可在线阅读,更多相关《2022年河北地质大学华信学院公共课《C语言》科目期末试卷B(有答案).docx(18页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、2022年河北地质大学华信学院公共课C语言科目期末试卷B(有答案)一、填空题1、若有以下定义和语句,为使变量c1得到字符A,变量c2得到字符B,正确的输入形式是_。char cl,c2;scanf(%4c%4c,&cl,8&c2);2、C语言源程序的基本单位是_ 3、一个C语言源程序由若干函数组成,其中至少应含有一个_4、假设m是一个3位数,从左到右依次用a、b、c表示各位的数字,则从左到右各位数字是b、a、c的3位数的表达式是_。5、在C语言中,用“”开头的字符序列称为转义字符。转义字符“n”的功能是_;转义字符“r”的功能是_。6、请读以下函数:getbits(unsigned x,uns

2、igned p,unsigned n)x=(xn);return(x);假设机器的无符号整数字长为16位。若调用此函数时x=0115032,p=7,n=4,则函数返回值的八进制数是_。7、执行下面程序段后,k的值是_。k=1;n=263;dok*=n%10;n/=10; while(n);8、下面程序段的运行结果是_。int i=5;char c6=abcd;doci=ci-1;while(-i0);puts(c);9、下面程序wdm的运行结果是_。int i,x10=2,3,0,3,0,2,3,2,1,3,y4=0;for(i=0;i10;i+)yxi+;printf(%dn,y3);10、

3、下面程序可求出图中方括号内的元素之积,请填空。# includeint main() int x33=7,2,1,3,4,8,9,2,6; int s,*p; p=_; s=*p*_; printf(product=%d,s); return(0);二、选择题11、若x、i、j和k都是int型变量,则执行表达式x=(i=4,j=16,k=32)后x的值为( )。A.4 B.16 C.32 D.5212、设变量a是整型,f是实型,i是双精度型,则表达式10+a+i*f值的数据类型为( )。A.int B.float C.double D.不确定13、以下叙述正确的是A.在C程序中,main函数必

4、须位于程序的最前面B.C程序的每行中只能写一条语句C.C语言本身没有输入输出语句D.在对一个C程序进行编译的过程中,可以发现注释中的拼写错误14、一个C语言程序由( )。A.一个主程序和若干子程序组成 B.函数组成C.若干过程组成 D.若干子程序组成15、以下能对一维数组a进行正确初始化的语句形式是( )。A.int a10=(0,0,0,0,0); B.int a10=;C.int a=0; D.int a10=10*1;16、设有以下程序:#includeint main()char cl,c2,c3,c4,c5,c6;scanf(%c%c%c%c,&c1,&c2,&c3,&c4);c5=

5、getchar();c6=getchar();putchar(c1);。putchar(c2);printf(%c%cn,c5,c6);return0;若运行时从键盘输入数据:abcdefg,则输出结果是( )。A.abcd B.abde C.abef D.abfg17、若有定义:inta23;则对a数组的第i行第j列(假设i,j已正确说明并赋值)元素地址的正确引用为( )。A. *(ai+j) B.(a+i) C.*(a+j) D.ai+j18、以下程序有语法性错误,有关错误原因的正确说法是( )。#include int main()int G=5,k;void prt_char();-k

6、=prt_char(G);- A.语句void prt_char();有错,它是函数调用语句,不能用void说明B.变量名不能使用大写字母C.函数说明和函数调用语句之间有矛盾D.函数名不能使用下划线19、以下不是无限循环的语句为( )。A.for(y=0,x=1;x+y;x=i+)i=x;B.for(;x+=i):C.while(1)x+;D.for(i=10;i-一)sum+=i;20、下面有关for循环的正确描述是( )。A.for循环只能用于循环次数已经确定的情况B.for循环是先执行循环体语句,后判断表达式C.在for循环中,不能用break 语句跳出循环体D.for循环的循环体语句中

7、,可以包含多条语句,但必须用花括号括起来21、若变量都已正确定义,则以下程序段的输出是( )。a=10;b=50;c=30;if(aB.a=b,b=c;c=a;printf(a=%db=%dc=%dn.a,b,C.;A.a=10 b=30 c=10 B.a=10 b=50 c=10 C.a=50 b=30 c=10 D.a=50 b=30 c=5022、定义如下变量和数组:int k;int a33=1,2,3,4,5,6,7,8,9;则下面语句的输出结果是( )。for(k=0;k3;k+)printf(%d,ak2-k);A)3 5 7 B)3 6 9 C)1 5 9 D)1 4 723、

8、下面程序段的运行结果是( )。char a7=abcdef;char b4=ABC;strcpy(a,B.;printf(%c,a5);A.口 B.0 C.e D.f(其中口表示1个空格)24、以下程序的运行结果是( )。#includeint fun(int n)int m=0,f=-1,i;for(i=1;i=n;i+)m=m+i*f;f=-f;return m;int main()printf(m=%dn,fun(10);return(0);A.m=5 B.m=-6 C.m=6 D.m=-525、下面程序的功能是求算式xyz+yzz=532中x、y、z的值(其中xyz和yzz分别表示一个

9、三位数),请选择填空( )。#include int main() int x.y,z,i, result=532; for(x=1;x10;x+) for(y=1;y10;y+) for(z=0;z10;z+)i=100*x+10*y+z+100*y+10*z+z; if(_)printf(x=%d,y=%d,z=%dn,x,y,z); return 0;A) i/result=1 B) i=result C) i!=result D) i=result三、读程序填空26、以下printf语句中*号的作用是_,输出结果是_。#include int main()inti=1;printf(#

10、%*dn,i,i);i+;printf(#%*dn,i,i);i+;printf(#%*dn,i,i);return 0;27、以下程序的输出结果是_。#include int main()int x=10;float pi=3.1416;printf(1)%dn,x); printf(2)%6dn,x); printf(3)%fn,56.1); printf(4)%14fNn, pi); printf(5)%en,568.1); printf(6)%14en, pi); printf(7)%gn, pi); printf(8)%12gn, pi): return 0;28、下面函数pi的功能

11、是:根据以下公式,返回满足精度(0.0005)要求的x的值。请填空。2=1+13+13*25+13*25*37+# include# include# includedouble pi(double eps) double s=0.0,t=1.0; int n; for(_;teps;n+)s+=t; t=n*t/(2*n+1);return(_);int main() double x=0.0005; printf( neps=% lf, =% If,x, pi(x); return(0);29、以下程序的功能是求3个数的最小公倍数。请填空。#includeint max(int x,int

12、 y,int z)if(xy8.8.xz)return(x);else if(_)return(y);else return(z);int main()intx1,x2,x3,i=1,j,x0;printf(Input 3 number:);scanf(%d%d%d,8.x1,&.x2,8.x3);x0=max(xl,x2,3);while(1)j=x0*i;if(_)break;i=i+1;printf(The is%d%d%d zuixiaogongbei is%dn,xl,x2,x3,j);return(0);30、下面程序的运行结果是_。#include int main()int i

13、=0,x=0,y=0;do+i;if(i%2!=0)x=x+i;i+;y=y+i+;while(i=7);printf(x=%d,y=%dn,x,y);return 0;31、数组a包括10个整型元素。下面程序的功能是求出a中各相邻两个元素的和,并将这些和存在数组b中,按每行3个元素的形式输出。请填空。# includeint main() int a10,b10,i; for(i=0;i10;i+)scanf(%d,&.ai); for(_;i10;i+) _for(i=1;i10;i+)printf(%3d,bi); if(_=0) printf(n); return 0;32、若运行以下

14、程序时输入:1605,则程序的运行结果是_。#include int main()int t,h,m;scanf(%d”,8&t);h=(t/100)%12;if(h=0)h=12;printf(%d:,h); m=t%100;if(m10)printf(o);printf(%d,m);if(t1200|t=2400)printf(AM);else printf(PM);return 0;33、若有以下输入(口表示空格),则下面程序的运行结果是_。5口4口3口62口4口6口85口4口3口29口8口7口6#include #define M 4int main()int aMM,sM,i,j;f

15、or(i=0;iM;i+)for(j=0;jM;j+)scanf(%d,*(a+i)+j);for(i=0;iM;i+)*(s+i)=*(*(a+i); for(j=1;jM;j+)if(*(s+i)*(*(a+i)+j)*(s+i)=*(*(a+i)+j); for(i=0;iM;i+)printf(Row=%2d Max=%5d,i,*(s+i); printf(n); return(0);四、编程题34、假设x,y是整数,编写程序求xy的最后3位数,要求x、y从键盘输入。35、设文件number.dat中存放了一组整数。请编写程序统计并输出文件中正整数、零和负整数的个数。参考答案一、填空

16、题1、A囗囗囗B囗囗囗2、函数3、主函数(或main函数)4、m/10%10*100+m/100*10+m%105、【1】换行6、0120000或1200007、368、aabcd9、410、【1】&x00【2】(*(p+4)*(*(p+8)二、选择题11、C12、C13、C14、B15、C16、B17、D18、C19、A20、D21、B22、A23、D24、A25、D三、读程序填空26、【1】可以使同一输出语句中的输出宽度得以改变。【2】#1#囗2#囗囗327、(1)10(2)口口口囗10(3)56.100000(4)口口口口口口3.141600(5)5.68100e+02(6)口口口3.1

17、4160e+00(7)3.1416(8)口口口口囗囗3.1416(注:答案中的囗代表空格)28、【1】n=1【2】2.0*s29、【1】yx&yz【2】j%x1=0&j%x2=0&j%x3=030、x=1,y=2031、【1】i=1【2】bi=ai+ai-1;【3】(i%3)32、4:05PM33、Row=0 Max=6Row=1 Max=8Row=2 Max=5 Row=3 Max=9四、编程题34、#includeint main()int i,x,y;long last=1;printf(Input x and y:);scanf(%d%d,&x,&y);for(i=1;i=y;i+)l

18、ast=last*x%1000;printf(The last 3 digits:%ldn,last);return 0;35、#include FILE*fp;int main()int p=0,n=0,z=0,temp;fp=fopen(number.dat,r);if(fp=NULL)printf(File cannot be found!n);elsewhile(!feof(fp)fscanf(fp,%d,&.temp);if(temp0)p+;else if(temp0)n+;else z+;fclose(fp);printf(positive:%3d,negtive:%3d,zero:%3dn,p,n,z);return0;

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 技术资料 > 技术方案

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

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