C语言20套题_第1页
C语言20套题_第2页
C语言20套题_第3页
C语言20套题_第4页
C语言20套题_第5页
已阅读5页,还剩169页未读 继续免费阅读

付费下载

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

FORPREFECT卓越团队1C语言最重要的知识点复习资料要学的都来看看。保你及格六月,奋战C语言,大家一起加油啦总体上必须清楚的1程序结构是三种顺序结构,循环结构三个循环结构,选择结构IF和SWITCH2读程序都要从MAIN入口,然后从最上面顺序往下读碰到循环做循环,碰到选择做选择。3计算机的数据在电脑中保存是以二进制的形式数据存放的位置就是他的地址4BIT是位是指为0或者1。BYTE是指字节,一个字节八个位5一定要记住二进制如何划成十进制。概念常考到的、编译预处理不是C语言的一部分,不再运行时间。C语言编译的程序称为源程序,它以ASCII数值存放在文本文件中。、每个C语言程序中MAIN函数是有且只有一个。、在函数中不可以再定义函数。、算法的是一定要有输出的,他可以没有输入。、BREAK可用于循环结构和SWITCH语句。、逗号运算符的级别最低。第一章1)合法的用户标识符考查合法的要求是由字母,数字,下划线组成。有其它元素就错了。并且第一个必须为字母或则是下划线。第一个为数字就错了。关键字不可以作为用户标识符号。MAINDEFINESCANFPRINTF都不是关键字。迷惑你的地方IF是可以做为用户标识符。因为IF中的第一个字母大写了,所以不是关键字。2)实型数据的合法形式FORPREFECT卓越团队22333E1就是合法的,且数据是2333101。考试口诀E前E后必有数,E后必为整数。3)字符数据的合法形式1是字符占一个字节,“1“是字符串占两个字节含有一个结束符号。0的ASCII数值表示为48,A的ASCII数值是97,A的ASCII数值是65。4)整型一般是两个字节,字符型是一个字节,双精度一般是4个字节考试时候一般会说,在16位编译系统,或者是32位系统。碰到这种情况,不要去管,一样做题。掌握整型一般是两个字节,字符型是一个字节,双精度一般是4个字节就可以了。5)转义字符的考查在程序中INTA0X6D,是把一个十六进制的数给变量A注意这里的0X必须存在。在程序中INTA06D,是一个八进制的形式。在转义字符中,X6D才是合法的,0不能写,并且X是小写。141是合法的,0是不能写的。108是非法的,因为不可以出现8。6)算术运算符号的优先级别同级别的有的是从左到右,有的是从右到左。7)强制类型转换一定是(INT)A不是INT(A),注意类型上一定有括号的。注意(INT)(AB)和(INT)AB的区别。前是把AB转型,后是把A转型再加B。8)表达式的考查是表达式就一定有数值。赋值表达式表达式数值是最左边的数值,AB5该表达式为5,常量不可以赋值。FORPREFECT卓越团队3自加、自减表达式假设A5,A(是为6),A(为5);运行的机理A是先把变量的数值加上1,然后把得到的数值放到变量A中,然后再用这个A表达式的数值为6,而A是先用该表达式的数值为5,然后再把A的数值加上1为6,再放到变量A中。进行了A和A后在下面的程序中再用到A的话都是变量A中的6了。考试口诀在前先加后用,在后先用后加。逗号表达式优先级别最低;表达式的数值逗号最右边的那个表达式的数值。(2,3,4)的表达式的数值就是4。9)位运算的考查会有一到二题考试题目。总的处理方法几乎所有的位运算的题目都要按这个流程来处理(先把十进制变成二进制再变成十进制)。例1CHARA6,BBA右移一位表示除以2。10)018的数值是非法的,八进制是没有8的,逢8进1。11)符号两边要求是整数。不是整数就错了。12三种取整丢小数的情况、INTA16;、INTA;、FORPREFECT卓越团队4第二章1)PRINTF函数的格式考查D对应整型;C对应字符;F对应单精度等等。宽度的,左对齐等修饰。LD对应LONGINT;LF对应DOUBLE。2)SCANF函数的格式考察注意该函数的第二个部分是跳过输入的第三个数据。3)PUTCHAR,GETCHAR函数的考查CHARAGETCHAR是没有参数的,从键盘得到你输入的一个字符给变量A。PUTCHARY把字符Y输出到屏幕中。4)如何实现两个变量X,Y中数值的互换(要求背下来)不可以把XY,YX要用中间变量TX;XY;YT。5)如何实现保留三位小数,第四位四舍五入的程序,(要求背下来)这个有推广的意义,注意X(INT)X这样是把小数部分去掉。第三章特别要注意C语言中是用非0表示逻辑真的,用0表示逻辑假的。1)关系表达式表达式的数值只能为1(表示为真),或0(表示假)当关系的表达是为真的时候得到1。如98这个是真的,所以表达式的数值就是1;2)逻辑表达式FORPREFECT卓越团队5只能为1(表示为真),或0(表示假)A共有则WHILECGETCHAR是正确的C语句。答案Y7表达式J3,J的值是4答案N8C语言中“运算符的运算对象必须是整型答案Y9在C程序中,函数既可以嵌套定义,也可以嵌套调用答案N10INTI2011SWITCHI/101213CASE2PRINTF“A“ACASE1PRINTF“B“1415的输出结果为A。答案N输出AB16两个字符串中的字符个数不相同时也可进行字符串大小的比较答案Y17CHARP“GIRL“的含义是定义字符型指针变量P,P的值是字符串“GIRL“。答案N18如果有一个字符串,其中第十个字符为N,则此字符串的有效字符为9个。答案NFORPREFECT卓越团队1119如果函数值的类型和RETURN语句中表达式的值不一致,则以函数类型为准。答案Y20C语言中只能逐个引用数组元素而不能一次引用整个数组。答案Y21INTA341,5,9它的作用是将数组各行第一列的元素赋初值,其余元素值为0。22答案Y23C语言的函数可以嵌套定义答案N24函数STRLEN“ASDFGN“的值是7。答案N二、单项选择1、若有说明INTA340则下面正确的叙述是()。A只有元素A00可得到初值0B此说明语句不正确C数组A中各元素都可得到初值,但其值不一定为0D数组A中每个元素均可得到初值0答案D2、若有下列定义,则对A数组元素A2的正确引用是()。INTA5,PAAP5BP2CA2DINTXDOUBLEZ则表达式CXZ值的数据类型为AFLOATBINTCCHARDDOUBLE答案D5、能正确表示逻辑关系“A10或A0“的C语言表达式是FORPREFECT卓越团队12AA10ORA0|A10BINTA21,2CCHARA21,2,3DCHARA21答案C15、若有说明INTP1,P2,M5,N以下均是正确赋值语句的选项是()。AP1P2P1P2P2CP1P2P1DP1P2P1答案C16、在C语言中,调用无参函数除函数名外,还必须有()。A函数预说明B实际参数CD函数返回值答案C17、以下叙述中正确的是()。AC程序中注释部分可以出现在程序中任意合适的地方FORPREFECT卓越团队14B花括号“和”只能作为函数体的定界符C构成C程序的基本单位是函数,所有函数名都可以由用户命名D分号是C语句之间的分隔符,不是语句的一部分答案A18、变量P为指针变量,若PIFABCABELSEAC则A的值为()。A3B2C1D0答案C20、在以下给出的表达式中,与DOWHILEE语句中的(E)不等价的表达式是()。AE0BE0|EINTMAININTNUM,A10,RINTI0,J,FLAG1/FLAG作为是否为回文的标志/SCANF“D“,IFNUMJI,JIFAJAIFLAG0/SPACE/【】/SPACE/IF【】PRINTF“是回文N“ELSEPRINTF“不是回文N“RETURN0答案答案1FORPREFECT卓越团队16AIR答案2BREAK答案3FLAG或FLAG0或FLAG1或I0第2题功能用冒泡排序法对数组A进行由小到大的排序。INCLUDEVOIDFUNINTA,INTNINTI,J,T/SPACE/FORJ0【】J/SPACE/FORI0【】I/SPACE/IF【】TAIAIAI1AI1TINTMAININTI,A103,7,5,1,2,8,6,4,10,9/SPACE/【】FORI0IAI1答案4FUNA,10第3题(100分)题号76功能找出数组中最大值和此元素的下标,数组元素的值由键盘输入。INCLUDEVOIDMAININTA10,P,S,IFORI0I答案4S第4题(150分)题号27功能输出100到1000之间的各位数字之和能被15整除的所有数,输出时每10个一行。INCLUDEINTMAININTM,N,K,I0FORM100M0或WHILEN0或WHILEN答案4PRINTF“N“或PUTS“或PUTCHARN第5题功能用函数调用方式,实现字符串的复制。INCLUDEVOIDSTRING_COPYCHARSTR_FROM,CHARSTR_TOINTI0/SPACE/FOR【】STR_FROMI0IINTMAINFORPREFECT卓越团队19STATICCHARARRAY_STR120“IAMATEACHER“CHARARRAY_STR220/SPACE/【】ARRAY_STR1,ARRAY_STR2/SPACE/【】“ARRAY_STR2SN“,ARRAY_STR2RETURN0答案答案1STR_TOI答案2STRING_COPY答案3PRINTF第6题功能以下程序是用选择法对10个整数按从小到大顺序排序。说明每一趟均找到未排好序的数中的最小数的位置,然后将其交换到正确的位置INCLUDEDEFINEN10INTMAININTI,J,K,T,ANFORI0II第7题功能打印出如下字母塔。最后一行字母前无空格ABBBCCCCCDDDDDDDINCLUDEINTMAININTI,J,K/SPACE/FORI0【】IFORJ0JINTMAININTN,I,JPRINTF“ENTERINTNUMBER,WITH0TOENDN“IJ0SCANF“D“,WHILEN0/SPACE/IFN0I【】/SPACE/IFNDEFINEN20VOIDFUNINTA,INTNINTI,M,T,KFORI0IAMKMTAIAIAMAMTINTMAININTBN11,5,12,0,3,6,9,7,10,8,N10,IFORI0IAMMK答案3FUNB,NFORPREFECT卓越团队23第2题功能利用条件运算符的嵌套来完成此题学习成绩90分的同学用A表示,7089分之间的用B表示,6069分之间的用C表示,60分以下的用D表示。INCLUDEINTMAININTSCORE/FOUND/CHARGRADEPRINTF“PLEASEINPUTASCOREN“/FOUND/SCANF“D“,SCOREIFSCORE100PRINTF“超出范围“ELSE/FOUND/SWITCHSCORECASE9CASE10GRADEABREAKCASE7CASE8GRADEBBREAKCASE6GRADECBREAK/FOUND/CASEELSEGRADEDPRINTF“DBELONGSTOCN“,SCORE,GRADERETURN0FORPREFECT卓越团队24答案答案1CHARGRADE答案2SCANF“D“,答案3SWITCHSCORE/10答案4DEFAULT或CASE0CASE1CASE2CASE3CASE4CASE5第2题(150分)题号153/【程序改错】功能编写函数求2468。/INCLUDEINTSUMINTNINTI,J,T,S/FOUND/S1FORI2IINCLUDE/FOUND/DOUBLEFUNRDOUBLES/FOUND/S1/2314159RR/FOUND/RETURNRVOIDMAINDOUBLEXFORPREFECT卓越团队26PRINTF“ENTERX“SCANF“LF“,PRINTF“SFN“,FUNX答案答案1DOUBLEFUNDOUBLER答案2S10/2314159RR或S05314159RR答案3RETURNS第4题(150分)题号27/【程序改错】功能求1到10的阶乘的和。/INCLUDEINTMAININTIINTS0/FOUND/INTFACNFORI1IVOIDMAIN/FOUND/INTI,SP,NPRINTF“ENTERNN“/FOUND/SCANF“D“,NSP0/FOUND/FORI1IDOUBLEAVERAGEDOUBLEARRAY,INTNINTIDOUBLEAVER,SUMARRAY0/FOUND/FORI0I65CX9YYDXY4/26、若有下列定义,则对A数组元素A2地址的正确引用是()AP5BP2CA2D/SPACE/FOR【】IPRINTF“DT“,F1/SPACE/IFF1【】BREAKPRINTF“5DT“,F2IFF2200BREAKIFI20PRINTF“N“F1F2/SPACE/F2【】PRINTF“N“RETURN0答案1I0FORPREFECT卓越团队3122003F1【程序改错】功能编写函数FUN求1000以内正整数,不包括1000所有8的倍数之和。/INCLUDEDEFINEN1000INTFUNINTM/FOUND/INTS0;I/FOUND/FORI1INI/FOUND/IFI/M0SSIRETURNSINTMAININTSUMSUMFUN8PRINTF“D以内所有D的倍数之和为DN“,N,8,SUMRETURN0答案1INTS0;I改为INTS0,I2FORI1INI改为FORI1IFORPREFECT卓越团队32DEFINEN20VOIDFUNINTA,INTNINTI,M,T,KFORI0IAMKMTAIAIAMAMTINTMAININTBN11,5,12,0,3,6,9,7,10,8,N10,IFORI0IAMKM改为IFAKAMMK3FUNINTBN,N改为FUNB,N【程序设计】功能编写函数FUN求一个字符串长度不超过80的长度,在MAIN函数中输入字符串,并输出其长度。/INCLUDEVOIDWWJTFORPREFECT卓越团队33INTFUNCHARP1/PROGRAM/END/INTMAINCHARP,A80INTLENPAPRINTF“PLEASEINPUTASTRINGN“GETSPLENFUNPPRINTF“THESTRINGSLENGTHISDN“,LENWWJTRETURN0VOIDWWJTFILEIN,OUTCHARPIN,SIN80INTIOUT,IPINSININFOPEN“3IN“,“R“IFINNULLPRINTF“PLEASEVERIFYTHECURRERNTDIRITMAYBECHANGED“OUTFOPEN“3OUT“,“W“IFOUTNULLPRINTF“PLEASEVERIFYTHECURRENTDIRITMAYBECHANGED“FORPREFECT卓越团队34FORI0IY)/SPACE/FORJ0【】J/SPACE/FORI0【】I/SPACE/IF【】TAIAIAI1FORPREFECT卓越团队36AI1TINTMAININTI,A103,7,5,1,2,8,6,4,10,9/SPACE/【】FORI0IAI14FUNA,10【程序填空】功能找出数组中最大值和此元素的下标,数组元素的值由键盘输入。/INCLUDEVOIDMAININTA10,P,S,IFORI0I4S【程序改错】功能利用条件运算符的嵌套来完成此题学习成绩90分的同学用A表示,7089分之间的用B表示,6069分之间的用C表示,60分以下的用D表示。/INCLUDEINTMAININTSCORE/FOUND/CHARGRADEPRINTF“PLEASEINPUTASCOREN“/FOUND/SCANF“D“,SCOREIFSCORE100PRINTF“超出范围“ELSE/FOUND/SWITCHSCORECASE9CASE10FORPREFECT卓越团队38GRADEABREAKCASE7CASE8GRADEBBREAKCASE6GRADECBREAK/FOUND/CASEELSEGRADEDPRINTF“DBELONGSTOCN“,SCORE,GRADERETURN0答案1CHARGRADE改为CHARGRADE4CASEELSE改为DEFAULT2SCANF“D“,SCORE改为SCANF“D“,3SWITCHSCORE改为SWITCHSCORESCORE10/10【程序改错】功能编写函数求2468。/INCLUDEINTSUMINTNINTI,J,T,S/FOUND/S1FORI2IVOIDWWJTINTFUNINTW/PROGRAM/FORPREFECT卓越团队40/END/INTMAININTMPRINTF“ENTERM“SCANF“D“,PRINTF“NTHERESULTISDN“,FUNMWWJTRETURN0VOIDWWJTFILEIN,OUTINTCINTTINTOINFOPEN“INDAT“,“R“IFINNULLPRINTF“READFILEERROR“OUTFOPEN“OUTDAT“,“W“IFOUTNULLPRINTF“WRITEFILEERROR“FORC1CINTMAINFORPREFECT卓越团队43INTM,N,K,I0FORM100MVOIDSTRING_COPYCHARSTR_FROM,CHARSTR_TOFORPREFECT卓越团队44INTI0/SPACE/FOR【】STR_FROMI0IINTMAINSTATICCHARARRAY_STR120“IAMATEACHER“CHARARRAY_STR220/SPACE/【】ARRAY_STR1,ARRAY_STR2/SPACE/【】“ARRAY_STR2SN“,ARRAY_STR2RETURN0答案1、STR_TOI2、STRING_COPY3、PRINTF/【程序改错】功能求二分之一的圆面积,函数通过形参得到圆的半径,函数返回二分之一的圆面积。FORPREFECT卓越团队45例如输入圆的半径值19527输出为S598950017。/INCLUDEINCLUDE/FOUND/DOUBLEFUNRDOUBLES/FOUND/S1/2314159RR/FOUND/RETURNRVOIDMAINFLOATXPRINTF“ENTERX“SCANF“F“,PRINTF“SFN“,FUNX答案1、DOUBLEFUNR改为DOUBLEFUNDOUBLER2、S1/2314159RR改为S05314159RR3、RETURNR改为RETURNS/【程序改错】功能求1到10的阶乘的和。FORPREFECT卓越团队46/INCLUDEINTMAININTIINTS0/FOUND/INTFACNFORI1IBCABELSEAC则A的值为()A3B2C1D03在以下给出的表达式中,与DOWHILEE语句中的(E)不等价的表达式是()AE0BE0|ECD9关于RETURN语句,下列正确的说法是()A不能在主函数中出现且在其他函数中均可出现B必须在每个函数中出现C可以再同一个函数中出现多次D只能在除主函数之外的函数中出现一次10下列符号中优先级最高的是()ADEFINEN10INTMAININTI,J,K,T,ANFORI0IAK/【程序改错】功能求两个形参的乘积和商数,并通过形参返回调用程序。例如输入6182和1265,输出为C782023000D4886957/INCLUDEINCLUDE/FOUND/VOIDFUNDOUBLEA,B,DOUBLEX,DOUBLEYFORPREFECT卓越团队50/FOUND/XAB/FOUND/YA/BMAINDOUBLEA,B,C,DPRINTF“ENTERA,B“SCANF“LFLF“,FUNA,B,PRINTF“CFDFN“,C,D答案1、VOIDFUNDOUBLEA,B,DOUBLEX,DOUBLEY改为VOIDFUNDOUBLEA,DOUBLEB,DOUBLEX,DOUBLEY2、XAB改为XAB3、YA/B改为YA/B/【程序改错】功能统计出若干个学生的平均成绩,最低分以及得最低分的人数。例如输入10名学生的成绩分别为92,87,68,56,92,84,67,75,92,66,则输出平均成绩为779,最低分为56,得最低分的人数为1人。/INCLUDEFLOATMIN0INTJ0FLOATFUNFLOATARRAY,INTNINTIFLOATSUM0,AVEMINARRAY0FORPREFECT卓越团队51FORI0IARRAYIMINARRAYI/FOUND/SUMARRAYI/FOUND/AVESUMNFORI0IVOIDWWJTLONGINTFUNINTNFORPREFECT卓越团队52/PROGRAM/END/INTMAININTNLONGINTRESULTSCANF“D“,RESULTFUNNPRINTF“LDN“,RESULTWWJTRETURN0VOIDWWJTFILEIN,OUTINTIINTIINLONGINTIOUTINFOPEN“INDAT“,“R“IFINNULLPRINTF“PLEASEVERIFYTHECURRERNTDIRITMAYBECHANGED“OUTFOPEN“OUTDAT“,“W“IFOUTNULLPRINTF“PLEASEVERIFYTHECURRENTDIRITMAYBECHANGED“FORPREFECT卓越团队53FORI0I0ID、I1MIFIBABIFACAC则A的值为()A、1B、2C、3D、不一定10、在C语言程序中()A、函数的定义可以嵌套,但函数的调用不可以嵌套B、函数的定义不可以嵌套,但函数的调用可以嵌套C、函数的定义和函数的调用均可以嵌套D、函数的定义和函数的调用均不可以嵌套判断和单选题答案一、1、N2、N3、N4、Y5、N二、1、A2、A3、C4、B5、C6、B7、D8、D9、A10、B/【程序填空】第一题功能打印出如下字母塔。最后一行字母前无空格FORPREFECT卓越团队55ABBBCCCCCDDDDDDD/INCLUDEINTMAININTI,J,K/SPACE/FORI0【】IFORJ0JINTMAININTN,I,JPRINTF“ENTERINTNUMBER,WITH0TOENDN“IJ0SCANF“D“,FORPREFECT卓越团队56WHILEN0/SPACE/IFN0I【】/SPACE/IFNVOIDMAIN/FOUND/INTI,S;P,NPRINTF“ENTERNN“/FOUND/SCANF“D“,NSP0/FOUND/FORI1IDOUBLEAVERAGEDOUBLEARRAY10INTIDOUBLEAVER,SUMARRAY0/FOUND/FORI0IDEFINENMAX50INTMAININTI,K,M,N,NUMNMAX,PPRINTF“PLEASEINPUTTHETOTALOFNUMBERSI答案2I1或1I答案3PI或IP答案4P0或0P第2题(150分)题号34/【程序填空】功能输入某年某月某日,判断这一天是这一年的第几天/FORPREFECT卓越团队60INCLUDEINTMAININTDAY,MONTH,YEAR,SUM,LEAPPRINTF“NPLEASEINPUTYEAR,MONTH,DAYN“SCANF“D,D,D“,SWITCHMONTH/从月份得出已过多少天/CASE1SUM0BREAKCASE2SUM31BREAKCASE3SUM59BREAK/SPACE/CASE4【】BREAKCASE5SUM120BREAKCASE6SUM151BREAKCASE7SUM181BREAKCASE8SUM212BREAKCASE9SUM243BREAKCASE10SUM273BREAKCASE11SUM304BREAKCASE12SUM334BREAKDEFAULTPRINTF“DATAERROR“BREAK/SPACE/【】/再加上日期数/SPACE/IFYEAR4000|YEAR40【】/判断是否闰年/LEAP1ELSEFORPREFECT卓越团队61LEAP0/SPACE/IFLEAP1【】SUMPRINTF“ITISTHEDTHDAY“,SUMRETURN0答案答案1SUM90答案2SUMSUMDAY或SUMDAYSUM或SUMDAY答案3JCHARTFORI0INUMJ/FOUND/IFSISJTSISISJSJTMAINCHARS10PRINTF“输入8个字符的字符串“GETSSFUNS,8PRINTF“NS“,S答案答案1INTI,J答案2FORJI1JSI第2题(150分)题号41/【程序改错】功能以下程序能求出满足条件1122NNINTMAININTN,S/FOUND/SN0/FOUND/WHILES1000N/FOUND/SNNPRINTF“NDN“,N1RETURN0答案答案1SN0或S0,N0或FORPREFECT卓越团队64S0,N0或NS0或S0N0答案2WHILESS答案3SNN或SSNN或SSNN三、程序设计共2题(共计40分)第1题(200分)题号380/【程序设计】功能编写函数FUN其功能是根据整型形参M,计算如下公式的值Y11/31/51/71/2M1例如若M9,则应输出2133256/INCLUDEFLOATFUNINTM/PROGRAM/END/FORPREFECT卓越团队65INTMAININTNPRINTF“ENTERN“SCANF“D“,PRINTF“NTHERESULTIS1FN“,FUNNRETURN0答案DOUBLEY1INTIFORI1IINTFUNCHARP1/PROGRAM/END/FORPREFECT卓越团队66INTMAINCHARP,A20INTLENPAPRINTF“PLEASEINPUTASTRINGN“GETSPRETURN0LENFUNPPRINTF“THESTRINGSLENGTHISDN“,LEN答案CHARPINTN0PP1WHILEPNRETURNN第七套所属语言C语言试卷方案TC_1204092119试卷总分100分共有题型3种一、程序填空共2题(共计30分)第1题(150分)题号66/【程序填空】功能要求输出如下结果A,B65,66/INCLUDEINTMAINFORPREFECT卓越团队67/SPACE/CHARA,【】/SPACE/A【】BBAA32/SPACE/BB【】PRINTF“C,CND,DN“,A,B,A,BRETURN0答案答案1B答案2A或97答案332第2题(150分)题号166/【程序填空】功能编写一个程序,从键盘接收一个字符串,然后按照字符顺序从小到大进行排序,并删除重复的字符。/INCLUDEINCLUDEINTMAINCHARSTR100,P,Q,R,CPRINTF“INPUTASTRING“FORPREFECT卓越团队68GETSSTR/SPACE/FORP【】PP/RISTHEBIGGESTCHARATMOMENT/FORQRPQQIFRQRQIFRP/SWAPRANDP/CR/SPACE/【】PCFORPSTRPP/SPACE/FORQPP【】QQSTRCPYP1,Q/SPACE/PRINTF“OUTPUTSNN“,【】RETURN0答案答案1STR答案2RP答案3答案4STRFORPREFECT卓越团队69二、程序改错共2题(共计30分)第1题(150分)题号350/【程序改错】功能计算正整数NUM的各位上的数字之积。例如若输入252,则输出应该是20。若输入202,则输出应该是0。/INCLUDEINCLUDELONGFUNLONGNUM/FOUND/LONGK1DOKNUM10/FOUND/NUM10/FOUND/WHILENUMRETURNKMAINLONGNPRINTF“PLEASEENTERANUMBER“SCANF“LD“,PRINTF“NLDN“,FUNN答案答案1LONGK1答案2NUM/10FORPREFECT卓越团队70答案3WHILENUM或WHILENUM0第2题(150分)题号28/【程序改错】功能利用条件运算符的嵌套来完成此题学习成绩90分的同学用A表示,7089分之间的用B表示,6069分之间的用C表示,60分以下的用D表示。/INCLUDEINTMAININTSCORE/FOUND/CHARGRADEPRINTF“PLEASEINPUTASCOREN“/FOUND/SCANF“D“,SCOREIFSCORE100PRINTF“超出范围“ELSE/FOUND/SWITCHSCORECASE9CASE10GRADEABREAKCASE7CASE8GRADEBBREAKCASE6FORPREFECT卓越团队71GRADECBREAK/FOUND/CASEELSEGRADEDPRINTF“DBELONGSTOCN“,SCORE,GRADERETURN0答案答案1CHARGRADE答案2SCANF“D“,答案3SWITCHSCORE/10答案4DEFAULT或CASE0CASE1CASE2CASE3CASE4CASE5三、程序设计共2题(共计40分)第1题(200分)题号83/【程序设计】功能编写函数FUN,要求从字符串中删除指定的字符区分大、小。例如若程序执行时输入字符串为TURBOCANDBORLANDC从键盘上输入字符N,则输出后变为TURBOCADBORLADC,如果输入的字符在字符串中不存在,则字符串照原样输出。/INCLUDEFORPREFECT卓越团队72VOIDFUNCHARS,INTC/PROGRAM/END/VOIDMAINSTATICCHARSTR“TURBOCANDBORLANDC“CHARCHPRINTF“原始字符串SN“,STRPRINTF“输入一个字符“SCANF“C“,FUNSTR,CHPRINTF“STRSN“,STR答案CHARQSFORQQIFQCSQS0第2题(200分)题号360/【程序设计】功能编写程序求无理数E的值并输出。计算公式为E11/11/21/31/N当1/NFORPREFECT卓越团队73INTMAINFLOATFUNPRINTF“无理数E的值是FN“,FUNRETURN0FLOATFUN/PROGRAM/END/答案LONGINTJINTI,KDOUBLEE,JCI1E00JC10WHILEJC0000001EEJCJ1FORK1KINTMAINVOIDCHARSTRING256INTI/SPACE/FORI0IINTFUNCHARSUBSTR,CHARSTRINTI,J,K,NUM0FORI0STRII/SPACE/FORJI,K0SUBSTRKSTRJ【】,J/SPACE/IFSUBSTR【】0NUM/SPACE/【】RETURNNUMINTMAINCHARSTR80,SUBSTR80PRINTF“INPUTASTRING“FORPREFECT卓越团队76GETSSTRPRINTF“INPUTASUBSTRING“GETSSUBSTR/SPACE/PRINTF“DN“,【】RETURN0答案答案1K或K或KK1或K1或K1K答案2K1或1K答案3BREAK或CONTINUE答案4FUNSUBSTR,STR二、程序改错共2题(共计30分)第1题(150分)题号150/【程序改错】功能利用二维数组输出如图所示的图形。FORPREFECT卓越团队77/INCLUDEINCLUDE/FOUND/DEFINEN7MAINCHARANNINTI,J,ZFORI0IDOUBLEFUNINTMDOUBLEY10INTI/FOUND/FORI2III或FORI2III或FORI21MII答案2Y10/II或YY10/II或Y10/FLOATII或YY10/FLOATII或YY10/I/I或YY10/FLOATI/FLOATI或YY1/DOUBLEII或Y1/DOUBLEII答案3RETURNYFORPREFECT卓越团队80或RETURNY或RETURNY三、程序设计共2题(共计40分)第1题(200分)题号349/【程序设计】功能编写函数FUN判断一个整数能否同时被3和5整除,若能则返回值为1,否则为0。调用该函数求出15300之间能同时被3和5整除的数的个数。/INCLUDEINTSUMINTN/PROGRAM/END/INTMAININTI,S0FORI15I10/INCLUDEINTFUNINTN/PROGRAM/END/VOIDMAININTX,YPRINTF“ENTERX“SCANF“D“,YFUNXPRINTF“XD,YDN“,X,Y答案INTMIFN10IFN10M5ELSEM0ELSEM5RETURNM第九套/【程序填空】下面程序的功能是对给定的两个字符串S1和S2,在S1中查找S2中的任意一个字符首次出现的位置。如果找到则输出这个位置在S1中对应的下标,否则输出“NULL“。/INCLUDEINTMAINCONSTCHARS1“TODAYISNOV11,2011“CONSTCHARS2“RAIN“CONSTCHARPSZ1,PSZ2INTKPRINTF“S1“S“N“,S1PRINTF“S2“S“N“,S2FORPSZ1S1PSZ1PSZ1/SPACE/FORPSZ2S2PSZ2【】/SPACE/IFPSZ1【】K0BREAK/SPACE/IF【】/如果找到匹配/FORPREFECT卓越团队83/SPACE/PRINTF“MATCHFOUNDS1DCN“,【】,S1PSZ1S11ELSEPRINTF“NULLN“RETURN0FORPREFECT卓越团队84第十套/【程序填空】功能两个乒乓球队进行比赛,各出三人。甲队为A,B,C三人,乙队为X,Y,Z三人。已抽签决定比赛名单。有人向队员打听比赛的名单。A说他不和X比,C说他不和Z比,请编程序找出三队赛手的名单。/INCLUDEINTMAINCHARI,J,K/I是A的对手,J是B的对手,K是C的对手/FORIXIINCLUDEINTFUNINTM/FOUND/INTIKFORIM1IFORK2KINCLUDELONGFUNINTNLONGA1,B1,C1,D1,K/FOUND/FORK4KVOIDWWJTINTSUBINTM/PROGRAM/END/INTMAININTIFORI100IVOIDWWJTVOIDCOPYCHARSTR1,CHARSTR2/PROGRAM/END/INTMAINVOIDCOPYCHARSTR1,CHARSTR2CHARC140,C240GETSC1COPYC1,C2PUTSC2WWJTRETURN0VOIDWWJTFILEIN,OUTCHARI100CHARO100INTKINFOPEN“INDAT“,“R“IFINNULLPRINTF“READFILEERROR“FORPREFECT卓越团队90OUTFOPEN“OUTDAT“,“W“IFOUTNULLPRINTF“WRITEFILEERROR“FORK1KINCLUDE“CTYPEH“INCLUDE“STRINGH“VOIDUPFSTCHARP/SPACE/IF【】/UPPERTHEFIRSTCHAROFTHESTRING/PTOUPPERPPFORPREFECT卓越团队91/SPACE/FORP【】/SEARCHTHEWHOLESTRING/SPACE/IFP1【】PPTOUPPERPINTMAINCHARCHRSTR81PRINTF“NPLEASEENTERASTRING“GETSCHRSTRPRINTF“NNBEFORECHANGINGNS“,CHRSTRUPFSTCHRSTR/SPACE/PRINTF“NAFTERCHANGINGNS“,【】RETURN0/【程序填空】功能写一个函数,求一个字符串的长度,不允许使用求字符串长度的库函数。在MAIN函数中输入字符串,并输出其长度。/INCLUDEINTMAININTLENGTHCHARPINTLENCHARSTR20FORPREFECT卓越团队92PRINTF“PLEASEINPUTASTRINGN“GETSSTR/SPACE/LENLENGTH【】PRINTF“THESTRINGHASDCHARACTERS“,LENRETURN0/SPACE/【】CHARPINTNN0WHILEP0/SPACE/【】/SPACE/【】RETURNN/【程序改错】功能根据整型形参M,计算某一数据项的值。Y1/1001001/2002001/3003001/MM例如若M2000,则应输出0000160。/INCLUDEINCLUDE/FOUND/FUNINTMDOUBLEY0,DINTIFORPREFECT卓越团队93/FOUND/FORI100,IDOUBLEFUNINTMDOUBLEY0INTI/FOUND/FORI1IINCLUDE“CONIOH“VOIDWWJTFLOATFUNFLOATH/PROGRAM/END/VOIDMAINFLOATMPRINTF“ENTERM“SCANF“F“,PRINTF“NTHERESULTIS82FN“,FUNMWWJTVOIDWWJTFILEIN,OUTINTSFLOATTDOUBLEOINFOPEN“INDAT“,“R“FORPREFECT卓越团队96IFINNULLPRINTF“READFILEERROR“OUTFOPEN“OUTDAT“,“W“IFOUTNULLPRINTF“WRITEFILEERROR“FORS1SINCLUDEDEFINEM3DEFINEN4VOIDWWJTVOIDFUNINTTTMN,INTPPN/PROGRAM/END/INTMAININTTMN22,45,56,30,19,33,45,38,20,22,66,40INTPN,I,J,KPRINTF“THEORIGINALDATAISN“FORI0III或FORI2MIIY10/2I3第十二套/【程序填空】功能输入一个整数,计算它可能是哪两个整数的平方和,并打印结果数据。如34是5和3或3和5的平方和。/FORPREFECT卓越团队99INCLUDE/FORI/OFUNCTIONS/INCLUDE/FORATOI/INCLUDE/FORSQRT/INTMAININTGIVEN/THEGIVENNUMBER/INTROW,COLUMN/ROWANDCOLUMNINDICATORS/INTCOUNT/NUMBEROFSOLUTIONS/CHARLINE100PRINTF“NREPRESENTINGAGIVENNUMBERASTHESUMOFTWOSQUARES“PRINTF“NN“PRINTF“NANINTEGERPLEASE“GETSLINEGIVENATOILINEPRINTF“NCOUNTXY“PRINTF“N“ROW1/STARTSFROMFARENOUGH/COLUMNINTSQRTDOUBLEGIVEN05COUNT0/SOSOLUTIONYET/WHILEROW0/SCANDOWN/IFROWROWCOLUMNCOLUMNGIVEN/SPACE/【】PRINTF“N5D7D7D“,COUNT,ROW,COLUMNROWCOLUMNELSEIFROWROWCOLUMNCOLUMNGIVEN/SPACE/【】ELSE/SPACE/【】/SPACE/IFCOUNT【】PRINTF“NNSORRY,NOANSWERFOUND“ELSEPRINTF“NNTHEREAREDPOSSIBLEANSWERS“,COUNTRETURN0FORPREFECT卓越团队100/【程序填空】功能编写函数JOINS1,S2将两个字符串连接为一个字符串,不许使用库函数STRCAT。/INCLUDEINCLUDE“STRINGH“VOIDJOINCHARS1,CHARS2INTI,J/SPACE/【】/SPACE/FORI0【】0IS1IJS2I/SPACE/S1IJ【】INTMAINCHARSTR180,STR240GETSSTR1GETSSTR2PUTSSTR1PUTSSTR2/SPACE/【】PUTSSTR1RETURN0/【程序改错】功能将A所指字符串中的字符和B所指字符串中的字符,按排列的顺序交叉合并到C所指数组中,过长的剩余字符接在FORPREFECT卓越团队101C所指数组的尾部。例如当A所指字符串中的内容为“ABCDEFG”,B所指字符串中的内容为“1234”时,C所指数组中的内容应该为“A1B2C3D4EFG”;而当A所指字符串中的内容为“1234”,B所指字符串中的内容为“ABCDEFG”时,C所指数组中的内容应该为“1A2B3C4DEFG”。/INCLUDEINCLUDEINCLUDE/FOUND/FUNCHARA,CHARB,CHARCWHILEACACBCBIFA0/FOUND/WHILEBCBCBELSE/FOUND/WHILEACACAC0MAINCHARS1100,S2100,T200PRINTF“NENTERS1STRING“SCANF“S“,S1PRINTF“NENTERS2STRING“SCANF“S“,S2FUNS1,S2,TPRINTF“NTHERESULTISSN“,T/FORPREFECT卓越团队102【程序改错】功能输入10个数,要求输出这10个数的平均值/INCLUDEDOUBLEAVERAGEDOUBLEARRAY10INTIDOUBLEAVER,SUMARRAY0/FOUND/FORI0IVOIDWWJTINTROW,COLINTFUNINTARRAYNM/PROGRAM/END/VOIDMAININTANM,I,J,MAXPRINTF“INPUTAARRAY“FORPREFECT卓越团队104FORI0I

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

最新文档

评论

0/150

提交评论