还剩47页未读,继续阅读
本资源只提供10页预览,全部文档请下载后查看!喜欢就下载吧,查找使用更方便
文本内容:
一、判断共10题(共计10分)第1题(
1.0分)题号:1488函数即可以嵌套定义又可以嵌套调用.答案N第2题(
1.0分)题号:1256unsigned和void在C中都是保留字.答案Y第3题(
1.0分)题号:1280表达式++i表示对变量i自加
1.答案Y第4题(
1.0分)题号:1282C语言源程序的基本结构单位是__in函数.答案N第5题(
1.0分)题号:1276字符常量的长度肯定为
1.答案Y第6题(
1.0分)题号:1469chara[]={abc};charb[]={abc};数组a和数组b占用的内存空间大小不一样.答案Y第7题(
1.0分)题号:1249若有inti=10j=2;则执行完i*=j+8;后i的值为
28.答案N第8题(
1.0分)题号:33inti*p=i;是正确的C说明答案Y第9题(
1.0分)题号:1250While循环语句的循环体至少执行一次.答案N第10题(
1.0分)题号:1510有数组定义inta
[2]
[2]={{1}{23}};则a
[0]
[1]的值为
0.答案Y
二、单项选择共30题(共计30分)第1题(
1.0分)题号:456执行下面程序后,输出结果是()__in{a=45b=27c=0;c=__xab;printf%d\nc;}int__xxyintxy;{intz;ifxyz=x;elsez=y;returnz;}A:45B:27C:18D:72答案A第2题(
1.0分)题号:437下列数组说明中,正确的是()A:intarray[]
[4];B:intarray[][];C:intarray[][]
[5];D:intarray
[3][];答案A第3题(
1.0分)题号:2396下面有关for循环的正确描述是A:for循环只能用于循环次数已经确定的情况B:for循环是先执行循环体语句后判断表达式C:在for循环中不能用break语句跳出循环体D:for循环的循环体语句中可以包含多条语句但必须用花括号括起来答案D第4题(
1.0分)题号:2817以下程序的输出结果是.__in{intijka=3b=2;i=--a==b++--a:++b;j=a++;k=b;printfi=%dj=%dk=%d\nijk;}A:i=2j=1k=3B:i=1j=1k=2C:i=4j=2k=4D:i=1j=1k=3答案D第5题(
1.0分)题号:2866若有下列定义则对a数组元素地址的正确引用是.inta
[5]*p=a;A:*p+5B:*p+2C:*a+2D:*a
[5]答案C第6题(
1.0分)题号:711下列选项中正确的语句组是()A:chars
[8];s={Bei___g};B:char*s;s={Bei___g};C:chars
[8];s=Bei___g;D:char*s;s=Bei___g;答案D第7题(
1.0分)题号:3191若变量ai已正确定义且i已正确赋值合法的语句是A:a=inti;B:a==1C:++i;D:a=a++=5;答案C第8题(
1.0分)题号:490以下字符中不是转义字符的是()A:\aB:\bC:\cD:\\答案C第9题(
1.0分)题号:184下列定义不正确的是()A:#definePI
3.141592B:#defineS345C:int__xxy;intxy;{}D:staticcharc;答案C第10题(
1.0分)题号:3028charh*s=h;可将字符H通过指针存入变量h中的语句是.A:*s=H;B:*s=H;C:s=H;D:s=H答案B第11题(
1.0分)题号:690设char型变量x中的值为10100111,则表达式2+x^~3的值是()A:10101001B:10101000C:11111101D:01010101答案D第12题(
1.0分)题号:2381设以下变量均为int类型表达式的值不为7的是A:x=y=6x+yx+1B:x=y=6x+yy+1C:x=6x+1y=6x+yD:y=6y+1x=yx+1答案C第13题(
1.0分)题号:3124若有说明inta
[3]
[4];则对a数组元素的正确引用是.A:a
[2]
[4]B:a
[13]C:a[1+1]
[0]D:a21答案C第14题(
1.0分)题号:679在C语言中,形参的缺省存储类是()A:autoB:registerC:staticD:extern答案A第15题(
1.0分)题号:1343C语言源程序的基本单位是.A:过程B:函数C:子程序D:标识符答案B第16题(
1.0分)题号:3023C语言程序中必须有的函数是.A:#includestdio.hB:__inC:printfD:scanf答案B第17题(
1.0分)题号:3228有定义:inta=8b=5c;执行语句c=a/b+
0.4;后c的值为A:
1.4B:1C:
2.0D:2答案B第18题(
1.0分)题号:640以下对二维数组a的正确说明是()A:inta
[3][]B:floata34C:doublea
[1]
[4]D:floata34答案C第19题(
1.0分)题号:2884以下标识符中不能作为合法的C用户定义标识符的是.A:answerB:toC:signedD:_if答案C第20题(
1.0分)题号:652在C语言中,引用数组元素时,其数组下标的数据类型允许是()A:整型常量B:整型表达式C:整型常量或整型表达式D:任何类型的表达式答案C第21题(
1.0分)题号:381以下标识符中,不能作为合法的C用户定义标识符的是()A:answerB:toC:signedD:_if答案C第22题(
1.0分)题号:2__8已知year为整型变量不能使表达式year%4==0year%100!=0||year%400==0的值为真的数据是.A:1990B:1992C:1996D:2000答案A第23题(
1.0分)题号:177以下描述中,正确的是()A:预处理是指完成宏替换和文件包含中指定的文件的调用B:预处理指令只能位于C源文件的开始C:C源程序中凡是行首以#标识的控制行都是预处理指令D:预处理就是完成C编译程序对C源程序第一遍扫描为编译词法和语法分析作准备答案C第24题(
1.0分)题号:156执行下列语句后的输出为()intj=-1;ifj=1printf****\n;elseprintf%%%%\n;A:****B:%%%%C:%%%%cD:有错执行不正确答案A第25题(
1.0分)题号:2850以下函数调用语句中实参的个数是.ex__v1v2v3v4v5v6;A:3B:4C:5D:6答案A第26题(
1.0分)题号:506以下程序段的输出结果为()fori=4;i1;i--forj=1;ji;j++putchar#;A:无B:######C:#D:###答案B第27题(
1.0分)题号:2830下列程序的输出结果是.__in{intx=1y=0a=0b=0;switchx{case1:switchy{case0:a++;break;case1:b++;break;}case2:a++;b++;break;case3:a++;b++;break;}printfa=%db=%d\nab;}A:a=1b=0B:a=2b=1C:a=1b=1D:a=2b=2答案B第28题(
1.0分)题号:573C语言中运算对象必须是整型的运算符是()A:%=B:/C:=D:〈=答案A第29题(
1.0分)题号:647以下能对二维数组a进行正确初始化的语句是()A:inta
[2][]={{101}{523}};B:inta[]
[3]={{123}{456}};C:inta
[2]
[4]={{123}{45}{6}};D:inta[]
[3]={{101}{}{11}};答案B第30题(
1.0分)题号:3135以下数组定义中不正确的是.A:inta
[2]
[3];B:intb[]
[3]={0123};C:intc
[100]
[100]={0};D:intd
[3][]={{12}{123}{1234}};答案D
三、程序填空共2题(共计24分)第1题(
12.0分)题号:417/*-------------------------------------------------------【程序填空】---------------------------------------------------------题目利用全局变量计算长方体的体积及三个面的__-------------------------------------------------------*/ints1s2s3;intvsintaintbintc{intv;/***********SPA__***********/v=【】;s1=a*b;/***********SPA__***********/s2=【】;s3=a*c;returnv;}__in{intvlwh;clrscr;printf\ninputlengthwidthandheight;/***********SPA__***********/scanf%d%d%d【】wh;/***********SPA__***********/v=【】;printfv=%ds1=%ds2=%ds3=%d\nvs1s2s3;getch;}答案=======答案1=======a*b*c=========或=========a*b*c=======答案2=======b*c=========或=========b*c=======答案3=======l=======答案4=======vslwh=========或=========vslwh第2题(
12.0分)题号:441/*-------------------------------------------------------【程序填空】---------------------------------------------------------题目给定程序中函数fun的功能是从低位开始取出长整型变量s中奇数位上的数,依次构成一个新数放在t中-------------------------------------------------------*/#includeconio.h#includestdio.hvoidfunlongslong*t{longsl=10;s/=10;/***********SPA__***********/*t=s【】10;whiles0/***********SPA__***********/{s=【】;/***********SPA__***********/*t=s%10*sl【】;/***********SPA__***********/sl=sl【】10;}}__in{longst;clrscr;printf\nPleaseenters:;scanf%lds;funst;printfTheresultis:%ld\nt;}答案=======答案1=======%=======答案2=======s/100=======答案3=======+*t=======答案4=======*
四、程序改错共2题(共计22分)第1题(
11.0分)题号:383/*------------------------------------------------------【程序改错】--------------------------------------------------------题目给定程序的功能是读入一行英文文本,将其中每个单词的最后一个字母改成大写,然后输出此文本行(这里的“单词”是指由空格隔开的字符串)例如,若输入Iamastudenttotaketheexamination.,则应输出IaMAstudenTtOtakEthEexamination.--------------------------------------------------------注意不可以增加或删除程序行,也不可以更改程序的结构------------------------------------------------------*/#includeconio.h#includestdio.h#includectype.h#includestring.hup1stchar*p{/**********FOUND**********/integerk=0;for;*p;p++ifk/**********FOUND**********/{if*p={k=0;/**********FOUND**********/*p-1=toupper*p-1;}}elseif*p!=k=1;*p-1=toupper*p-1;}__in{charchrstr
[81];printf\nPleaseenterastring:;getschrstr;printf\n\nBeforechanging:\n%schrstr;up1stchrstr;printf\nAfterchanging:\n%schrstr;}答案=======答案1=======intk=0;=======答案2======={if*p=========答案3=======*p-1=toupper*p-1;第2题(
11.0分)题号:431/*------------------------------------------------------【程序改错】--------------------------------------------------------题目编写函数fun求1000以内所有8的倍数之和--------------------------------------------------------注意不可以增加或删除程序行,也不可以更改程序的结构------------------------------------------------------*/#includestdio.h#defineN1000__in{intsum;sum=fun8;printf%d以内所有%d的倍数之和为%d\nN8sum;getch;}intfunintm{/**********FOUND**********/ints=0;i;/**********FOUND**********/fori=1;iN;i++/**********FOUND**********/ifi/m==0s+=i;returns;}答案=======答案1=======ints=0i;=======答案2=======fori=1;iN;i++=======答案3=======ifi%m==0
五、程序设计共1题(共计14分)第1题(
14.0分)题号:390/*------------------------------------------------【程序设计】--------------------------------------------------题目求一批数中最大值和最小值的差--------------------------------------------------注意部分源程序给出如下请勿改动主函数__in和其它函数中的任何内容,仅在函数的花括号中填入所编写的若干语句------------------------------------------------*/int__x_mininta[]intn{/**********Program**********//**********End**********/}#defineN30#includestdlib.h#includestdio.h__in{inta[N]ik;clrscr;fori=0;iN;i++a[i]=random51+10;fori=0;iN;i++{printf%5da[i];ifi+1%5==0printf\n;}k=__x_minaN;printftheresultis:%d\nk;yzj;getch;}yzj{FILE*IN*OUT;intn;inti
[30];into;IN=fopenin.datr;ifIN==NULL{printfReadFileError;}OUT=fopenout.datw;ifOUT==NULL{printfWriteFileError;}forn=0;n5;n++{fscanfIN%di[n];}o=__x_mini5;fprintfOUT%d\no;fcloseIN;fcloseOUT;}答案----------------------inti__xmin;__x=min=a
[0];fori=1;in;i++ifa[i]__x__x=a[i];elseifa[i]minmin=a[i];return__x-min;----------------------
一、判断共10题(共计10分)第1题(
1.0分)题号:3473+12的值是15答案N第2题(
1.0分)题号:1468在C语言中整型数据在内存中占2个字节.答案N第3题(
1.0分)题号:19C语言本身不提供输入输出语句,输入和输出操作是由函数来实现的答案Y第4题(
1.0分)题号:1512将一个字符串abc赋给字符串变量str的方法是str=abc.答案N第5题(
1.0分)题号:1501以数组名作函数参数时实参数组与形参数组都不必定义长度因此实参与形参的结合方式是地址结合与数组长度无关.答案N第6题(
1.0分)题号:18a=b=4+c=6是一个合法的赋值表达式答案Y第7题(
1.0分)题号:1262C语言规定:在一个源程序中__in函数的位置必须在最开始.答案N第8题(
1.0分)题号:1479C程序中的一个变量可以被定义为两个或多个不同的类型.答案N第9题(
1.0分)题号:23若a=3b=2c=1则关系表达式ab==c的值为真答案Y第10题(
1.0分)题号:1502对二维数组a来说由于a+1与*a+1的值相等因此二者的含义是一样的.答案N
二、单项选择共30题(共计30分)第1题(
1.0分)题号:177以下描述中,正确的是()A:预处理是指完成宏替换和文件包含中指定的文件的调用B:预处理指令只能位于C源文件的开始C:C源程序中凡是行首以#标识的控制行都是预处理指令D:预处理就是完成C编译程序对C源程序第一遍扫描为编译词法和语法分析作准备答案C第2题(
1.0分)题号:27__设C语言中int类型数据占4个字节则short类型数据占.A:1个字节B:2个字节C:4个字节D:8个字节答案B第3题(
1.0分)题号:693以下各选项企图说明一种新的类型名,其中正确的是()A:typedefv1int;B:typedefv2=int;C:typedefintv3;D:typedefv4:int;答案C第4题(
1.0分)题号:104以下运算符中,优先级最高的运算符是()A:||B:%C:!D:==答案C第5题(
1.0分)题号:138以下程序的输出结果是()__in{intijka=3b=2;i=--a==b++--a:++b;j=a++;k=b;printfi=%dj=%dk=%d\nijk;}A:i=2j=1k=3B:i=1j=1k=2C:i=4j=2k=4D:i=1j=1k=3答案D第6题(
1.0分)题号:2907以下程序段的执行结果是.doublex;x=
218.82631;printf%-
6.2e\nx;A:输出格式描述符的域宽不够不能输出B:输出为
21.38e+01C:输出为
2.2e+02D:输出为-
2.14e2答案C第7题(
1.0分)题号:152以下程序的运行结果是()__in{intn;forn=1;n=10;n++{ifn%3==0continue;printf%dn;}}A:12457810B:369C:12D:1234567__0答案A第8题(
1.0分)题号:411下列程序的输出结果为()__in{intm=7n=4;floata=
38.4b=
6.4x;x=m/2+n*a/b+1/2;printf%f\nx;}A:
27.000000B:
27.500000C:
28.000000D:
28.500000答案A第9题(
1.0分)题号:584设有说明:charw;intx;floaty;doublez;则表达式w*x+z-y值的数据类型为()A:floatB:charC:intD:double答案D第10题(
1.0分)题号:208下列各m的值中,能使m%3==2m%5==3m%7==2为真的是()A:8B:23C:17D:6答案B第11题(
1.0分)题号:2962若已定义x为int类型变量下列语句中说明指针变量p的正确语句是.A:intp=x;B:int*p=x;C:int*p=x;D:*p=*x;答案C第12题(
1.0分)题号:___2以下正确的说法是:在C语言中.A:实参和与其对应的形参各占用__的存储单元B:实参和与其对应的形参共占用一个存储单元C:只有当实参和与其对应的形参同名时才共占用存储单元D:形参是虚拟的不占用存储单元答案A第13题(
1.0分)题号:3156sizeoffloat是.A:一种函数调用B:一个不合法的表达式C:一个整型表达式D:一个浮点表达式答案C第14题(
1.0分)题号:3119以下对二维数组a的正确说明是.A:inta
[3][]B:floata34C:doublea
[1]
[4]D:floata34答案C第15题(
1.0分)题号:3218若有以下定义则能使值为3的表达式是intk=7x=12;A:x%=k%=5B:x%=k-k%5C:x%=k-k%5D:x%=k-k%=5答案D第16题(
1.0分)题号:672C语言允许函数类型缺省定义,此时函数值隐含的类型是()A:floatB:intC:longD:double答案B第17题(
1.0分)题号:2796先用语句定义字符型变量c然后要将字符a赋给c则下列语句中正确的是.A:c=a;B:c=a;C:c=97;D:C=97答案A第18题(
1.0分)题号:2923经过以下语句定义后表达式z+=xy++x:++y的值为.intx=1y=2z=3;A:2B:3C:6D:5答案C第19题(
1.0分)题号:526用户定义的函数不可以调用的函数是()A:非整型返回值的B:本文件外的C:__in函数D:本函数下面定义的答案C第20题(
1.0分)题号:2567以下标识符中不能作为合法的C用户定义标识符的是.A:a3_b3B:voidC:_123D:IF答案B第21题(
1.0分)题号:2401下面程序段的输出结果为intab;b=a=3*5a*4a*5;printf%db;A:60B:75C:65D:无确定值答案B第22题(
1.0分)题号:3063若有定义:inta=7;floatx=
2.5y=
4.7;则表达式x+a%3*intx+y%2/4的值是.A:
2.500000B:
2.750000C:
3.500000D:
0.000000答案A第23题(
1.0分)题号:3129若有说明:inta[]
[4]={00};则下面不正确的叙述是.A:数组a的每个元素都可得到初值0B:二维数组a的第一维大小为1C:因为二维数组a中第二维大小的值除经初值个数的商为1故数组a的行数为1D:有元素a
[0]
[0]和a
[0]
[1]可得到初值0其余元素均得不到初值0答案D第24题(
1.0分)题号:3186若有说明:intij=2*p=i;则能完成i=j赋值功能的语句是.A:i=*p;B:*p=*j;C:i=j;D:i=**p;答案B第25题(
1.0分)题号:3016与实际参数为实型数组名相对应的形式参数不可以定义为.A:floata[];B:float*a;C:floata;D:float*a
[3];答案C第26题(
1.0分)题号:515intija
[2]
[3];按照数组a的元素在内存的排列次序,不能将数123456存入a数组的是()A:fori=0;i2;i++forj=0;j3;j++a[i][j]=i*3+j+1;B:fori=0;i3;i++forj=0;j2;j++a[j][i]=j*3+i+1;C:fori=0;i6;i++a[i/3][i%3]=i+1;D:fori=1;i=6;i++a[i][i]=i;答案D第27题(
1.0分)题号:2799下列运算符中不属于关系运算符的是.A:B:C:=D:!答案D第28题(
1.0分)题号:662C语言中,函数值类型的定义可以缺省,此时函数值的隐含类型是()A:voidB:intC:floatD:double答案B第29题(
1.0分)题号:196若有下列定义,则对a数组元素地址的正确引用是()inta
[5]*p=a;A:*p+5B:*p+2C:*a+2D:*a
[5]答案C第30题(
1.0分)题号:2993下列程序段的输出结果为.inta=7b=9t;t=a*=aba:b;printf%dt;A:7B:9C:63D:49答案C
三、程序填空共2题(共计24分)第1题(
12.0分)题号:591/*如果ab,就将两个数的位置调换;否则,保持不变*/__in{intabtemp;printf\nPleaseinputtwointnumber:;scanf%d%dab;ifab{/***********SPA__***********/【】;/***********SPA__***********/a=【】;b=temp;}printf%d%d\nab;}答案=======答案1=======temp=a=======答案2=======b第2题(
12.0分)题号:30/*-------------------------------------------------------【程序填空】---------------------------------------------------------题目以下程序的功能是用冒泡法对数组a进行由小到大的排序-------------------------------------------------------*/voidfuninta[]intn{intijt;/***********SPA__***********/forj=0;【】;j++/***********SPA__***********/fori=0;【】;i++/***********SPA__***********/if【】{t=a[i];a[i]=a[i+1];a[i+1]=t;}}__in{intia
[10]={37512864109};/***********SPA__***********/【】;fori=0;i10;i++printf%3da[i];}答案=======答案1=======j=n-1=========或=========n-1=j=========或=========j=-1+n=========或=========-1+n=j=========或=========jn=========或=========nj=======答案2=======in-j-1=========或=========n-j-1i=========或=========in-1-j=========或=========n-1-ji=========或=========i=n-j-2=========或=========i=n-2-j=======答案3=======a[i]a[i+1]=========或=========a[i+1]a[i]=======答案4=======funa10
四、程序改错共2题(共计22分)第1题(
11.0分)题号:417/*------------------------------------------------------【程序改错】--------------------------------------------------------题目读取7个数(1-50)的整数值,每读取一个值,程序打印出该值个数的*--------------------------------------------------------注意不可以增加或删除程序行,也不可以更改程序的结构------------------------------------------------------*/#includestdio.h__in{intian=1;/**********FOUND**********/whilen7{do{scanf%da;}/**********FOUND**********/whilea1a50;/**********FOUND**********/fori=0;i=a;i++printf*;printf\n;n++;}getch;}答案=======答案1=======whilen=7=========或=========whilen8=======答案2=======whilea1||a50;=========或=========whilea50||a1;=======答案3=======fori=1;i=a;i++第2题(
11.0分)题号:429/*------------------------------------------------------【程序改错】--------------------------------------------------------题目求0-7这8个数字所能组成的奇数个数--------------------------------------------------------注意不可以增加或删除程序行,也不可以更改程序的结构------------------------------------------------------*/#includestdio.h__in{/**********FOUND**********/longsum=4;s=4;intj;forj=2;j=8;j++/**********FOUND**********/{printf\n%dsum;/**********FOUND**********/ifj2s*=7;elses*=8;sum+=s;}printf\nsum=%ldsum;getch;}答案=======答案1=======longsum=4s=4;=======答案2======={printf\n%ldsum;=======答案3=======ifj=2=========或=========ifj3
五、程序设计共1题(共计14分)第1题(
14.0分)题号:49/*------------------------------------------------【程序设计】--------------------------------------------------题目请用for循环编写编写函数fun,函数的功能是计算n门课程的平均值,计算结果作为函数值返回例如,若有5门课程的成绩是92,76,69,58,88,则函数的值为
76.600000--------------------------------------------------注意部分源程序给出如下请勿改动主函数__in和其它函数中的任何内容,仅在函数fun的花括号中填入所编写的若干语句------------------------------------------------*/#includestdio.hfloatfuninta[]intn{/**********Program**********//**********End**********/}__in{inta[]={9276695888};printfy=%f\nfuna5;yzj;}yzj{FILE*IN*OUT;intiIN
[10]ij;floatfOUT;IN=fopen
18.inr;ifIN==NULL{printfPleaseVerifyTheCurrerntDir..It__yBeChanged;}OUT=fopen
18.outw;ifOUT==NULL{printfPleaseVerifyTheCurrentDir..It__yBeChanged;}forj=0;j10;j++{fori=0;i5;i++fscanfIN%diIN[i];fOUT=funiIN5;fprintfOUT%f\nfOUT;}fcloseIN;fcloseOUT;}答案----------------------inti;floaty=0;fori=0;in;i++y+=a[i];y=y/n;returny;----------------------
一、判断共10题(共计10分)第1题(
1.0分)题号:7在C语言中,此定义和语句是合法的enumaa{a=5bc}bb;bb=enumaa5;答案Y第2题(
1.0分)题号:1475表达式1/4+
2.75的值是
3.答案N第3题(
1.0分)题号:1510有数组定义inta
[2]
[2]={{1}{23}};则a
[0]
[1]的值为
0.答案Y第4题(
1.0分)题号:1262C语言规定:在一个源程序中__in函数的位置必须在最开始.答案N第5题(
1.0分)题号:1263for表达式1;;表达式3可理解为for表达式1;1;表达式
3.答案Y第6题(
1.0分)题号:1512将一个字符串abc赋给字符串变量str的方法是str=abc.答案N第7题(
1.0分)题号:22关系运算符=与==的优先级相同答案N第8题(
1.0分)题号:1252break语句可用于循环体内它将退出该重循环.答案Y第9题(
1.0分)题号:1504语句char*p=TurboC的含义是将字符串赋给字符型指针变量p.答案N第10题(
1.0分)题号:1241在标准C中while和do_while的功能完全相同.答案N
二、单项选择共30题(共计30分)第1题(
1.0分)题号:___8C语言允许函数类型缺省定义此时函数值隐含的类型是.A:floatB:intC:longD:double答案B第2题(
1.0分)题号:624以**于运算符优先顺序的描述中正确的是()A:关系运算符算术运算符赋值运算符逻辑运算符B:逻辑运算符关系运算符算术运算符赋值运算符C:赋值运算符逻辑运算符关系运算符算术运算符D:算术运算符关系运算符赋值运算符逻辑运算符答案C第3题(
1.0分)题号:2943关于return语句下列正确的说法是.A:在主函数和其他函数中均可出现B:必须在每个函数中出现C:可以在同一个函数中出现多次D:只能在除主函数之外的函数中出现一次答案C第4题(
1.0分)题号:458下列定义不正确的是()A:#definePI
3.141592B:#defineS345C:int__xxy;intxy;{}D:staticcharc;答案C第5题(
1.0分)题号:2947C语言程序中若对函数类型未加显式说明则函数的隐含说明类型为.A:voidB:doubleC:intD:char答案C第6题(
1.0分)题号:3177若有说明:int*pm=5n;以下正确的程序段是.A:p=n;scanf%dp;B:p=n;scanf%d*pC:scanf%dn;*p=n;D:p=n;*p=m;答案D第7题(
1.0分)题号:3057设以下变量均为int类型则值不等于7的表达式是.A:x=y=6x+yx+1B:x=y=6x+yy+1C:x=6x+1y=6x+yD:y=6y+1x=yx+1答案C第8题(
1.0分)题号:409若a是float型变量,b是unsigned型变量,以下输入语句中合法的是()A:scanf%
6.2f%dab;B:scanf%f%nab;C:scanf%f%3oab;D:scanf%f%fab;答案C第9题(
1.0分)题号:3088下列选项中合法的C语言关键字是.A:VARB:cherC:integerD:default答案D第10题(
1.0分)题号:533对结构体类型的变量的成员的访问,无论数据类型如何都可使用的运算符是()A:.B:-C:*D:答案A第11题(
1.0分)题号:3212C语言中的标识符只能由字母数字和下划线三种字符组成且第一个字符A:必须为字母B:必须为下划线C:必须为字母或下划线D:可以是字母数字和下划线中任一字符答案C第12题(
1.0分)题号:416以下程序的输出结果为()__in{inti=010j=10;printf%d%d\n++ij--;}A:1110B:910C:0109D:109答案B第13题(
1.0分)题号:542若有int*p=int*__llocsizeofint;则向内存申请到内存空间存入整数123的语句为()A:scanf%dp;B:scanf%dp;C:scanf%d*p;D:scanf%d**p;答案A第14题(
1.0分)题号:464关于指针概念说法不正确的是()A:一个指针变量只能指向同一类型变量B:一个变量的地址称为该变量的指针C:只有同一类型变量的地址才能放到指向该类型变量的指针变量之中D:指针变量可以由整数赋不能用浮点赋答案D第15题(
1.0分)题号:687表达式,0x130x17的值是()A:0x17B:0x13C:0xf8D:0xec答案B第16题(
1.0分)题号:3000inta=1b=2c=3;ifacb=a;a=c;c=b;则c的值为.A:1B:2C:3D:不一定答案B第17题(
1.0分)题号:138以下程序的输出结果是()__in{intijka=3b=2;i=--a==b++--a:++b;j=a++;k=b;printfi=%dj=%dk=%d\nijk;}A:i=2j=1k=3B:i=1j=1k=2C:i=4j=2k=4D:i=1j=1k=3答案D第18题(
1.0分)题号:441下列语句中,不正确的是()A:staticchara
[2]={12};B:staticinta
[2]={12};C:staticchara
[2]={123};D:staticchara
[2]={1};答案C第19题(
1.0分)题号:477以下对枚举类型名的定义中正确的是()A:enuma={summontue};B:enuma{sum=9mon=-1tue};C:enuma={summontue};D:enuma{summontue};答案B第20题(
1.0分)题号:661以下正确的描述是在C语言程序中()A:函数的定义可以嵌套但函数的调用不可以嵌套B:函数的定义不可以嵌套但函数的调用可以嵌套C:函数的定义和函数的调用均不可以嵌套D:函数的定义和函数的调用均可以嵌套答案B第21题(
1.0分)题号:3103以下描述中正确的是.A:由于do-while循环中循环体语句只能是一条可执行语句所以循环体内不能使用复合语句B:do-while循环由do开始用while结束在while表达式后面不能写分号C:在do-while循环体中一定要有能使while后面表达式的值变为零假的操作D:do-while循环中根据情况可以省略while答案C第22题(
1.0分)题号:2994下列表达式中可作为C合法表达式的是.A:
[3210]B:3210C:3=2=1=0D:3/2/1/0答案B第23题(
1.0分)题号:591设有intx=11;则表达式x++*1/3的值是()A:3B:4C:11D:12答案A第24题(
1.0分)题号:622putchar函数可以向终端输出一个()A:整型变量表达式值B:实型变量值C:字符串D:字符或字符型变量值答案D第25题(
1.0分)题号:3232有如下定义#defineD2intx=5;floaty=
3.83;charc=′D′;则下面选项中错误的是A:x++;B:y++;C:c++;D:D++;答案D第26题(
1.0分)题号:196若有下列定义,则对a数组元素地址的正确引用是()inta
[5]*p=a;A:*p+5B:*p+2C:*a+2D:*a
[5]答案C第27题(
1.0分)题号:2377下列数据中不合法的C语言实型数据的是A:
0.123B:123e3C:
2.1e
3.5D:7__.0答案C第28题(
1.0分)题号:2872在位运算中操作数每右移一位其结果相当于.A:操作数乘以2B:操作数除以2C:操作数乘以16D:操作数除以16答案B第29题(
1.0分)题号:685在位运算中,操作数每左移一位,其结果相当于()A:操作数乘以2B:操作数除以2C:操作数除以4D:操作数乘以4答案A第30题(
1.0分)题号:132若ch为char型变量,k为int型变量(已知字符a的ASCII十进制代码为97),则以下程序段的执行结果是()ch=a;k=12;printf%x%ochchk;printfk=%%d\nk;A:因变量类型与格式描述符的类型不匹配,输出无定值B:输出项与格式描述符个数不符,输出为零值或不定值C:61141k=%dD:61141k=%12答案C
三、程序填空共2题(共计24分)第1题(
12.0分)题号:605/*用辗转相除法求解两个整数的最大公约数*/__in{intabr;scanf%d%dab;/***********SPA__***********/【】;whiler!=0{a=b;/***********SPA__***********/【】;r=a%b;}printf%db;}答案=======答案1=======r=a%b=======答案2=======b=r第2题(
12.0分)题号:606/*输出九九乘法表*//*1*1=11*2=21*3=31*4=
4.....1*9=9*//*2*1=12*2=42*3=62*4=
8......2*9=18*/__in{intij;/***********SPA__***********/for【】;i=9;i++{forj=1;j=9;j++/***********SPA__***********/printf%d*%d=%dij【】;printf\n;}}答案=======答案1=======i=1=======答案2=======i*j
四、程序改错共2题(共计22分)第1题(
11.0分)题号:441/*------------------------------------------------------【程序改错】--------------------------------------------------------题目输入字符序列,字符序列以特殊字符“#”结束程序从前向后依次读入字符,并翻译出新的字符输出翻译的规则是如果当前读入的字符是数字符,如果该字符的面值为n,则它的后一个字符包括数字符需重复输出n+1次如果当前读入的字符不是数字符,则输出该字符输出时,以上述一次翻译为一组,不同组间输出用一个空白字符隔开翻译直至当前读入的字符为字符#,结束翻译和输出.--------------------------------------------------------注意不可以增加或删除程序行,也不可以更改程序的结构------------------------------------------------------*/#includestdio.hvoid__in{charchnch;intcount;intk;printfEnterstring.\n;scanf%cch;/**********FOUND**********/whilech=#{ifch=0ch=9{/**********FOUND**********/count=ch-0-1;scanf%cnch;fork=0;kcount;k++printf%cnch;}else/**********FOUND**********/printf%fch;printf;scanf%cch;}printf#\n;}答案=======答案1=======whilech!=#=======答案2=======count=ch-0+1;=======答案3=======printf%cch;第2题(
11.0分)题号:5/*------------------------------------------------------【程序改错】--------------------------------------------------------题目将一个字符串中第m个字符开始的全部字符__成为另一个字符串程序__有4条错误语句,请改正错误--------------------------------------------------------注意不可以增加或删除程序行,也不可以更改程序的结构------------------------------------------------------*/#includestdio.hvoidstrcopychar*str1char*str2intm/**********FOUND**********/charp1p2;intij;/**********FOUND**********/=str1+m;p2=str2;/**********FOUND**********/if*p1;*p2++=*p1++;*p2=\0;}__in{intim;char*p1*p2str1
[80]str2
[80];p1=str1;p2=str2;getsp1;scanf%dm;/**********FOUND**********/strcatstr1
[0]str2
[0]m;putsp1;putsp2;}答案=======答案1======={char*p1*p2;=========或========={char*p2*p1;=======答案2=======p1=str1+m-1;=========或=========p1=-1+str1+m;=======答案3=======while*p1=======答案4=======strcopystr1str2m;
五、程序设计共1题(共计14分)第1题(
14.0分)题号:377/*------------------------------------------------【程序设计】--------------------------------------------------题目编写函数实现两个数据的交换在主函数中输入任意三个数据,调用函数对这三个数据从大到小排序--------------------------------------------------注意部分源程序给出如下请勿改动主函数__in和其它函数中的任何内容,仅在函数的花括号中填入所编写的若干语句------------------------------------------------*/#includestdio.hvoidswapint*aint*b{/**********Program**********//**********End**********/}__in{intxyz;scanf%d%d%dxyz;ifxyswapxy;ifxzswapxz;ifyzswapyz;printf%3d%3d%3dxyz;yzj;getch;}yzj{FILE*IN*OUT;intmn;inti
[2];into;IN=fopenin.datr;ifIN==NULL{printfReadFileError;}OUT=fopenout.datw;ifOUT==NULL{printfWriteFileError;}forn=0;n3;n++{form=0;m2;m++{fscanfIN%di[m];}swapi
[0]i
[1];fprintfOUT%d\ni
[0];fprintfOUT%d\ni
[1];}fcloseIN;fcloseOUT;}答案----------------------intk;k=*a;*a=*b;*b=k;
一、判断共10题(共计10分)第1题(
1.0分)题号:1497字符串只能存放在字符型数组中.答案Y第2题(
1.0分)题号:3若有宏定义#defineSabt=a;a=b;b=t由于变量t没定义,所以此宏定义是错误的答案N第3题(
1.0分)题号:1245在标准C中=是判断两个数是否相等.答案N第4题(
1.0分)题号:1493函数调用可以出现在执行语句中但不能出现在表达式中.答案N第5题(
1.0分)题号:1490strcats1s2函数是将字符串s1__到字符串s2中答案N第6题(
1.0分)题号:21语句scanf%
7.2fa;是一个合法的scanf函数答案N第7题(
1.0分)题号:1507函数若无返回值则它一定无形参.答案N第8题(
1.0分)题号:1参加位运算的数据可以是任何类型的数据答案N第9题(
1.0分)题号:1491静态外部变量只在本文件内可用.答案Y第10题(
1.0分)题号:1243C语言是一种结构化程序设计语言.答案Y
二、单项选择共30题(共计30分)第1题(
1.0分)题号:3092语句while!E;中的表达式!E等价于.A:E==0B:E!=1C:E!=0D:E==1答案A第2题(
1.0分)题号:688若a=1b=2则a|b的值是()A:0B:1C:2D:3答案D第3题(
1.0分)题号:652在C语言中,引用数组元素时,其数组下标的数据类型允许是()A:整型常量B:整型表达式C:整型常量或整型表达式D:任何类型的表达式答案C第4题(
1.0分)题号:142以下程序的输出结果为()__in{inti=010j=10;printf%d%d\n++ij--;}A:1110B:910C:0109D:109答案B第5题(
1.0分)题号:3075设intx=1y=1;表达式!x||y--的值是.A:0B:1C:2D:-1答案B第6题(
1.0分)题号:477以下对枚举类型名的定义中正确的是()A:enuma={summontue};B:enuma{sum=9mon=-1tue};C:enuma={summontue};D:enuma{summontue};答案B第7题(
1.0分)题号:131若k为int型变量,则以下程序段的执行结果是()k=-8567;printf|%06D|\nk;A:格式描述符不合法输出无定值B:输出为|%06D|C:输出为|0-8567|D:输出为|-8567|答案B第8题(
1.0分)题号:3106若希望当A的值为奇数时表达式的值为真A的值为偶数时表达式的值为假则以下不能满足要求的表达式是.A:A%2==1B:!A%2==0C:!A%2D:A%2答案C第9题(
1.0分)题号:376在C语言中,能代表逻辑值“真”的是()A:TrueB:大于0的数C:非0整数D:非0的数答案D第10题(
1.0分)题号:592能正确表示逻辑关系:a≥10或a≤0的C语言表达式是()A:a=10ora=0B:a=0|a=10C:a=10a=0D:a=10‖a=0答案D第11题(
1.0分)题号:93以下运算符中,优先级最高的运算符是()A::B:++C:D:答案B第12题(
1.0分)题号:88下列字符序列中,可用作C标识符的一组字符序列是()A:S.b,sum,__erage,_aboveB:class,day,lotus_1,2dayC:#md,12x,month,student_n!D:D56,r_1_2,name,_st_1答案D第13题(
1.0分)题号:2981下列标识符中不合法的C语言用户自定义标识符是.A:printfB:enumC:_D:sin答案B第14题(
1.0分)题号:2983下列程序段的输出结果为.floatk=
0.8567;printf%
06.1d%%k*100;A:
0085.6%%B:
0085.7%C:
0085.6%D:.857答案B第15题(
1.0分)题号:525C语言中不可以嵌套的是()A:函数调用B:函数定义C:循环语句D:选择语句答案B第16题(
1.0分)题号:687表达式,0x130x17的值是()A:0x17B:0x13C:0xf8D:0xec答案B第17题(
1.0分)题号:2912已知字母a的ASCII十进制代码为97则执行下列语句后的输出结果为.chara=a;a--;printf%d%c\na+2-0a+3-0;A:bcB:a--运算不合法故有语法错C:98cD:格式描述和输出项不匹配输出无定值答案C第18题(
1.0分)题号:470若有下列定义,则对a数组元素地址的正确引用是()inta
[5]*p=a;A:*p+5B:*p+2C:*a+2D:*a
[5]答案C第19题(
1.0分)题号:2838下列定义数组的语句中正确的是.A:#definesize10charstr1[size]str2[size+2];B:charstr[];C:intnum
[10];D:intn=5;inta[n][n+2];答案A第20题(
1.0分)题号:444关于return语句,下列正确的说法是()A:在主函数和其他函数中均可出现B:必须在每个函数中出现C:可以在同一个函数中出现多次D:只能在除主函数之外的函数中出现一次答案C第21题(
1.0分)题号:2__4执行下列语句后变量x和y的值是.y=10;x=y++;A:x=10y=10B:x=11y=11C:x=10y=11D:x=11y=10答案C第22题(
1.0分)题号:101以下数据中,不正确的数值或字符常量是()A:
8.9e
1.2B:10C:0xff00D:
82.5答案A第23题(
1.0分)题号:492下列程序段的输出结果为()floatx=
213.82631;printf%3dintx;A:
213.82B:
213.83C:213D:
3.8答案C第24题(
1.0分)题号:105以下运算符中,优先级最高的运算符是()A:=B:!=C:*乘号D:答案D第25题(
1.0分)题号:3203有如下程序段intx=23;do{printf%dx--;}while!x;该程序的输出结果是A:321B:23C:不输出任何内容D:陷入死循环答案B第26题(
1.0分)题号:3087若a为int类型且其值为3则执行完表达式a+=a-=a*a后a的值是.A:-3B:9C:-12D:6答案C第27题(
1.0分)题号:443下列说法不正确的是()A:主函数__in中定义的变量在整个文件或程序中有效B:不同函数中可以使用相同名字的变量C:形式参数是局部变量D:在一个函数内部可以在复合语句中定义变量这些变量只在复合语句中有效答案A第28题(
1.0分)题号:384以下数据中,不正确的数值或字符常量是()A:cB:66C:0xaaD:50答案A第29题(
1.0分)题号:2819以下程序的输出结果为.__in{inti=010j=10;printf%d%d\n++ij--;}A:1110B:910C:0109D:109答案B第30题(
1.0分)题号:519inta
[10];给数组a的所有元素分别赋值为
1、
2、
3、……的语句是()A:fori=1;i11;i++a[i]=i;B:fori=1;i11;i++a[i-1]=i;C:fori=1;i11;i++a[i+1]=i;D:fori=1;i11;i++a
[0]=1;答案B
三、程序填空共2题(共计24分)第1题(
12.0分)题号:425/*-------------------------------------------------------【程序填空】---------------------------------------------------------题目当输入“2,5”的时候输出为“255”-------------------------------------------------------*/#includestdio.h#define__x100__in{intf[__x]ijkm;scanf%d%dkm;/***********SPA__***********/fori=0;i=【】;i++f[i]=0;/***********SPA__***********/f[【】]=1;fori=k;i=m;i++/***********SPA__***********/forj=i-k;j=i-1;j++f[i]【】f[j];printf%d%10d%10d\nkmf[m];}答案=======答案1=======m=======答案2=======k-1=========或=========k-1=======答案3=======+==========或==========1+第2题(
12.0分)题号:438/*-------------------------------------------------------【程序填空】---------------------------------------------------------题目求出二维数组中的最大元素值-------------------------------------------------------*/#includestdio.hvoid__in{inta
[3]
[4]={{1357}{2468}{15173412}};/***********SPA__***********/printf__xvalueis%d\n【】;}__x_valuemnarray/***********SPA__***********/intmn【】;{intij__x;__x=array
[0]
[0];fori=0;im;i++forj=0;jn;j++/***********SPA__***********/if__xarray[i][j]【】;return__x;}答案=======答案1=======__x_value34a=======答案2=======array[]
[4]=======答案3=======__x=array[i][j]
四、程序改错共2题(共计22分)第1题(
11.0分)题号:384/*------------------------------------------------------【程序改错】--------------------------------------------------------题目给定程序MODI
1.C中函数fun的功能是输入两个双精度数,函数返回它们的平方和的平方根值例如输入
22.936和
14.121,输出为y=
26.934415--------------------------------------------------------注意不可以增加或删除程序行,也不可以更改程序的结构------------------------------------------------------*/#includestdio.h#includeconio.h#include__th.h/**********FOUND**********/doublefundouble*a*b{doublec;/**********FOUND**********/c=sqra*a+b*b;/**********FOUND**********/return*c;}__in{doubleaby;printfEnterab:;scanf%lf%lfab;y=funab;printfy=%f\ny;}答案=======答案1=======doublefundouble*adouble*b=======答案2=======c=sqrt*a**a+*b**b;=======答案3=======returnc;第2题(
11.0分)题号:415/*------------------------------------------------------【程序改错】--------------------------------------------------------题目一球从100米高度自由落下,每次落地后反跳回原高度的一半;再落下,求它在第10次落地时,共经过多少米?第10次反弹多高--------------------------------------------------------注意不可以增加或删除程序行,也不可以更改程序的结构------------------------------------------------------*/#includestdio.h__in{/**********FOUND**********/floatsn=
100.0;hn=sn/2;intn;/**********FOUND**********/forn=2;n10;n++{sn=sn+2*hn;/**********FOUND**********/hn=hn%2;}printfthetotalofroadis%f\nsn;printfthetenthis%fmeter\nhn;}答案=======答案1=======floatsn=
100.0hn=sn/2;=======答案2=======forn=2;n=10;n++=========或=========forn=2;n11;n++=======答案3=======hn=hn/2;
五、程序设计共1题(共计14分)第1题(
14.0分)题号:40/*------------------------------------------------【程序设计】--------------------------------------------------题目请用for循环编写函数fun,它的功能是判断m是否为素数主函数的功能是求出100到200之间的素数的个数--------------------------------------------------注意部分源程序给出如下请勿改动主函数__in和其它函数中的任何内容,仅在函数fun的花括号中填入所编写的若干语句------------------------------------------------*/#includestdio.h__in{intmk=0;form=100;m200;m++iffunm{printf%4dm;k++;ifk%5==0printf\n;}printfk=%d\nk;yzj;}intfunintm{/**********Program**********//**********End**********/}yzj{FILE*IN*OUT;intiINiOUTi;IN=fopen
12.inr;ifIN==NULL{printfPleaseVerifyTheCurrerntDir..It__yBeChanged;}OUT=fopen
12.outw;ifOUT==NULL{printfPleaseVerifyTheCurrentDir..It__yBeChanged;}fori=0;i10;i++{fscanfIN%diIN;iOUT=funiIN;fprintfOUT%d\niOUT;}fcloseIN;fcloseOUT;}答案----------------------intik=1;ifm=1k=0;fori=2;im;i++ifm%i==0k=0;returnk;
一、判断共10题(共计10分)第1题(
1.0分)题号:13char*p=girl;的含义是定义字符型指针变量p,p的值是字符串girl答案N第2题(
1.0分)题号:1268C语言的当型循环是先执行循环后判断条件.答案N第3题(
1.0分)题号:1272C语言中的整型常量有3种表示方法.答案Y第4题(
1.0分)题号:1475表达式1/4+
2.75的值是
3.答案N第5题(
1.0分)题号:24C语言中只能逐个引用数组元素而不能一次引用整个数组答案Y第6题(
1.0分)题号:1487静态变量和外部变量都是全局变量它们的存储是静态的.答案N第7题(
1.0分)题号:1249若有inti=10j=2;则执行完i*=j+8;后i的值为
28.答案N第8题(
1.0分)题号:1469chara[]={abc};charb[]={abc};数组a和数组b占用的内存空间大小不一样.答案Y第9题(
1.0分)题号:549++运算符的优先级比+运算符的优先低.答案N第10题(
1.0分)题号:1256unsigned和void在C中都是保留字.答案Y
二、单项选择共30题(共计30分)第1题(
1.0分)题号:3009若chara
[10];已正确定义以下语句中不能从键盘上给a数组的所有元素输入值的语句是.A:getsa;B:scanf%sa;C:fori=0;i10;i++a[i]=getchar;D:a=getchar;答案D第2题(
1.0分)题号:3175变量的指针其含义是指该变量的.A:值B:地址C:名D:一个标志答案B第3题(
1.0分)题号:2956以下程序的输出结果为.__in{inta=1b=2c=3d=4e=5;printf%d\nfunca+bb+cc+ad+e;}intfuncintxinty{returnx+y;}A:15B:13C:9D:函数调用出错答案B第4题(
1.0分)题号:596下面四个选项中,均是不合法的用户标识符的选项是()A:AP_0doB:floatla0_AC:b-agotointD:_123tempint答案C第5题(
1.0分)题号:493C语言的注释定界符是()A:{}B:[]C:\**\D:/**/答案D第6题(
1.0分)题号:508inta=1b=2c=3;ifacb=a;a=c;c=b;则c的值为()A:1B:2C:3D:不一定答案B第7题(
1.0分)题号:471以下程序段char*alp[]={ABCDEFGHI};intj;putsalp
[1];的输出结果是()A:AB:BC:DD:DEF答案D第8题(
1.0分)题号:579在C语言中,char型数据在内存中的存储形式是()A:补码B:反码C:原码D:ASCII码答案D第9题(
1.0分)题号:121以下不符合C语言语法的赋值语句是()A:a=1b=2B:++j;C:a=b=5;D:y=a=36*5;答案A第10题(
1.0分)题号:3137若使用一维数组名作函数实参则以下正确的说法是.A:必须在主调函数中说明此数组的大小B:实参数组类型与形参数组类型可以不匹配C:在被调用函数中不需要考虑形参数组的大小D:实参数组名与形参数组名必须一致答案A第11题(
1.0分)题号:125下列程序的输出结果是()__in{inta=7b=5;printf%d\nb=b/a;}A:0B:5C:1D:不确定值答案A第12题(
1.0分)题号:2857经过下列的语句intja
[10]*p;定义后下列语句中合法的是.A:p=p+2;B:p=a
[5];C:p=a
[2]+2;D:p=j+2;答案A第13题(
1.0分)题号:378下列字符序列中,不可用作C语言标识符的是()A:b70B:#abC:symbolD:a_1答案B第14题(
1.0分)题号:3096以下不是无限循环的语句为.A:fory=0x=1;x++y;x=i++i=x;B:for;;x++=i;C:while1{x++;}D:fori=10;;i--sum+=i;答案A第15题(
1.0分)题号:407若ch为char型变量k为int型变量已知字符a的ASCII十进制代码为97,则以下程序段的执行结果是()ch=a;k=12;printf%x%ochchk;printfk=%%d\nk;A:因变量类型与格式描述符的类型不匹配输出无定值B:输出项与格式描述符个数不符输出为零值或不定值C:61141k=%dD:61141k=%12答案C第16题(
1.0分)题号:484在位运算中,操作数每右移一位其结果相当于()A:操作数乘以2B:操作数除以2C:操作数乘以16D:操作数除以16答案B第17题(
1.0分)题号:543若有inta
[10]={0123456789}*p=a;则输出结果不为5的语句为()A:printf%d*a+5;B:printf%dp
[5];C:printf%d*p+5;D:printf%d*p
[5];答案D第18题(
1.0分)题号:301以下标识符中,不能作为合法的C用户定义标识符的是()A:a3_b3B:voidC:_123D:IF答案B第19题(
1.0分)题号:2848C语言程序中当调用函数时.A:实参和虚参各占一个__的存储单元B:实参和虚参可以共用存储单元C:可以由用户指定是否共用存储单元D:计算机系统自动确定是否共用存储单元答案A第20题(
1.0分)题号:410已知字母a的ASCII十进制代码为97,则执行下列语句后的输出结果为()chara=a;a--;printf%d%c\na+2-0a+3-0;A:bcB:a--运算不合法故有语法错C:98cD:格式描述和输出项不匹配输出无定值答案C第21题(
1.0分)题号:2993下列程序段的输出结果为.inta=7b=9t;t=a*=aba:b;printf%dt;A:7B:9C:63D:49答案C第22题(
1.0分)题号:701设char*s=\ta\017bc;则指针变量s指向的字符串所占的字节数是()A:9B:5C:6D:7答案C第23题(
1.0分)题号:629为了避免在嵌套的条件语句if-else中产生二义性,C语言规定:else子句总是与()配对A:缩排位置相同的ifB:其之前最近的ifC:其之后最近的ifD:同一行上的if答案B第24题(
1.0分)题号:392下列数据中,为字符串常量的是()A:AB:houseC:Howdoyoudo.D:$abc答案B第25题(
1.0分)题号:27__设C语言中int类型数据占4个字节则short类型数据占.A:1个字节B:2个字节C:4个字节D:8个字节答案B第26题(
1.0分)题号:620下列运算符中优先级最高的是()A:B:+C:D:!=答案B第27题(
1.0分)题号:428在以下给出的表达式中,与do--whileE语句中的E不等价的表达式是()A:!E==0B:E0||E0C:E==0D:E!=0答案C第28题(
1.0分)题号:699下面说明不正确的是()A:chara
[10]=china;B:chara
[10]*p=a;p=chinaC:char*a;a=china;D:chara
[10]*p;p=a=china答案D第29题(
1.0分)题号:2885以下标识符中不能作为合法的C用户定义标识符的是.A:putcharB:_doubleC:_123D:INT答案A第30题(
1.0分)题号:580设变量a是整型,f是实型,i是双精度型,则表达式10+a+i*f值的数据类型为()A:intB:floatC:doubleD:不确定答案C
三、程序填空共2题(共计24分)第1题(
12.0分)题号:404/*-------------------------------------------------------【程序填空】---------------------------------------------------------题目从键盘上输入两个复数的实部与虚部,求出并输出它们的和、差、积、商-------------------------------------------------------*/#includestdio.hvoid__in{floatabcdef;printf输入第一个复数的实部与虚部;scanf%f%fab;printf输入第二个复数的实部与虚部;scanf%f%fcd;/***********SPA__***********/【】;f=b+d;printf相加后复数实部%f虚部%f\nef;e=a*c-b*d;/***********SPA__***********/【】;printf相乘后复数实部%f虚部%f\nef;e=a*c+b*d/c*c+d*d;/***********SPA__***********/【】;printf相除后复数实部%f虚部%f\nef;}答案=======答案1=======e=a+c=========或=========e=c+a=======答案2=======f=a*d+b*c=========或=========f=a*d+b*c=========或=========f=a*d+b*c=======答案3=======f=b*c-a*d/c*c+d*d=========或=========f=b*c-a*d/c*c+d*d=========或=========f=b*c-a*d/c*c+d*d第2题(
12.0分)题号:13/*-------------------------------------------------------【程序填空】---------------------------------------------------------题目输出100到1000之间的各位数字之和能被15整除的所有数,输出时每10个一行-------------------------------------------------------*/__in{intmnki=0;form=100;m=1000;m++{/***********SPA__***********/【】;n=m;do{/***********SPA__***********/k=k+【】;n=n/10;/***********SPA__***********/}【】;ifk%15==0{printf%5dm;i++;/***********SPA__***********/ifi%10==0【】;}}}答案=======答案1=======k=0=======答案2=======n%10=========或=========n-n/10*10=========或=========n-10*n/10=======答案3=======whilen0=========或=========while0n=========或=========whilen!=0=========或=========while0!=N=======答案4=======printf\n
四、程序改错共2题(共计22分)第1题(
11.0分)题号:424/*------------------------------------------------------【程序改错】--------------------------------------------------------题目打印出杨辉三角形(要求打印出10行).--------------------------------------------------------注意不可以增加或删除程序行,也不可以更改程序的结构------------------------------------------------------*/#includestdio.h__in{intij;inta
[10]
[10];printf\n;/**********FOUND**********/fori=1;i10;i++{a[i]
[0]=1;a[i][i]=1;}/**********FOUND**********/fori=1;i10;i++forj=1;ji;j++/**********FOUND**********/a[i][i]=a[i-1][j-1]+a[i-1][j];fori=0;i10;i++{forj=0;j=i;j++printf%5da[i][j];printf\n;getch;}}答案=======答案1=======fori=0;i10;i++=========或=========fori=0;i=9;i++=======答案2=======fori=2;i10;i++=========或=========fori=2;i=9;i++=======答案3=======a[i][j]=a[i-1][j-1]+a[i-1][j];第2题(
11.0分)题号:359/*------------------------------------------------------【程序改错】--------------------------------------------------------题目给定程序MODI
1.C中函数fun的功能是先将在字符串s中的字符按逆序存放到t串中,然后把s中的字符按正序连接到t串的后面例如当s中的字符串为ABCDE时,则t中的字符串应为EDCBAABCDE--------------------------------------------------------注意不可以增加或删除程序行,也不可以更改程序的结构------------------------------------------------------*/#includeconio.h#includestdio.h#includestring.hvoidfunchar*schar*t{/**********FOUND**********/inti;sl=strlens;fori=0;isl;i++/**********FOUND**********/t[i]=s[sl-i];fori=0;isl;i++t[sl+i]=s[i];/**********FOUND**********/t[2*sl]=0;}__in{chars
[100]t
[100];printf\nPleaseenterstrings:;scanf%ss;funst;printfTheresultis:%s\nt;getch;}答案=======答案1=======intisl;=======答案2=======t[i]=s[sl-i-1];=======答案3=======t[2*sl]=\0;=========或=========t[2*sl]=0;
五、程序设计共1题(共计14分)第1题(
14.0分)题号:___/*------------------------------------------------【程序设计】--------------------------------------------------题目请用for循环编写函数实现字符串的__不允许用strcpy函数--------------------------------------------------注意部分源程序给出如下请勿改动主函数__in和其它函数中的任何内容,仅在函数的花括号中填入所编写的若干语句------------------------------------------------*/#includestdio.hvoidcopycharstr1[]charstr2[]{/**********Program**********//**********End**********/}__in{voidcopy;charc1
[40]c2
[40];getsc1;copyc1c2;putsc2;yzj;getch;}yzj{FILE*IN*OUT;intn;chari
[100];charo
[100];IN=fopenin.datr;ifIN==NULL{printfReadFileError;}OUT=fopenout.datw;ifOUT==NULL{printfWriteFileError;}fscanfIN%si;copyio;fprintfOUT%s\no;fcloseIN;fcloseOUT;}答案----------------------inti;fori=0;str1[i]!=\0;i++str2[i]=str1[i];str2[i]=\0;----------------------
一、判断共10题(共计10分)第1题(
1.0分)题号:1参加位运算的数据可以是任何类型的数据答案N第2题(
1.0分)题号:40A是一个字符常量.答案N第3题(
1.0分)题号:1503指针就是地址因此一个变量的指针就是该变量的地址.答案Y第4题(
1.0分)题号:36若有inti=10j=2;则执行完i*=j+8;后ⅰ的值为28答案N第5题(
1.0分)题号:1512将一个字符串abc赋给字符串变量str的方法是str=abc.答案N第6题(
1.0分)题号:11通过return语句,函数可以带回一个或一个以上的返回值答案N第7题(
1.0分)题号:1277已知charc=48;inti=1j=10;执行语句j=!cji++;则i和j的值分别是1和
0.答案Y第8题(
1.0分)题号:1246在if语句中else前一个语句可不加;.答案N第9题(
1.0分)题号:1240C语言本身并不提供输入输出语句.但可以通过输入输出函数来实现数据的输入输出.答案Y第10题(
1.0分)题号:24C语言中只能逐个引用数组元素而不能一次引用整个数组答案Y
二、单项选择共30题(共计30分)第1题(
1.0分)题号:2404设xyt均为int型变量执行下列语句后y的值为x=y=3;t=++x||++y;A:不确定B:4C:3D:1答案C第2题(
1.0分)题号:699下面说明不正确的是()A:chara
[10]=china;B:chara
[10]*p=a;p=chinaC:char*a;a=china;D:chara
[10]*p;p=a=china答案D第3题(
1.0分)题号:3132以下程序段中不能正确赋字符串编译时系统会提示错误的是.A:chars
[10]=abcdefg;B:chart[]=abcdefg*s=t;C:chars
[10];s=abcdefg;D:chars
[10];strcpysabcdefg;答案C第4题(
1.0分)题号:569C语言规定,在一个源程序中,__in函数的位置()A:必须在最开始B:必须在系统调用的库函数的后面C:可以任意D:必须在最后答案C第5题(
1.0分)题号:3020对于void类型函数调用时不可作为.A:自定义函数体中的语句B:循环体里的语句C:if语句的成分语句D:表达式答案D第6题(
1.0分)题号:___0以下不正确的说法是:C语言规定.A:实参可以是常量变量或表达式B:形参可以是常量变量或表达式C:实参可以为任何类型D:形参应与其对应的实参类型一致答案B第7题(
1.0分)题号:3066以下选项中合法的用户标识符是.A:longB:_2TestC:3D__xD:A.dat答案B第8题(
1.0分)题号:137若给定条件表达式Ma++:a--,则其中表达式M()A:和M==0等价B:和M==1等价C:和M!=0等价D:和M!=1等价答案C第9题(
1.0分)题号:197以下程序段的输出结果是()char*alp[]={ABCDEFGHI};intj;putsalp
[1];A:AB:BC:DD:DEF答案D第10题(
1.0分)题号:646若有说明inta
[3]
[4];则a数组元素的非法引用是()A:a
[0][2*1]B:a
[1]
[3]C:a[4-2]
[0]D:a
[0]
[4]答案D第11题(
1.0分)题号:3049一个C语言程序是由.A:一个主程序和若干子程序组成B:函数组成C:若干过程组成D:若干子程序组成答案B第12题(
1.0分)题号:3078下列四组选项中均不是C语言关键字的选项是.A:defineIFtypeB:getccharprintfC:includescanfcaseD:whilegopow答案A第13题(
1.0分)题号:108设C语言中,int类型数据占4个字节,则short类型数据占()A:1个字节B:2个字节C:4个字节D:8个字节答案B第14题(
1.0分)题号:452以下对C语言函数的描述中,正确的是()A:C程序必须由一个或一个以上的函数组成B:C函数既可以嵌套定义又可以递归调用C:函数必须有返回值否则不能使用函数D:C程序中有调用关系的所有函数必须放在同一个程序文件中答案A第15题(
1.0分)题号:194若有下列定义,则对a数组元素地址的正确引用是()inta
[5]*p=a;A:a
[5]B:p+2C:a++D:a答案B第16题(
1.0分)题号:2902执行下列程序后其输出结果是__in{inta=9;a+=a-=a+a;printf%d\na;}A:18B:9C:-18D:-9答案C第17题(
1.0分)题号:3217设有以下程序段intx=0s=0;while!x!=0s+=++x;printf%ds;则A:运行程序段后输出0B:运行程序段后输出1C:程序段中的控制表达式是非法的D:程序段执行无限次答案B第18题(
1.0分)题号:595C语言中的标识符只能由字母,数字和下划线三种字符组成,且第一个字符()A:必须为字母B:必须为下划线C:必须为字母或下划线D:可以是字母,数字和下划线中任一字符答案C第19题(
1.0分)题号:2949数组名作为实参数传递给函数时数组名被处理为.A:该数组的长度B:该数组的元素个数C:该数组的首地址D:该数组中各元素的值答案C第20题(
1.0分)题号:177以下描述中,正确的是()A:预处理是指完成宏替换和文件包含中指定的文件的调用B:预处理指令只能位于C源文件的开始C:C源程序中凡是行首以#标识的控制行都是预处理指令D:预处理就是完成C编译程序对C源程序第一遍扫描为编译词法和语法分析作准备答案C第21题(
1.0分)题号:3224设xyt均为int型变量执行下列语句后y的值为x=y=3;t=++x||++y;A:不确定B:4C:3D:1答案C第22题(
1.0分)题号:3009若chara
[10];已正确定义以下语句中不能从键盘上给a数组的所有元素输入值的语句是.A:getsa;B:scanf%sa;C:fori=0;i10;i++a[i]=getchar;D:a=getchar;答案D第23题(
1.0分)题号:640以下对二维数组a的正确说明是()A:inta
[3][]B:floata34C:doublea
[1]
[4]D:floata34答案C第24题(
1.0分)题号:2802以下不符合C语言语法的赋值语句是.A:j++;B:j=j=5;C:k=2*4k*4;D:y=floatj;答案D第25题(
1.0分)题号:2813若a是float型变量b是unsigned型变量以下输入语句中合法的是.A:scanf%
6.2f%dab;B:scanf%f%nab;C:scanf%f%3oab;D:scanf%f%fab;答案C第26题(
1.0分)题号:2781以下标识符中不能作为合法的C用户定义标识符的是.A:putcharB:_doubleC:_123D:INT答案A第27题(
1.0分)题号:2870执行下列语句后的结果为.intx=3y;int*px=x;y=*px++;A:x=3y=4B:x=3y=3C:x=4y=4D:x=3y不知答案B第28题(
1.0分)题号:605以下所列的C语言常量中,错误的是()A:0xFFB:
1.2e
0.5C:2LD:\72答案B第29题(
1.0分)题号:462两个指针变量不可以()A:相加B:比较C:相减D:指向同一地址答案A第30题(
1.0分)题号:609设有说明语句:chara=\72;则变量a()A:包含1个字符B:包含2个字符C:包含3个字符D:说明不合法答案A
三、程序填空共2题(共计24分)第1题(
12.0分)题号:604/*列出所有的个位数为6,且能被3整除的2位数*/__in{inti;/***********SPA__***********/for【】;i=99;i++/***********SPA__***********/if【】i%3==0printf%3d\ni;}答案=======答案1=======i=10=======答案2=======i%10==6第2题(
12.0分)题号:26/*-------------------------------------------------------【程序填空】---------------------------------------------------------题目以下程序的功能是统计一个字符串中的字母、数字、空格、和其它字符的个数-------------------------------------------------------*/#includestdio.h__in{chars1
[80];inta
[4]={0};intk;/***********SPA__***********/【】;getss1;/***********SPA__***********/【】;putss1;fork=0;k4;k++printf%4da[k];}voidfunchars[]intb[]{inti;fori=0;s[i]!=\0;i++ifa=s[i]s[i]=z||A=s[i]s[i]=Zb
[0]++;/***********SPA__***********/elseif【】b
[1]++;/***********SPA__***********/elseif【】b
[2]++;elseb
[3]++;}答案=======答案1=======voidcountchars[]intb[]=======答案2=======funs1a=======答案3=======0=s[i]s[i]=9=========或=========s[i]=0s[i]=9=========或=========0=s[i]9=s[i]=========或=========s[i]=09=s[i]=========或=========48=s[i]s[i]=57=========或=========s[i]=48s[i]=57=========或=========48=s[i]57=s[i]=========或=========s[i]=4857=s[i]=======答案4=======s[i]===========或=========s[i]==32
四、程序改错共2题(共计22分)第1题(
11.0分)题号:26/*------------------------------------------------------【程序改错】--------------------------------------------------------题目fun函数的功能是找出大于m的最小素数,并将其作为函数值返回请改正程序中的错误,使它能得出正确的结果--------------------------------------------------------注意不可以增加或删除程序行,也不可以更改程序的结构------------------------------------------------------*/intfunintm{intik;fori=m+1;;i++{/**********FOUND**********/fork=1;ki;k++/**********FOUND**********/ifi%k!=0break;/**********FOUND**********/ifki/**********FOUND**********/returnk;}}__in{intn;scanf%dn;printf%d\nfunn;}答案=======答案1=======fork=2;ki;k++=========或=========fork=2;ik;k++=======答案2=======ifi%k==0break;=======答案3=======ifi=k=========或=========ifk=i=========或=========ifk==i=======答案4=======returni;=========或=========returni;第2题(
11.0分)题号:381/*------------------------------------------------------【程序改错】--------------------------------------------------------题目给定程序MODI
1.C的功能是删除w所指数组中下标为k的元素中的值程序中,调用了getindex、arrout和arrdel三个函数,getindex用以输入所删元素的下标,函数中对输入的下标进行检查,若越界,则要求重新输入,直到正确为止arrout用以输出数组中的数据,arrdel进行所要求的删除操作--------------------------------------------------------注意不可以增加或删除程序行,也不可以更改程序的结构------------------------------------------------------*/#includeconio.h#includestdio.h#defineNUM10/**********FOUND**********/arroutintwintm{intk;/**********FOUND**********/fork=1;km;k++/**********FOUND**********/printf%dw[k];printf\n;}arrdelint*wintnintk{inti;fori=k;in-1;i++w[i]=w[i+1];n--;returnn;}getindexintn{inti;do{printf\nEntertheindex[0=i%d]:n;scanf%di;}whilei0||in-1;returni;}__in{intnda[NUM]={21222324252627282930};n=NUM;printfOutputpri__rydata:\n;arroutan;d=getindexn;n=arrdeland;printfOutputthedataafterdelete:\n;arroutan;}答案=======答案1=======arroutint*wintm=======答案2=======fork=0;km;k++=======答案3=======printf%dw[k];
五、程序设计共1题(共计14分)第1题(
14.0分)题号:356/*------------------------------------------------【程序设计】--------------------------------------------------题目请编写函数fun对长度为7个字符的字符串,除首、尾字符外,将其余5个字符按降序排列例如,原来的字符串为__Aedca排序后输出为__d__Aa--------------------------------------------------注意部分源程序给出如下请勿改动主函数__in和其它函数中的任何内容,仅在函数fun的花括号中填入所编写的若干语句------------------------------------------------*/#includestdio.h#includectype.h#includeconio.hintfunchar*sintnum{/**********Program**********//**********End**********/}__in{chars
[10];clrscr;printf输入7个字符的字符串:;getss;funs7;printf\n%ss;getch;NONO;}NONO{inti;chara
[100];FILE*rf*wf;rf=fopenin.datr;wf=fopenout.datw;fori=0;i3;i++{fscanfrf%sa;funa7;fprintfwf%sa;fprintfwf\n;}fcloserf;fclosewf;}答案----------------------intij;chart;fori=1;inum-1;i++forj=i+1;jnum-1;j++ifs[i]s[j]{t=s[i];s[i]=s[j];s[j]=t;}
一、判断共10题(共计10分)第1题(
1.0分)题号:1283C语言俗称低级语言的高级形式这说明C语言的功能不强.答案N第2题(
1.0分)题号:1260由于主函数首部经常缩写成__in所以它不可能有形式参数.答案N第3题(
1.0分)题号:1505程序进行编译时不为形式参数分配存储空间.答案Y第4题(
1.0分)题号:31共同体变量所占的内存长度等于最长的成员的长度答案Y第5题(
1.0分)题号:12结构体类型只有一种答案N第6题(
1.0分)题号:1483return后面括号里的表达式的值即是此函数的值.答案Y第7题(
1.0分)题号:1257结构化程序设计所规定的三种基本控制结构是顺序、选择、输出.答案N第8题(
1.0分)题号:1265假设所有变量均为整型则表达式a=2b=3b++a+b的值是
5.答案N第9题(
1.0分)题号:1496在任何情况下对二维数组的初始化都可以省略第一维的大小.答案N第10题(
1.0分)题号:125473+12的值是
15.答案N
二、单项选择共30题(共计30分)第1题(
1.0分)题号:2388对表达式for表达式1;;表达式3可理解为A:for表达式1;0;表达式3B:for表达式1;1;表达式3C:for表达式1;表达式1;表达式3D:for表达式1;表达式3;表达式3答案B第2题(
1.0分)题号:3000inta=1b=2c=3;ifacb=a;a=c;c=b;则c的值为.A:1B:2C:3D:不一定答案B第3题(
1.0分)题号:3205以下程序段的输出结果是inta=21b=11;printf%d\n--a+b--b+a;A:30B:31C:32D:33答案A第4题(
1.0分)题号:621printf函数中用到格式符%5s,其中数字5表示输出的字符串占用5列,如果字符串长度大于5,则输出按方式()A:从左起输出该字符串右补空格B:按原字符长从左向右全部输出C:右对齐输出该字串左补空格D:输出错误信息答案B第5题(
1.0分)题号:2862下面选择中正确的赋值语句是设chara
[5]*p=a;.A:p=abcd;B:a=abcd;C:*p=abcd;D:*a=abcd;答案A第6题(
1.0分)题号:633对以下说明语句inta
[10]={678910};的正确理解是()A:将5个初值依次赋给a
[1]至a
[5]B:将5个初值依次赋给a
[0]至a
[4]C:将5个初值依次赋给a
[6]至a
[10]D:因为数组长度与初值的个数不相同所以此语句不正确答案B第7题(
1.0分)题号:203以下对枚举类型名的定义中正确的是()A:enuma={summontue};B:enuma{sum=9mon=-1tue};C:enuma={summontue};D:enuma{summontue};答案B第8题(
1.0分)题号:2876以下数值中不正确的八进制数或十六进制数是.A:0x16B:16C:-16D:0xaaaa答案C第9题(
1.0分)题号:157下列程序的输出结果是()__in{intx=1y=0a=0b=0;switchx{case1:switchy{case0:a++;break;case1:b++;break;}case2:a++;b++;break;case3:a++;b++;break;}printfa=%db=%d\nab;}A:a=1b=0B:a=2b=1C:a=1b=1D:a=2b=2答案B第10题(
1.0分)题号:134若a是float型变量,b是unsigned型变量,以下输入语句中合法的是()A:scanf%
6.2f%dab;B:scanf%f%nab;C:scanf%f%3oab;D:scanf%f%fab;答案C第11题(
1.0分)题号:2827在以下给出的表达式中与do--whileE语句中的E不等价的表达式是.A:!E==0B:E0||E0C:E==0D:E!=0答案C第12题(
1.0分)题号:479变量p为指针变量,若p=a,下列说法不正确的是()A:*p==aB:*a==aC:*p++==a++D:*p++==a++答案D第13题(
1.0分)题号:2806下列程序的输出结果是.__in{inta=011;printf%d\n++a;}A:12B:11C:10D:9答案C第14题(
1.0分)题号:547int*p
[6];它的含义为()A:具有6个元素的一维数组B:定义了一个指向具有6个元素的一维数组的指针变量C:指向整型指针变量D:指向6个整数中的一个的地址答案B第15题(
1.0分)题号:629为了避免在嵌套的条件语句if-else中产生二义性,C语言规定:else子句总是与()配对A:缩排位置相同的ifB:其之前最近的ifC:其之后最近的ifD:同一行上的if答案B第16题(
1.0分)题号:3112以下叙述正确的是.A:do-while语句构成的循环不能用其它语句构成的循环来代替.B:do-while语句构成的循环只能用break语句退出.C:用do-while语句构成的循环在while后的表达式为非零时结束循环.D:用do-while语句构成的循环在while后的表达式为零时结束循环答案D第17题(
1.0分)题号:634以下不正确的定义语句是()A:doublex
[5]={
2.
04.
06.
08.
010.0};B:inty
[5]={013579};C:charc1[]={12345};D:charc2[]={\x10\xa\x8};答案B第18题(
1.0分)题号:2834设j和k都是int类型则for循环语句forj=0k=-1;k=1;j++k++printf****\n;.A:循环结束的条件不合法B:是无限循环C:循环体一次也不执行D:循环体只执行一次答案B第19题(
1.0分)题号:1950结构化程序设计的3种结构是A:顺序结构、选择结构、转移结构B:分支结构、等价结构、循环结构C:多分支结构、赋值结构、等价结构D:顺序结构、选择结构、循环结构答案D第20题(
1.0分)题号:3073能正确表示逻辑关系:a≥10或a≤0的C语言表达式是.A:a=10ora=0B:a=0|a=10C:a=10a=0D:a=10‖a=0答案D第21题(
1.0分)题号:3007intija
[2]
[3];按照数组a的元素在内存的排列次序不能将数123456存入a数组的是.A:fori=0;i2;i++forj=0;j3;j++a[i][j]=i*3+j+1;B:fori=0;i3;i++forj=0;j2;j++a[j][i]=j*3+i+1;C:fori=0;i6;i++a[i/3][i%3]=i+1;D:fori=1;i=6;i++a[i][i]=i;答案D第22题(
1.0分)题号:455C语言中函数调用的方式有()A:函数调用作为语句一种B:函数调用作为函数表达式一种C:函数调用作为语句或函数表达式两种D:函数调用作为语句函数表达式或函数参数三种答案D第23题(
1.0分)题号:2868变量p为指针变量若p=a下列说法不正确的是.A:*p==aB:*a==aC:*p++==a++D:*p++==a++答案D第24题(
1.0分)题号:1__若已定义x为int类型变量,下列语句中说明指针变量p的正确语句是()A:intp=x;B:int*p=x;C:int*p=x;D:*p=*x;答案C第25题(
1.0分)题号:3193inti=1j=1k=2;ifj++||k++i++printf%d%d%d\nijk;执行后输出结果是A:112B:221C:222D:223答案C第26题(
1.0分)题号:3115若有说明:inta[]
[3]={1234567};则a数组第一维的大小是.A:2B:3C:4D:无确定值答案B第27题(
1.0分)题号:187经过下列的语句intja
[10]*p;定义后,下列语句中合法的是()A:p=p+2;B:p=a
[5];C:p=a
[2]+2;D:p=j+2;答案A第28题(
1.0分)题号:676以下只有在使用时才为该类型变量分配内存的存储类说明是()A:auto和staticB:auto和registerC:register和staticD:extern和register答案B第29题(
1.0分)题号:2943关于return语句下列正确的说法是.A:在主函数和其他函数中均可出现B:必须在每个函数中出现C:可以在同一个函数中出现多次D:只能在除主函数之外的函数中出现一次答案C第30题(
1.0分)题号:210在位运算中,操作数每右移一位,其结果相当于()A:操作数乘以2B:操作数除以2C:操作数乘以16D:操作数除以16答案B
三、程序填空共2题(共计24分)第1题(
12.0分)题号:599/*在屏幕上输出整数1到20*/__in{inti;i=1;do{printf%di;/***********SPA__***********/【】;/***********SPA__***********/}while【】;printf\n;}答案=======答案1=======i++=======答案2=======i=20第2题(
12.0分)题号:13/*-------------------------------------------------------【程序填空】---------------------------------------------------------题目输出100到1000之间的各位数字之和能被15整除的所有数,输出时每10个一行-------------------------------------------------------*/__in{intmnki=0;form=100;m=1000;m++{/***********SPA__***********/【】;n=m;do{/***********SPA__***********/k=k+【】;n=n/10;/***********SPA__***********/}【】;ifk%15==0{printf%5dm;i++;/***********SPA__***********/ifi%10==0【】;}}}答案=======答案1=======k=0=======答案2=======n%10=========或=========n-n/10*10=========或=========n-10*n/10=======答案3=======whilen0=========或=========while0n=========或=========whilen!=0=========或=========while0!=N=======答案4=======printf\n
四、程序改错共2题(共计22分)第1题(
11.0分)题号:___/*------------------------------------------------------【程序改错】--------------------------------------------------------题目给定程序MODI
1.C中函数fun的功能是求两个形参的乘积和商数,并通过形参返回调用程序例如输入
61.82和
12.65,输出为c=
782.023000d=
4.886957--------------------------------------------------------注意不可以增加或删除程序行,也不可以更改程序的结构------------------------------------------------------*/#includestdio.h#includeconio.h/**********FOUND**********/voidfundoubleabdouble*xdouble*y{/**********FOUND**********/x=a*b;/**********FOUND**********/y=a/b;}__in{doubleabcd;printfEnterab:;scanf%lf%lfab;funabcd;printfc=%fd=%f\ncd;getch;}答案=======答案1=======voidfundoubleadoublebdouble*xdouble*y=======答案2=======*x=a*b;=======答案3=======*y=a/b;第2题(
11.0分)题号:373/*------------------------------------------------------【程序改错】--------------------------------------------------------题目给定程序MODI
1.C中函数fun的功能是将a所指字符串中的字符和b所指字符串中的字符,按排列的顺序交叉合并到c所指数组中,过长的剩余字符接在c所指数组的尾部例如,当a所指字符串中的内容为abcdefg,b所指字符串中的内容为1234时,c所指数组中的内容应该为a1b2c3d4efg;而当a所指字符串中的内容为1234,b所指字符串中的内容为abcdefg时,c所指数组中的内容应该为1a2b3c4defg--------------------------------------------------------注意不可以增加或删除程序行,也不可以更改程序的结构------------------------------------------------------*/#includeconio.h#includestdio.h#includestring.h/**********FOUND**********/funcharacharbcharc{while*a*b{*c=*a;c++;a++;*c=*b;c++;b++;}if*a==\0/**********FOUND**********/while*b*c=*b;c++;b++;}else/**********FOUND**********/while*a*c=*a;c++;a++;}*c=\0;}__in{chars1
[100]s2
[100]t
[200];printf\nEnters1string:;scanf%ss1;printf\nEnters2string:;scanf%ss2;funs1s2t;printf\nTheresultis:%s\nt;}答案=======答案1=======voidfunchar*achar*bchar*c=======答案2=======while*b{*c=*b;c++;b++;}=======答案3=======while*a{*c=*a;c++;a++;}
五、程序设计共1题(共计14分)第1题(
14.0分)题号:413/*------------------------------------------------【程序设计】--------------------------------------------------题目编写函数fun将一个数组中的值按逆序存放并在__in函数中输出例如,原来存顺序为86541要求改为14568--------------------------------------------------注意部分源程序给出如下请勿改动主函数__in和其它函数中的任何内容,仅在函数fun的花括号中填入所编写的若干语句------------------------------------------------*/#includestdio.h#defineN5__in{inta[N]={86541}i;fori=0;iN;i++printf%4da[i];printf\n;funaN;fori=0;iN;i++printf%4da[i];yzj;getch;}intfunintarr[]intn{/**********Program**********//**********End**********/}yzj{FILE*IN*OUT;intn;inti
[10];into;IN=fopenin.datr;ifIN==NULL{printfReadFileError;}OUT=fopenout.datw;ifOUT==NULL{printfWriteFileError;}forn=0;n10;n++{fscanfIN%di[n];}funi10;forn=0;n10;n++{fprintfOUT%d\ni[n];}fcloseIN;fcloseOUT;}答案----------------------intit;fori=0;in/2;i++{t=arr[i];arr[i]=arr[n-1-i];arr[n-1-i]=t;}
一、判断共10题(共计10分)第1题(
1.0分)题号:5若有定义和语句inta
[3]
[3]={{35}{89}{1235}}isum=0;fori=0;i3;i++sum+=a[i][2-i];则sum=
21.答案Y第2题(
1.0分)题号:1468在C语言中整型数据在内存中占2个字节.答案N第3题(
1.0分)题号:8在TurboC中,整型数据在内存中占2个字节答案N第4题(
1.0分)题号:23若a=3b=2c=1则关系表达式ab==c的值为真答案Y第5题(
1.0分)题号:1243C语言是一种结构化程序设计语言.答案Y第6题(
1.0分)题号:17x*=y+8等价于x=x*y+8答案Y第7题(
1.0分)题号:1476在进行赋值转换时变量的类型被自动转换为赋值号右边的表达式值的类型.答案N第8题(
1.0分)题号:1499用printf函数输出一个字符串时格式字符为%s输出项可以是此字符串或存放此字符串的数组的数组名.答案Y第9题(
1.0分)题号:1501以数组名作函数参数时实参数组与形参数组都不必定义长度因此实参与形参的结合方式是地址结合与数组长度无关.答案N第10题(
1.0分)题号:1495以数组名作函数参数时数据传递的方向是双向的因此我们可以说在此情况下函数带回的返回值可能不止一个.
二、单项选择共30题(共计30分)第1题(
1.0分)题号:3196有如下程序段inta=14b=15x;charc=′A′;x=abc′B′;执行该程序段后x的值为A:tureB:falseC:0D:1答案D第2题(
1.0分)题号:650若有说明:inta[]
[4]={00};则下面不正确的叙述是()A:数组a的每个元素都可得到初值0B:二维数组a的第一维大小为1C:因为二维数组a中第二维大小的值除经初值个数的商为1故数组a的行数为1D:有元素a
[0]
[0]和a
[0]
[1]可得到初值0其余元素均得不到初值0答案D第3题(
1.0分)题号:2747以下运算符中优先级最高的运算符是.A::B:++C:D:答案B第4题(
1.0分)题号:2900以下不符合C语言语法的赋值语句是.A:a=1b=2B:++j;C:a=b=5;D:y=a=36*5;答案A第5题(
1.0分)题号:502下列表达式中,可作为C合法表达式的是()A:
[3210]B:3210C:3=2=1=0D:3/2/1/0答案B第6题(
1.0分)题号:2392C语言中的标识符只能由字母数字和下划线三种字符组成且第一个字符A:必须为字母B:必须为下划线C:必须为字母或下划线D:可以是字母数字和下划线中任一字符答案C第7题(
1.0分)题号:2378能正确表示逻辑关系:a≥10或a≤0的C语言表达式是A:a=10ora=0B:a=0|a=10C:a=10a=0D:a=10‖a=0答案D第8题(
1.0分)题号:3032若有double*px
[10];inti=5;使指针变量p指向元素x
[5]的语句为.A:p=x[i];B:p=x;C:p=x[i];D:p=x+i答案A第9题(
1.0分)题号:3107判断char型变量cl是否为小写字母的正确表达式是.A:a=cl=zB:cl=acl=zC:a=cl||z=clD:cl=acl=z答案D第10题(
1.0分)题号:3162以下叙述中不正确的是.A:预处理命令行都必须以#号开始B:在程序中凡是以#号开始的语句行都是预处理命令行C:C程序在执行过程中对预处理命令行进行处理D:以下是正确的宏定义#defineIBM_PC答案C第11题(
1.0分)题号:2993下列程序段的输出结果为.inta=7b=9t;t=a*=aba:b;printf%dt;A:7B:9C:63D:49答案C第12题(
1.0分)题号:488C语言中的文件的存储方式有()A:只能顺序存取B:只能随机存取或直接存取C:可以顺序存取也可随机存取D:只能从文件的开头进行存取答案C第13题(
1.0分)题号:2752下列字符序列中不可用作C语言标识符的是.A:b70B:#abC:symbolD:a_1答案B第14题(
1.0分)题号:640以下对二维数组a的正确说明是()A:inta
[3][]B:floata34C:doublea
[1]
[4]D:floata34答案C第15题(
1.0分)题号:169下列说法不正确的是()A:主函数__in中定义的变量在整个文件或程序中有效B:不同函数中可以使用相同名字的变量C:形式参数是局部变量D:在一个函数内部可以在复合语句中定义变量这些变量只在复合语句中有效答案A第16题(
1.0分)题号:2966具有相同类型的指针变量p与数组a不能进行的操作是.A:p=a;B:*p=a
[0];C:p=a
[0];D:p=a;答案D第17题(
1.0分)题号:3016与实际参数为实型数组名相对应的形式参数不可以定义为.A:floata[];B:float*a;C:floata;D:float*a
[3];答案C第18题(
1.0分)题号:415为了提高程序的运行速度,在函数中对于整型或指针可以使用()型的变量A:autoB:registerC:staticD:extern答案B第19题(
1.0分)题号:2952以下函数调用语句中实参的个数是.ex__v1v2v3v4v5v6;A:3B:4C:5D:6答案A第20题(
1.0分)题号:3056若有条件表达式expa++:b--则以下表达式中能完全等价于表达式exp的是.A:exp==0B:exp!=0C:exp==1D:exp!=1答案B第21题(
1.0分)题号:165下列定义数组的语句中正确的是()A:#definesize10charstr1[size]str2[size+2];B:charstr[];C:intnum
[10];D:intn=5;inta[n][n+2];答案A第22题(
1.0分)题号:106以下叙述中不正确的是()A:一个好的程序应该有详尽的注释B:在C程序中,赋值运算符的优先级最低C:在C程序中,j++;是一条赋值语句D:C程序中的#include和#define均不是C语句答案B第23题(
1.0分)题号:2913下列程序的输出结果为.__in{intm=7n=4;floata=
38.4b=
6.4x;x=m/2+n*a/b+1/2;printf%f\nx;}A:
27.000000B:
27.500000C:
28.000000D:
28.500000答案A第24题(
1.0分)题号:3185若有定义:intaa
[8];则以下表达式中不能代表数组元aa
[1]的地址的是.A:aa
[0]+1B:aa
[1]C:aa
[0]++D:aa+1答案C第25题(
1.0分)题号:677若已定义的函数有返回值,则以**于该函数调用的叙述中错误的是()A:函数调用可以作为__的语句存在B:函数调用可以作为一个函数的实参C:函数调用可以出现在表达式中D:函数调用可以作为一个函数的形参答案D第26题(
1.0分)题号:679在C语言中,形参的缺省存储类是()A:autoB:registerC:staticD:extern答案A第27题(
1.0分)题号:3200下列程序段的输出结果是doubled=
3.2;intxy;x=
1.2;y=x+
3.8/
5.0;printf%d\nd*y;A:3B:
3.2C:0D:
3.07答案A第28题(
1.0分)题号:206以下程序的输出结果是()__in{chars[]=123*p;p=s;printf%c%c%c\n*p++*p++*p++;}A:123B:321C:213D:312答案B第29题(
1.0分)题号:616以下不是无限循环的语句为()A:fory=0x=1;x++y;x=i++i=x;B:for;;x++=i;C:while1{x++;}D:fori=10;;i--sum+=i;答案A第30题(
1.0分)题号:___1以下正确的函数定义形式是.A:doublefunintxintyB:doublefunintx;intyC:doublefunintxinty;D:doublefunintxy;答案A
三、程序填空共2题(共计24分)第1题(
12.0分)题号:402/*-------------------------------------------------------【程序填空】---------------------------------------------------------题目输入三个整数xyz,请把这三个数由小到大输出-------------------------------------------------------*/__in{intxyzt;scanf%d%d%dxyz;ifxy/***********SPA__***********/{【】}ifxz/***********SPA__***********/{【】}ifyz/***********SPA__***********/{【】}printf__alltobig:%d%d%d\nxyz;}答案=======答案1=======t=x;x=y;y=t;=======答案2=======t=z;z=x;x=t;=======答案3=======t=y;y=z;z=t;第2题(
12.0分)题号:599/*在屏幕上输出整数1到20*/__in{inti;i=1;do{printf%di;/***********SPA__***********/【】;/***********SPA__***********/}while【】;printf\n;}答案=======答案1=======i++=======答案2=======i=20
四、程序改错共2题(共计22分)第1题(
11.0分)题号:362/*------------------------------------------------------【程序改错】--------------------------------------------------------题目给定程序MODI
1.C中函数fun的功能是求两数平方根之和,作为函数值返回例如输入12和20,输出结果是y=
7.936238--------------------------------------------------------注意不可以增加或删除程序行,也不可以更改程序的结构------------------------------------------------------*/#includeconio.h#include__th.h/**********FOUND**********/doublefundouble*a*b{doublec;/**********FOUND**********/c=sqra+sqrb;/**********FOUND**********/returna;}__in{doubleaby;printfEnterab:;scanf%lf%lfab;y=funab;printfy=%f\ny;getch;}答案=======答案1=======doublefundouble*adouble*b=======答案2=======c=sqrt*a+sqrt*b;=======答案3=======returnc;第2题(
11.0分)题号:410/*------------------------------------------------------【程序改错】--------------------------------------------------------题目有
1、
2、
3、4个数字,能组成多少个互不相同且无重复数字的三位数?都是多少?--------------------------------------------------------注意不可以增加或删除程序行,也不可以更改程序的结构------------------------------------------------------*/__in{intijk;/**********FOUND**********/printf\n/**********FOUND**********/fori=1;i=5;i++forj=1;j5;j++fork=1;k5;k++{/**********FOUND**********/ifi!=k||i!=j||j!=kprintf%d%d%d\nijk;}}答案=======答案1=======printf\n;=======答案2=======fori=1;i5;i++=========或=========fori=1;i=4;i++=======答案3=======ifi!=ki!=jj!=k
五、程序设计共1题(共计14分)第1题(
14.0分)题号:320/*------------------------------------------------【程序设计】--------------------------------------------------请编写一个函数fun,函数的功能是求出N×M整型数组的最大元素及其所在的行坐标及列坐标如果最大元素不唯一,选择位置在最前面的一个例如输入的数组为:12341561218910112求出的最大数为18行坐标为2,列坐标为1--------------------------------------------------注意部分源程序给出如下请勿改动主函数__in和其它函数中的任何内容,仅在函数fun的花括号中填入所编写的若干语句------------------------------------------------*/#defineN4#defineM3#includestdio.hintRowCol;__in{inta[N][M]ij__xrowcol;printfinputaarray:;fori=0;iN;i++forj=0;jM;j++scanf%da[i][j];fori=0;iN;i++{forj=0;jM;j++printf%da[i][j];printf\n;}__x=funa;printf__x=%drow=%dcol=%d__xRowCol;getch;yzj;}intfunintarray[N][M]{/**********Program**********//**********End**********/}yzj{FILE*IN*OUT;intiIN[N][M]iOUTij;IN=fopenin.datr;ifIN==NULL{printfPleaseVerifyTheCurrerntDir..It__yBeChanged;}OUT=fopenout.datw;ifOUT==NULL{printfPleaseVerifyTheCurrentDir..It__yBeChanged;}fori=0;iN;i++forj=0;jM;j++fscanfIN%diIN[i][j];iOUT=funiIN;fprintfOUT%d%d%d\niOUTRowCol;fcloseIN;fcloseOUT;}答案----------------------int__xij;__x=array
[0]
[0];Row=0;Col=0;fori=0;iN;i++{forj=0;jM;j++if__xarray[i][j]{__x=array[i][j];Row=i;Col=j;}}return__x;----------------------
一、判断共10题(共计10分)第1题(
1.0分)题号:1265假设所有变量均为整型则表达式a=2b=3b++a+b的值是
5.答案N第2题(
1.0分)题号:1253若有说明intc;则whilec=getchar;是正确的C语句.答案Y第3题(
1.0分)题号:25如果想使一个数组中全部元素的值为0,可以写成inta
[10]={0*10};答案N第4题(
1.0分)题号:1279C语言的double类型数据一般占4个字节.答案N第5题(
1.0分)题号:1252break语句可用于循环体内它将退出该重循环.答案Y第6题(
1.0分)题号:30若有#defineSaba*b则语句area=S32;area的值为6答案Y第7题(
1.0分)题号:1267程序的基本结构中选择结构又叫分支结构有单分支与多分支两种.答案Y第8题(
1.0分)题号:1472C语言中的标识符以字母或下划线开头可跟任何字符.答案N第9题(
1.0分)题号:1246在if语句中else前一个语句可不加;.答案N第10题(
1.0分)题号:1245在标准C中=是判断两个数是否相等.答案N
二、单项选择共30题(共计30分)第1题(
1.0分)题号:172在C语言程序中()A:函数的定义可以嵌套但函数的调用不可以嵌套B:函数的定义不可以嵌套但函数的调用可以嵌套C:函数的定义和函数调用均可以嵌套D:函数的定义和函数调用不可以嵌套答案B第2题(
1.0分)题号:3067以下选项中合法的实型常数是.A:5E
2.0B:E-3C:.2E0D:
1.3E答案C第3题(
1.0分)题号:606已定义ch为字符型变量,以下赋值语句中错误的是()A:ch=\;B:ch=62+3;C:ch=NULL;D:ch=\xaa;答案A第4题(
1.0分)题号:3012以下程序段的输出结果为.charc[]=abc;inti=0;do;whilec[i++]!=\0;printf%di-1;A:abcB:abC:2D:3答案D第5题(
1.0分)题号:110C语言中,char类型数据占()A:1个字节B:2个字节C:4个字节D:8个字节答案A第6题(
1.0分)题号:547int*p
[6];它的含义为()A:具有6个元素的一维数组B:定义了一个指向具有6个元素的一维数组的指针变量C:指向整型指针变量D:指向6个整数中的一个的地址答案B第7题(
1.0分)题号:3181若有定义:int*p
[3];则以下叙述中正确的是.A:定义了一个基类型为int的指针变量p该变量具有三个指针B:定义了一个指针数组p该数组含有三个元素每个元素都是基类型为int的指针C:定义了一个名为*p的整型数组该数组含有三个int类型元素D:定义了一个可指向一维数组的指针变量p所指一维数组应具有三个int类型元素答案B第8题(
1.0分)题号:523函数的形式参数隐含的存储类型说明是()A:externB:staticC:registerD:auto答案D第9题(
1.0分)题号:95下列变量说明语句中,正确的是()A:char:abc;B:chara;b;c;C:intx;z;D:intxz;答案D第10题(
1.0分)题号:168若输入ab,程序运行结果为()__in{staticchara
[2];scanf%sa;printf%c%ca
[1]a
[2];}A:abB:aC:bD:程序出错答案C第11题(
1.0分)题号:2821经下列语句定义后sizeofxsizeofysizeofasizeofb在微机上的值分别为.charx=65;floaty=
7.3;inta=100;doubleb=
4.5;A:2224B:1244C:1448D:2448答案C第12题(
1.0分)题号:611以下for循环的执行次数是forx=0y=0;y=123x4;x++;()A:是无限循环B:循环次数不定C:4次D:3次答案C第13题(
1.0分)题号:561以下叙述中正确的是()A:C程序中注释部分可以出现在程序中任意合适的地方B:花括号“{“和”}”只能作为函数体的定界符C:构成C程序的基本单位是函数所有函数名都可以由用户命名D:分号是C语句之间的分隔符不是语句的一部分答案A第14题(
1.0分)题号:429假定所有变量均已正确定义,下列程序段运行后x的值是()k1=1;k2=2;k3=3;x=15;if!k1x--;elseifk2x=4;elsex=3;A:14B:4C:15D:3答案B第15题(
1.0分)题号:2782以下数据中不正确的数值或字符常量是.A:
8.9e
1.2B:10C:0xff00D:
82.5答案A第16题(
1.0分)题号:2374以下说__确的是A:C语言程序总是从第一个的函数开始执行B:在C语言程序中要调用函数必须在__in函数中定义C:C语言程序总是从__in函数开始执行D:C语言程序中的__in函数必须放在程序的开始部分答案C第17题(
1.0分)题号:3159在位运算中操作数每左移一位其结果相当于.A:操作数乘以2B:操作数除以2C:操作数除以4D:操作数乘以4答案A第18题(
1.0分)题号:599假设所有变量均为整型,则表达式a=2b=5b++a+b的值是()A:7B:8C:6D:2答案B第19题(
1.0分)题号:3052以下叙述正确的是.A:在C程序中__in函数必须位于程序的最前面B:C程序的每行中只能写一条语句C:C语言本身没有输入输出语句D:在对一个C程序进行编译的过程中可发现注释中的拼写错误答案C第20题(
1.0分)题号:3168若x=2y=3则xy的结果是.A:0B:2C:3D:5答案B第21题(
1.0分)题号:3091以下for循环的执行次数是forx=0y=0;y=123x4;x++;.A:是无限循环B:循环次数不定C:4次D:3次答案C第22题(
1.0分)题号:160C语言的if语句嵌套时,if与else的配对关系是()A:每个else总是与它上面的最近的if配对B:每个else总是与最外层的if配对C:每个else与if的配对是任意的D:每个else总是与它上面的if配对答案A第23题(
1.0分)题号:379以下不正确的叙述是()A:在C程序中所用的变量必须先定义后使用B:程序中APH和aph是两个不同的变量C:若a和b类型相同在执行了赋值语句a=b;后b中的值将放入a中b中的值不变D:当输入数值数据时对于整型变量只能输入整型值;对于实型变量只能输入实型值答案D第24题(
1.0分)题号:671C语言规定:简单变量做实参时,它和对应形参之间的数据传递方式是()A:地址传递B:单向值传递C:由实参传给形参,再由形参传回给实参D:由用户指定的传递方式答案B第25题(
1.0分)题号:3073能正确表示逻辑关系:a≥10或a≤0的C语言表达式是.A:a=10ora=0B:a=0|a=10C:a=10a=0D:a=10‖a=0答案D第26题(
1.0分)题号:3100下列运算符中优先级最高的是.A:B:+C:D:!=答案B第27题(
1.0分)题号:130以下程序段的执行结果是()doublex;x=
218.82631;printf%-
6.2e\nx;A:输出格式描述符的域宽不够不能输出B:输出为
21.38e+01C:输出为
2.2e+02D:输出为-
2.14e2答案C第28题(
1.0分)题号:480以下程序的输出结果是()__in{chars[]=123*p;p=s;printf%c%c%c\n*p++*p++*p++;}A:123B:321C:213D:312答案B第29题(
1.0分)题号:376在C语言中,能代表逻辑值“真”的是()A:TrueB:大于0的数C:非0整数D:非0的数答案D第30题(
1.0分)题号:2926在C语言中if语句后的一对原括号中用以决定分支的流程的表达式.A:只能用逻辑表达式B:只能用关系表达式C:只能用逻辑表达式或关系表达式D:可用任意表达式答案D
三、程序填空共2题(共计24分)第1题(
12.0分)题号:3/*-------------------------------------------------------【程序填空】---------------------------------------------------------题目下面的程序是求1!+3!+5!+……+n!的和,程序中有4个空,填空使程序完整-------------------------------------------------------*/__in{longintfs;intijn;/***********SPA__***********/【】scanf%dn;/***********SPA__***********/fori=1;i=n;【】{f=1;/***********SPA__***********/forj=1;【】;j++/***********SPA__***********/【】s=s+f;}printfn=%ds=%ld\nns;}答案=======答案1=======s=0;=======答案2=======i+=2=========或=========i=i+2=======答案3=======j=i=========或=========i=j=======答案4=======f=f*j;第2题(
12.0分)题号:414/*-------------------------------------------------------【程序填空】---------------------------------------------------------功能通过函数的递归调用计算阶乘-------------------------------------------------------*/longpowerintn{longf;ifn1/***********SPA__***********/f=【】;elsef=1;returnf;}__in{intn;longy;printfinputainteagernumber:\n;/***********SPA__***********/scanf%d【】;y=powern;/***********SPA__***********/printf%d!=%ld\nn【】;getch;}答案=======答案1=======powern-1*n=========或=========powern-1*n=======答案2=======n=======答案3=======y
四、程序改错共2题(共计22分)第1题(
11.0分)题号:417/*------------------------------------------------------【程序改错】--------------------------------------------------------题目读取7个数(1-50)的整数值,每读取一个值,程序打印出该值个数的*--------------------------------------------------------注意不可以增加或删除程序行,也不可以更改程序的结构------------------------------------------------------*/#includestdio.h__in{intian=1;/**********FOUND**********/whilen7{do{scanf%da;}/**********FOUND**********/whilea1a50;/**********FOUND**********/fori=0;i=a;i++printf*;printf\n;n++;}getch;}答案=======答案1=======whilen=7=========或=========whilen8=======答案2=======whilea1||a50;=========或=========whilea50||a1;=======答案3=======fori=1;i=a;i++第2题(
11.0分)题号:19/*------------------------------------------------------【程序改错】--------------------------------------------------------题目函数fun的功能是计算正整数num的各位上的数字之积例如,输入252,则输出应该是20请改正程序中的错误,使它能得出正确的结果--------------------------------------------------------注意不可以增加或删除程序行,也不可以更改程序的结构------------------------------------------------------*/longfunlongnum{/**********FOUND**********/longk;do{k*=num%10;/**********FOUND**********/num\=10;}whilenum;returnk;}__in{longn;printf\nPleaseenteranumber:;/**********FOUND**********/scanf%ldn;/**********FOUND**********/printf\n%ld\nfunlongn;}答案=======答案1=======longk=1;=======答案2=======num/=10;=========或=========num=num/10;=======答案3=======scanf%ldn;=======答案4=======printf\n%ld\nfunn;
五、程序设计共1题(共计14分)第1题(
14.0分)题号:22/*------------------------------------------------【程序设计】--------------------------------------------------题目从键盘为一维整型数组输入10个整数,调用fun函数找出其中最小的数并在__in函数中输出请编写fun函数(用for循环)--------------------------------------------------注意部分源程序给出如下请勿改动主函数__in和其它函数中的任何内容,仅在函数fun的花括号中填入所编写的若干语句------------------------------------------------*/#includestdio.hintfunintx[]intn{/**********Program**********//**********End**********/}__in{inta
[10]imin;fori=0;i10;i++scanf%da[i];fori=0;i10;i++printf%3da[i];printf\n;min=funa10;printf%d\nmin;yzj;}yzj{FILE*IN*OUT;intiIN
[10]i;intiOUTiCOUNT;IN=fopen
4.inr;ifIN==NULL{printfPleaseVerifyTheCurrerntDir..It__yBeChanged;}OUT=fopen
4.outw;ifOUT==NULL{printfPleaseVerifyTheCurrentDir..It__yBeChanged;}fori=0;i10;i++{foriCOUNT=0;iCOUNT10;iCOUNT++fscanfIN%diIN[iCOUNT];iOUT=funiIN10;fprintfOUT%d\niOUT;}fcloseIN;fcloseOUT;}答案----------------------intmini;min=x
[0];fori=1;in;i++{ifx[i]minmin=x[i];}returnmin;----------------------。