《西北大学 《C语言程序设计》试卷—2017-2018学年第一学期期末试卷A卷.docx》由会员分享,可在线阅读,更多相关《西北大学 《C语言程序设计》试卷—2017-2018学年第一学期期末试卷A卷.docx(4页珍藏版)》请在课桌文档上搜索。
1、西北大学20172018学年第1学期本科考试出题专用纸考试科目c语言程序设计总分二、填空题(每空2分,共20分)1、程序的基本结构为:、和.2、把高级语言编写的源程序转换成的H标程序的过程称为03、数字符号0的ASCll码十进制表示为48,数字符号9的ASCn码十进制表示为。4、能表示一个整数变量a即是奇数又是3的倍数的表达式是o5、若有说明语句:Charch=72;则变量C包含个字符。6、已知int*p.a:则语句P=&a:中的运算符&的含义是7、C语言源程序的基本单位是08、若变量已声明为float类型,要通过语句SCanf(%f,%f,%f,&a,&b,&c);给a赋于10.0,b赋予2
2、2.0,C赋予33.0,正确的输入形式是O三、填程序题(每空2分,共10分)1、下面函数的功能是将两个字符串S和I连接起来。char*conj(char*s.char*l)(char*p=s;WhiIe(*s!=W)s+:while(*t)*s=:s+;:)*s=,0,;returnp;2、主函数调用了LineMaX函数,实现在N行M列的二维数组中,找出每一行上的最大值。清填空。#defineN3#defineM4voidLineMax(intxN(M)inti,j,p;IbKi=O;iN:i+)(p=o:for(j=l;jM;j+)if(xipl(l,5,7,4,2,6,4,3,8,2,3,
3、1):(5):一、单项选择题(每小题2分,共20分)1、若变量C为Char类型,能正确判断出C为小写字母的表达式是()。A.,a,=c=,a,)(c=z,)C.Ca,z,=c)D.(c=,a,)&(cr(;x+=k);B.WhiIe(I)X+;C.fbr(k=10:;k-)sun+=k:D.fbr(c=getchar()!=,n,:)PrinIfr%c”,c);6、若用数组名作为函数调用时实参,则实际上传递给形参的是()oA.数组首地址B.数组的第一个元素值C.数组中全部元素的值D.数组元素的个数7,表达式“13.50xl32.5的值是。A.iB.0C.trueD.false8、若有inta3
4、J=10,12,30);*(a+2)+al的值应该为。A.不确定B.22C.3()D.429、通过reiurn语句,函数可以带回()个返回值。A.个或多个;B.零个或一个;C.只能一个;D.任意个;10、在C语言中,if语句后的对圆括号中,用以决定分支流程的表达式为().A.只能是逻辑表达式B.只能是关系表达式C.只能是逻辑表达式或关系表达式D.可以是任意表达式本卷为开闭弋卷本卷为B卷出题院系信息科学与技术学院出题人冯箍出题日期2017年12月6日审批人嘉-西北大学2017.2018学年第1学期本科考试出题专用纸考试科目C语言程序设计4, main()(inti33j=9,8.7.6.5.4.
5、3.2.1.*p;P=&x川;for(i=0;i4;i+=2)printf(%dt.pi);)程序输出为:5,intf(intb(.intn)in(i,s=0:for(i=0;in;i+)s=s+bi;returns;)main()inta10=1,2,3,456,7,8,9,10:printf(%dn.f(aJO);)程序输出为:五、写程序摩(共35分)1 .写一个程序,输入一个字符及行列的个数,输山一个右斜的实心平行四边形图案(7分)2 .有n个实数,有正有负有零,输出所有的正数的和及零的个数。(10分)3 .写两个函数,一个可以按照任意方法进行整数数组的排序。另一个针对排好序的数组,给定
6、一个数,返回该数在数组中的下标,如果该数在数组中不存在,则返回-1。再用主程序调用这两个函数(10分)。4 .编写程序完成如下功镜:n个人围成圈,顺序排号,从第m个人开始报数(1,2,3),凡报到3的退出,求最后剩的那个人的号码(8分四、读程序,写结果(每小题3分,共15分)1、 voidmain()(intnNumLnNum2;charcOperator:for(inti=l;ib)&(n=c4);printf(m=%d.n=%d,Theresultis:%dn,m.n,bResult);)程序输出为:3、Change(in【x.inty)intt;l=x;x=y;y=t;tnain()intx=l,y=2;change(x.y);printf(,%d,%dn,x,y);)程序的输出为:本卷为开闭卷本卷为AB卷出题院系信息科学与技术学院出题人冯筠出题日期2017年12月6日审批人