《北京石油化工学院2022年计算机C语言题目含答案.docx》由会员分享,可在线阅读,更多相关《北京石油化工学院2022年计算机C语言题目含答案.docx(76页珍藏版)》请在优知文库上搜索。
1、7、在C语言中,表示静态存储类别的关键字是oA、 autoB、 registerC、 staticD、 extern8、以下程序段给数组所有元素输入数据:main()(inta10,i=0;while(i,D、charc2,a,12、以下叙述错误的是A、一个C程序可以包含多个不同名的函数B、一个C程序只能有一个主函数C、C程序在书写时,有严格的缩进要求,否则不能编译通过D、C程序的主函数必须用main作为函数名2022年计算机C语言题目(一)(总分】00分,考试时长90分钟)一、单项选择题(每小题2分,共40分)1、有定义语句:intX,y;若要通过SCanf(%d,%d,&x,&y);语句使
2、变量X得到数值变量y得到数值12,下面四组输入形式中,错误的是。A、1112/B、IL12/C、11,12/D、11,/12/2、英文小写字母d的ascii码为100,英文大写字母d的ascii码为A、50B、66C、52D、683、59,73,83,94,()A、107B、101C、105D、1134、C语言对嵌套if语句的规定是:else总是与()。A、其之前最近的if配对B、其之前最近的且尚未配对的if配对C、缩进位置相同的if配对D、第一个if配对5、结构化程序设计的3种结构是oA、顺序结构,分支结构,跳转结构B、顺序结构,选择结构,循环结构C、分支结构,选择结构,循环结构D、分支结构
3、,跳转结构,循环结构6、在C语言中对一维整型数组的正确定义为0A、inta(10);intn=10,an;C、 intn;an;D、WefineN10intaN;for(i=0;i95,9218、有以下程序main()char*s=onc,two,three,*p;P=s1;printf(*%c,%sn*,*(p+l),s0);)执行后输出结果是OA、n,twoB、t,oneC、w,oneDno,two19、若二维数组a有m歹U,则在aij前的元素个数为()。A、 i*m+j-lB、 i*m+jC、 j*m+iD、 i*m+j+l20、有以下程序structstu(charname10;int
4、num;floattotalscore;;F以下叙述一错误的是。A、算法正诲的程序最终一定会结束B、算法正/角的程序可以有零个输出C、算法正确的程序可以有零个输入D、算法正确的程序对于相同的输入一定有相同的结果14、在C语言程序中()。As函数的定义可以嵌套,但函数的调用不可以嵌套B、函数的定义不可以嵌套,但函数的调用可以嵌套C、函数的定义和函数调用均可以嵌套D、函数的定义和函数调用不可以嵌套15、请阅读下面的程序,选择正确的输出结果。()voidmain()Printf(%d,null);)A、0B、变量无定义C、-1D、116、以下描述中正确的是。A、由于do-while循环中循环体语句只
5、能是一条可执行语句,所以循环体内不能使用复合语句do-while循环由do开始,用WhiIe结束,在WhiIe(表达式)后面不能写分号C、在do-while循环体中,一定要有能使while后面表达式的值变为零(假)的操作D、do-while循环中,根据情况可以省略while17、有以下程序typedefstruct(charname9;charsex;floatscore2;stu;stuf(stua)StUb=zhao”,n,85.0,90.0;inti;strcpy(a.name,b.name);a.sex=b.sex:;三、编程题(每小题分,共40分)1、编程将1.100间能被2、3、5
6、分别整除的数的和求出来并输出。注意,在判断时要按照2、3、5的先后次序来确定优先顺序,如6既能被2整除,又能被3整除,则只算到能被2整除的这种情况里。(本题10分)2、编写程序:计算字符串中子串出现的次数。请输入两个字符串,以回车隔开,母先串在前,子串在后,比如:abcaa2 (本题14分)3、给定N个职员的信息,包括姓名、基本工资、浮动工资和支出,要求编写程序顺序输出每位职员的姓名和实发工资(实发工资=基本工资+浮动工资-支出)。输入格式:输入在一行中给出正整数N。随后N行,每行给出一位职员的信息,格式为“姓名基本工资浮动工资支出”,中间以空格分隔。其中“姓名”为长度小于10的不包含空白字符
7、的非空字符串,其他输入、输出保证在单精度范围内。输出格式:按照输入顺序,每行输出一位职员的姓名和实发工资,间隔一个空格,工资保留2位小数。输入样例:3zhao24040075qian36012050zhou56015080输出样例:zhao565.00町idf(structstu*p)structsts2=*sundan*,20044,550),*penghua*,20045,537),*q=s;+P;+q;*p=*q;)mainOstructstus3=*yangsan*,20041,703,*lisiguo*,20042,580;f(s);printf(*%s%d%3.0fn*,s1.na
8、me,s1.num,sl.totalscore);)程序运行后的输出结果是OA、 SunDan20044550B、 Penghua20045537C、 1.iSiGuo20042580D、 SunDan20041703二、判断题(每小题2分,共20分)()1、十进制数10转换为二进制为Iol0。()2、C语言在函数调用时,若形参实参都是普通变量,实参和形参可以共用存储单元。()3、break语句不能够单独使用,只能用于循环语句和SWiteh语句()4、循环语句不能嵌套使用。()5、C语言中字符串的结束符是0。()6、在定义函数时,必须要指定函数中的参数列表。()7、字符串可以存储在字符数组中,
9、也可以存储在字符型指针变量中()8、对于一个具体的函数来说,实参与形参必须一一对应。()9、若函数的返回值与return表达式类型不一致时,以return表达式类型为准。()10、在一个文件中定义的全局变量其作用域还可以扩展到其他文件。ian430.00zhou630.00本题16分)15、B【解析】表示空的常量是NULL,而不是null。16、C17、C18、C19、B20、B二、判断题1、正确2、错误3、正确4、错误5、正确6、错误7、错误8、正确9、错误10、正确三、编程题1、ttincludemain()inti,s2=0,s3=0,s5=0;for(i=l;i=100;i+)if(i
10、%2=0)s2+=i;else参考答案一、单项选择题1、A2、D3、A【解析】44+4+4=52,52+5+2=59,59+5+9=73,73+7+3=83,83+8+3=94,94+9+4=107,选Ao4、B5、B【解析】程序设计语言仅仅使用顺序、选择和重复(循环)三种基本控制结构就足以表达出各种其他形式结构的程序设计方法。遵循程序结构化的设计原则,按结构化程序设计方法设计出的程序易于理解、使用和维护:可以提高编程工作的效率,降低软件的开发成本。6、D7、C8、A9、B【解析】考察C语言中输入格式,因为在输入格式中定义好了“/c%c”,其中没有任何符号,所以中间不能加任何字符,包含不能加逗
11、号、回车和空格,因为这些也算是字符。所以在输入时也不可以有任何间隔符号。10、C11、B【解析】本题考查对一维数组的赋值。选项B)中,y5说明数组中有5个元素,但却给它赋了6个值,数组溢出所以是错误的。12、C13、B14、BSyStCln(pause);returnO;)3、includestructmessage(chara9;doublebasic;doublefu;doubleoutput;);structmessaged100;intmainO(intN;doublef100;scanf(*%d*,&N);for(inti=0;iN;i+)(scanf(*%s%lf%lf%lf*,d
12、i.a,&di.basic,&di.fu,&di.output);fi=di.basic+di.fu-di.output;)for(inti=0;iN;i+)(printf(*%s%.2fn*,di.a,fi);)s3+=i;elseif(i%5=0)s5+=i;Printf(nlK)O中能被能3、5分别整除的数的和分别为:%d为%dn*,s2,s3,s5);)2、ttincludettinclude#includeintmain()(inti,j,k,TLen,PLen,count=0;charT50,P10;Printf(请输入两个字符串,以回车隔开,母串在前,子串在后:n);getsC);gets(P);TLen=Strlen(T);PLen=Strlen(P);for(i=0;i=TLen-P