还剩64页未读,继续阅读
本资源只提供10页预览,全部文档请下载后查看!喜欢就下载吧,查找使用更方便
文本内容:
语言试题库C
一、单项选取第一章语言概述c一种程序执行是从—1c本程序函数开始,到函数结束A.MAIN MAIN.本程序文献第一种函数开始,到本程序文献最后一种函数结束2B、本程序函数开始,到本程序最后一种函数结束3C MAIN、本程序文献第一种函数开始,到本程序函数结束4D MAIN如下论述对的是
5、在程序中,函数必要位于程序最前面A CMAIN、程序每行中只能写一条语句B C、语言自身没有输入输出语句C C在对一种程序进行编译过程中,可发现注释中拼写错误6C、语言规定,在一种源程序中,主函数位置是在A CMAIN、必要在最前面B、必要在系统调用库函数背面C、可以在任意位置D、必要在最背面E、一种程序是由A C、一种主程序和若干子程序构成B、函数构成C没有错误A第行有错误B3第行有错误C5第行有错误D7若二维数组有歹!则计算机一元素在数组中位置公式为假A5a mJ,设位于数组第一种位置上a
[0]⑼B i*m+jC j*m+iD i*m+j-lE i*m+j+l第七章函数如下对的函数定义形式是1OA double funint x,int yC double funint x;int yD double funint x,int yEdoublefunint x,y;如下对的函数形式是2oA doublefunint x,int y{z=x+y;return z;}B funint x,y{int z;return z;}C funx,y{int x,y;double z;z=x+y;return z;}D doublefunint x,int y{double z;z=x+y;return z;}语言规定,简朴变量做实参时,它和相应形参之间数据传递方式是3C地址传递A单向值传递B由实参传给形参,再由形参传回给实参C传递方式D语言容许函数值型缺省定义,此时该函数值隐含类型是4C型Afloat型Bint型Clong型Ddouble下面函数调用语句具有实参个数为5ofuncexp1,exp2,exp3,exp4,exp5;C4D5第八章编译预解决命令请读程序1#define ADDxx+xmainint m=l,n=2,k=3;int sum=ADDm+n*k;printf“sum=%d”,sum;上面程序运营成果是OA sum=9B sum=10C sum=12D sum=18如下程序运营成果是2#define MINx,y xyx+ymain{int I=10,j=15,k;printf%d\n”,k;A10B15C100D150在宏定义#自中,用宏名代替一种A31«PI
3.14159PI常量B单精度数C双精度数D字符串E若有宏定义如下4#define X5#define YX+l#define ZY*x/2则执行如下语句后,输出成果是printfint a;a=Y;printf%d\iT,Z;printf%d\n,--a;A7B12C12D7若有如下宏定义5#define N2#define YnN+l*n则执行语句后成果是z=2*N+Y5;语句有错误AB z=34C z=70无定值D z第九章指针如下程有错误,错误因素是main{int*p,I;char*q,ch;P=I;q=ch;*p=40;二**p q;和类型不一致,不能执行*语句A pq P=*Q;中存储是地址值,因而不能执行*语句B PP=40;没有指向详细存储单元,因此*没有实际意义C QQ虽然指向了详细存储单元,但该单元中没有拟定值,因此不能执行语句Q*P=*Q;已有定义且和均已指向变量下面不能2int k=2;int*ptrl,*ptr2;ptrl ptr2K,对的执行赋值语句是.Ak=*ptrl+*ptr2;Bptr2=K;Cptr1=ptr2;Dk=*ptr1**ptr2;变量指针,其含义是指该变量_______.3值地址名一种标志A B C D若有语句和下面均代表地址一组选项是.4int*point,a=4;ponit=a;A a,point,*aB*a,a,*pointC*point,*point,aDa,^point,point下面能对的进行字符串赋值操作是.5A chars
[5]={ABCDE”};B char s
[5]={‘C charts;s=ABCDE”;D char*S;scanf“%s”,s;若有如下定义,则对数组元素对的引用是.AA*a
[5]B*a+2C*P+5D*a+2若有如下定义,则对数组元素地址对的引用是A aB p+5C*a+lD a+lE a
[0]若有定义:则对数组第行第歹!假设已对的阐明并赋值元素值对的引用为.inta
[2]
[3];a IJ JL JA**a+I+JBa+I[j]C*a+I+jD*a+I+j⑼若有定义则对数组第行第列假设已对的阐明并赋值元素地址对的引用inta
[2]
[3];a ij i,j为.A*a[i]+jBa+iC*a+jF a[i]+j若有如下定义和语句,则对数组元素地址对的引用为.10aInt a
[2]
[3],*p
[3]P=a;A*p+2Bp
[2]C p[l]+lD p+1+2第十章构造体与共用体如下对构造体类型变量定义中不对的是1A#define STUDENTstruct studentSTUDENT{int num;float age;}stdl;Bstruct student{int num;float age;}stdl;Cstruct{int num;float age;}stdl;Dstruct{int num;float age;}student;struct studentstdl;设有如下语句2{int a;float b;}stutype;则下面论述对的是.是构造体类型核心字Astruct是顾客定义构造体类型Bstruct stu是顾客定义构造体类型名Cstutype和都是构造体成员名Da b设有如下定义struct sk{int n;float x;}data,*p;若要使指向中域,对的赋值语句是A pdata nB p=data.n;C*p=data.n;D p=struct sk*data.n;E p=struct sk*data.n;设有如下语句struct st{int n;static structst a
[3]={5a[l]7a
[2],9/\05}*p;9p=a[O];则如下表达式值为是.6A p++-nBp-n++C*p.n++D++p-n第十一章位运算⑴如下运算符中优先级最低是优先级最高是A BCIID|⑵若有运算符则它们按优先级按由高到低对的排列顺序是,sixeofj,=A sizeof,=,«,AB sizeof,«,A,=八,二C,sizeof,D«,A,=,sizeof在语言中,规定运算数必要是整型运算符是3CA AB%C!、若干过程构成D、若干子程序构成E、如下论述不对的是A、一种源程序可由一种或各种函数构成BC、一种源程序必要包括一种函数C CMAIN、程序基本构成单位是函数D C在程序中,注释阐明只能位于一条语句背面C第二章数据类型、运算符与表达式若都是型变量,则计算下面表达式后,值为x,i,j,k int xx=i=4,j=l6,k=
32、A
4、B
16、C
32、D52下列四组选项中,均不是语言键字选项是C、A define,IF,type、E B.getc,char,printf1C.include,scanf,case2if,struct,type下面四个选项中,均是不合法顾客标记符选项是、A A,P0,do、B float,laO,_AD在语言中,规定运算数必要是整型或字符型运算符是4CA BC!D||是5sozeoffloat一种函数调用A一种不合法表达形式B一种整型表达式C一种浮点表达式D第十二章文献⑴系统原则输入文献是指O键盘A显示屏B软盘C硬盘D如下可作为函数中第一种参数对的格式是2fopenA c:user\text.txtB c:\user\text.txtCc:\user\text.txt Dc:\\user\text.txt若执行函数时发生错误,则函数返回值是.3fopen地址值A B0C1DE0F若要用函数打开一种新二进制文献,该文献要既能读又能写,则文献方式字符串应4fopen是A nab+”B“wb+”C nrb+nD nab”当顺利执行了文献关闭操作时,函数返回值是5fcloseA-lBTUREC0D1
二、填空第一章语言概述C源程序基本单位是1C一种源程序至少应涉及一种2C第二章在一种源程序中,注释某些两侧分界符分别为和C第三章在语言中,输入操作是由库函数完毕,输出操作是由库函数完毕C第四章数据类型、运算符与表达式⑴在语言中以位机为例,一种型数据在内存中所占字节数为,一种型数C16char int据在内存中所占字节数为在语言中,实型变量分为两种类型,它们是和2C o若是型变量,则计算表达式后,值为3a int a=25/3%3a语言中标记符只能由三种字符构成,它们是,和4C表达式血值数据类型为58/4*
0112.5/
1.25*
3.7+
2.3第五章简朴程序设计C如下程序输出成果是1omain{int x=l,y=2;printf“x=%d y=%d*sum*=%d\n\x,y,x+y;printfC10squared is:%d\n”J0*10;如下程序输出成果是2o#include studo.hmain{int a=325;double x=
3.1415926;printfa=%+06d x=%+e\n\a,xj;假设变量和均为整型,如下语句可如下借助任何变量把、中值进行互换请填3a b a b空a+=;b=a-;a-=;设和都是型变量,为型变量,则在位微型机上执行下面赋值语句后,值为4x,y z int mlong16x值为值为,y,zoy=x=32767,x=-l;z=m=0xFFFF若为型变量,则执行如下语句后值是5x intxx=7;十二二x X-x+x;第六章选取构造程序设计当时,表达式值是1a=3,b=2,c=l f=abc在语言中表达逻辑“真”值用2C设均为型变量,请写出描述或中有一种不大于表达式.3x,y,zint“x yz”当时,执行完后;值为值为4m=2,n=l,a=l,b=2,c=3d=m=a!=bn=bc n,m有则表达式值为5int a=3,b=4,c=5;a||b+cb==c第七章循环控制执行下面程序段后,值是1KoK=l;n=263;Do{k*=n%10;n/=10}whilen;⑵下面程序段中循环体执行次数是oA=10;B=0;Do{b+=2;a-=2+b;}whilea=0;下面程序段运营成果是3oX=2Do{printf*”;x—;}while!x==0;下面程序段运营成果是4o1=1;a=0;s=l;Do{a=a+s*i;s=-s;i++;}whilei=10Printfa=%d,a;鸡兔共有只,脚共有个,下面程序段是计算鸡兔各有多少只,请填空53090Forx=l;x=29;x++{y=30-x;ifprintf%d,%d\n”,x,y;}第八章数组在语言中,二维数组定义方式为类型阐明符数组名;1C在语言中,二维数组元素在内存中存储顺序是2C若有定义:则数组中行下标下限为,列下标上限为3double x
[3]
[5];x若二维数组有歹则计算机任一元素用口]在数组中位置公式为.假设位于4a mU,a a
[0]
[0]数组第一种位置上若有定义凯则初始化后,⑵得到初值是得到初值是5int3]
[4]={{1,2},{0},{4,6,8,10}};a⑴,a
[2][l]o第九章函数语言规定,可执行程序开始执行点是1C在语言中,一种函数普通由两个某些构成,它们是和2C0下面函数功能是求两个参数和,并将和值返回调用函数函数中错误某些是;改正后3add为Void addfloat a,float b{float c;c=a+b;return c如下程序运营成果是4main{increment;increment;increment;}increment;{intx=0;x+=l;printfT%d”,x;如下函数功能是对中值进行四舍五入计算,若计算后值与值相等,则显5Check valueponse示否则显示计算后值已有函数调用语句请填空“WELLDONE!!”,Check ponse,value;Void Checkint ponse,value{int val;val=;计算后值printf:%d”,val;ifprintf\Nwell DNOE!!!\n;else printf^\nSorry thecorrect answeris%d\n\val;}第十章编译预解决命令设有如下宏定义:1#define WIDTH80#define LENGTHWIDTH+40则执行赋值语句为型变量后,值是v=LENGTH*20;V intv设有如下宏定义:2#defineWIDTH80#define LENGTHWIDTH+40则执行赋值语句为型变量后,值是k=LENGTH*20;K int k下面程序运营成果是3o#define DOUBLErr*rmain{intx=l,y=2,t;t=DOBLEx+y;printf%d\rT,t;下面程序运营成果是4o#define MULzz*zmainprintf%d\n”,MULl+2+3;下面程序运营成果是5o#define POWERxx*xmain{int1=1;while I=4printf%d\t”,POWERI++;printf\n»;第十一章指针下面程序段运营成果是1chars
[80],*sp=HELLO!”;sp=strcpys,sp;s
[0]=b;putssp;下面程序段运营成果是2char[a]=,9,\*p;int1=0;P=a;while*p{ifI%2=0p=,*;p++;I++;putsa;若有如下语句和定义3int a
[4]={0,l,2,3,,*p;p=a[l];则值是++*p若有定义:则值是值是4int a⑵
[3]={2,4,6,8,10,12};a⑼⑼+282+1,*a[l]+2第十二章构造体与共用体⑴如下程序用以输出构造体变量所占内存单元字节数,请在内填上恰当内容btStruct ps{double I;char arr
[20];main{struct psbt;血pt f“bt size:%d\n:,;设有三人姓名和年龄存在构造数组中,如下程序输出三人中年龄居中者姓名和年龄,请在内2填上对的内容Static structman{char name
[20]int age;}person[]{li-ming”18,“wang-hua:19,“zhang-ping:20;main{int i,j,max,min;max=min=person
[0].age;if person[i].agemax);for i=l;i3;i++else ifperson[i].agemin);fori=0;i3;i++ifperson[i].age!=max person[i].age!=min{printf%s%d\n,\person[i].name person[i].age;5break;()若以定义:3struct num{int a;int b;float f;}n={l,3,
5.0};struct num*pn=n;则表达式pn-〉b/n.a*++pn-b值是(),表达式(*pn).a+pn-f值是()
(4)如下程序功能是计算并打印复数差请在()内填入对的内容Struct comp、C b-a,goto,intD._123,temp,INT若有代数式则对的语言表达式是3ae/bc,C、A a/b/c*e*
3、B3*a*e/bc、C3*a*e/b*c、D a*e/c/b*3已知各变量类型阐明如下5int k,a,b;unsinged longw=5;double x=
1.42;则如下不符合语言语法表达式是—C、A x%-
3、B w+=-2;、C k=a=2,b=3,a+b、D a+=a-=b=4*a=3第三章简朴程序设计c函数可以向终端输出一种1putchar、整型变量表达式值A、实型变量值B、字符串C、字符或字符型变量值D{float re;float im;}struct comp*mx,ystruct comp*x,*y;{;z=struct comp*mallocsizeofstruct comp;z-re=x-re-y-re;z-im=x-im-y-im;return;main{struct comp*t;struct xompa,b;a.re=l;a.im=2;b.re=3;b.im=4;t=m;printf^z.re=%f,z.im=%fn,t-re,t-im;⑸如下程序运营成果是struct ks{int a;int*b;}s
[4],*p;mainint n=l,i;printf“\n»;fori=0;i4;i++{s[i].a=n;s[i].b=s[i.a;n=n+2;}p=s[O];p++;printf%d,%d\n”,++pa,p++-a;第十三章位运算⑴在语言中,运算符作为单目运算符时表达是运算;作为双目运算符时表达是c运算与表达式等价另一书写形式是2a=b⑶设有若要通过运算屏蔽掉中其他位,只保存第和第位右起为第位,则char a,b;ab a281二进制数是.b测试型变量第六位与否为表达式是设最右位是第一位4char a1第十四章⑸设二进制数值是若想通过运算使中低位不变,高位清零,则x11001101,xy x44y二进制数为()o第十五章文献在程序中,文献可以用(方式存取,也可以用(方式存取
(1)C))()在程序中,数据可以用()和()两种代码形式存储2C()在程序中,文献存取是以()为单位,这种文献被称作()文献3C
二、
(4)函数调用语句fgets(buf,n,fp);从fp指向文献中读入()个字符放到buf字符数组中函数值为()o
四、()()函数用来判断文献与否结束,如果遇到文献结束,函数值为(),否则5feof fp为()o
五、判断第一章语言概述C第二章数据类型、运算符与表达式()语言所提供基本数据类型涉及整型、实型和字符型l C⑵在程序中,逗号运算符优先级最低C()当从键盘输入数据时,对整型变量只能输入整型数据,对实型变量只能输入实型数据3()语言中标记符只能由字母、数字和下划线三种字符构成4C在语言中,型数据在内存中存储形式是原码形式C char第三章简朴程序设计C
(1)当输入一种实型数据时,格式控制某些应规定小数点后位数,如scanf(%
4.2f”,6()整型变量输出格式控制符只有%€一种21()函数可以向终端输出一种字符串函数中用到格式符其中数字表达输3putchar pirntf%5s,5出字符串占歹如果字符串长度不不大于则输出按原字符长度从左向右所有输出5ij,5,输入项可以是一种实型常量,如scanf%f,
2.3第四章选取构造程序设计逻辑运算符两侧运算对象可以是任何基本类型数据1语言中只提供了三种逻辑运算符:,||,和!2C若则表达式值是3a=6,b=4,c=3ab+c||b-c0关系运算式成果都是逻辑值4若则表达式值是5a=l,b=2,aba:b+l3第五章循环控制设有如下程序段intx=0,s=0;while!x!=0s+=++x;printf%d”,s;则运营该程序段后输出为:10循环只能应用于循环次数已经拟定状况2for语句只能用于退出多层循环3goto语句中不能浮现语句4switch continue只能用语句终结本次循环5continue第六章数组两个字符串中所包括字符个数相似时,才干比较字符串1字符数组可以存储字符串2不能用关系运算符对字符数组中字符串进行比较3如果定义了一种指向数组指针,则该指针可以相称于数组名使用如果没有给一种整型数组元素赋初值,则其元素缺省初值所有为Oo第七章函数语言中,顾客若需调用原则库函数,在调用前必要重新定义1C语言中不容许顾客重新定义原则库函数2C在程序中,函数定义和调用都不容许嵌套3C如果用数组名作为函数调用实际参数,则传递给形参是数组首地址4形式能参数也是一种局部变量5第八章编译预解决命令预解决命令行都必要以#号开始1宏替代不占用运营时间,只占编译时间2程序在执行过程中对预解决命令进行解决3C宏名必要用大写字母表达4在文献包括预解决命令使用形式中,当#后文献名用括起来时,表达在当前目录搜索被include包括文献第九章指针若有定义:则标记符表达是一种指向整型变量指针1int*p
[4],p若有定义则标记符表达是一种指针数组名2int*p
[4],p指针值就是地址值3第十章若有定义血指针可以表达函数返回值类型*p,p第十一章语言容许函数带形参,但形参名只能是和C mainargv arvc第十二章构造体与共用体当定义一种构造体变量时,系统分派给它内存是各成员所需内存量总和1
(2)C语言中,构造体变量在程序执行期间只有某些成员驻留在内存中
(3)一种共用体类型定义中不能浮现构造体类型成员第十三章用只是将已存在类型用一种新标记符来代表,而不能增长新类型typedef第十四章用可以定义各种类型名,但不能用来定义变量typedef第十五章位运算第十六章文献()运用函数可以实现文献随机读写操作1fseek()函数作用是使位置指针重新返回文献开头2rewind()在程序中,文献可以用随机读写方式存取,也可以用顺序读写方式存取3C()函数()作用是得到流式文献中当前位置4ftell fp
六、函数作用是从指定文献读入一种字符,该文献打开方式必要是只读fgetc
七、程序设计第一章语言概述C第二章数据类型、运算符与表达式第三章简朴程序设计C第四章选取构造程序设计编程实现输入一种整数,判断它能否被子整除,并输出如下信息之一:
(1)3,5,7能同步被整除;1)3,5,7)能被其中两数(要指出哪两个)整除;2)能被其中一种数(要指出哪一种)整除;3)不能被任一种整除43,5,7()用编程实现:2switch-1x0Y y=L0x=01x.O第五章循环控制第六章每个苹果元,第一天买个苹果,第二天开始,每天买前一天倍,直至购买苹果个数
10.82达到不超过最大值编写程序求每天平均花多少钱?100第七章编写程序,从键盘输入名学生门成绩,分别记录出每个学生平均成绩第八章数组265从键盘输入若干整数数据个数应少于其值在至范畴内,用一作为输入结束标志150,41记录每个整数个数试编程若有阐明:现要将行和列元素互换后存到另一种二维数组中试2inta⑵
[3]={{1,2,3},{4,5,6}};2b编程第九章函数已有变量定义和函数调用语句函数用以求和数作为函数值返回1int a,b;b=suma;sum k,若值为经函数计算后,值是请编写函数a10,sum b55sumSumint n{}是一种整型数组,且各元素均已赋值,函数可求出其中最大元素值并将2a2*4max_value max,此值返回主调函数今有函数调用语句;请编写函数max=max_valuea max_value第十章编译预解决命令第十一章输入两个整数,求它相除余数用带参Max_valueint arr[]
[4]1宏来编程实现第十二章试用义一种带参宏以实现两个整数之间互换,并运用它将一维数组和值2swapx,y,a b进行互换第十三章指针()编一程序,将字符串赋给一种字符数组,然后从第一种字母开始间隔地输出该串1computer请用指针完毕第十四章
(2)设有一数列,包括10个数,已按升序排好现规定编一程序,它可以把从指定位置开始个数按逆序重新排列并输出新完整数列进行逆序解决时要赤使用指针办法试编N程(例如:原数列为若规定把从第个数开始个数按逆序2,4,6,8,10,12,14,16,18,20,45重新排列,则得到新数列为)2,4,6,16,14,12,10,8,18,20第十五章构造体与共用体第十六章
(1)试运用指向构造体指针编制一程序,实现输入三个学生学号、数学期中和期末成绩,然后计算其平均成绩并输出成绩表第十七章
(2)请定义枚举类型,用枚举元素代表人民币面值涉及1,2,5分;1,2,5角;1,2,元5,10,50,100第十八章位运算第十九章
(1)请编程序从终端读入16进制无符号整数M,调用函数rightrot将M中原始数据循环右移位并输出移位先后内容N第二十章
(2)请编写函数getbits从一种16位单元中取出以nl开始至n2结束某几位,起始位和结束位都从左向右计算同步编写主函数调用进行验证getbits第二十一章文献
(1)请编写程序从键盘输入一种字符串,将其中小写字母所有转换成大写字母,输出到磁盘文献中保存输入字符串以“!”结束然后再将文献中内容读出显示在屏幕“upper.txt”upper.txt上()设文献中存储着一年级学生基本状况,这些状况由如下构造体来描述:2student.dat/*学号*/struc student{long int num;/*姓名*/char name
[10];/*年龄*/int age;/*性别*/char sex;/*专业*/char speciality
[20];;/*地址*/char addr
[40];请编写程序,输出学号在之间学生学号、姓名、年龄和性别970101—971035
八、参照答案
一、名词解释
二、单项选取题第一章语言概述C1A2C3D4C5B第二章数据类型、运算符与表达式1C2A3C4C5A第三章简朴程序设计C1D2D3D4A5B第四章选取构造程序设计1C2B3D4C5B第五章循环控制1c⑵c⑶A4C5C第六章数组1c若均定义为型,定义为型,如下合法函数调用语句是2x,y intz doublescanf、A scanf“%d%lx,%le”,x,y,z;、B scanf%2d*%d%lf,x,y,z;、C scanf“%x%*d%o”,x,y,z;、D scanf%x%o%
6.2%,x,y,z;当输入数据形式为〈回车>时,如下程序输出成果为325,13,10main{intx,y,z;scanf,%d%d%d;x,y,z;printfx+y+z=%d\n”,x+y+z;}、A x+y+z=
48、B x+y+z=
35、C x+z=
35、不拟定值D如下能正拟定义整型变量和并对它们赋初值为语句是a,b c,
5、A int a=b=c=5;、B int a,b,c=5;、C a=5,b=5,c=5;、D a=b=c=5;若有如下定义,则对的赋值语句是int a,b;float x;、A a=l,b=2;⑶D4C5D第七章函数⑴A⑵D⑶B4B⑸B第八章编译预解决1B⑵B⑶D4D⑸B第九章指针⑴D⑵B⑶B4D⑸C⑼D10C第十章构造体与共用体⑴D⑵C⑶D4C5D第十一章位运算⑴1C2B⑵B⑶B4B5C第十二章文献⑴A⑵B⑶C4D
三、填空题第一章语言概述C函数1主函数或:函数2main〉*/31/*24lscanf2printf第二章数据类型、运算符与表达式11122单精度型或:型双精度型或型21float2double311026字母数字下划线4123整型或:型5int第三章简朴程序设计Clx=l y=2*sum*=310Squared is:100此处“-代表空格2a=+00325---x=+
3.14159e+00⑶lb2b3b41327662-l365535⑸-14第四章选取构造程序设计⑴0非数字241021⑸1第五章循环控制⑴36⑵33**4a=-552*i+4*y==90第六章数组常量表达式常量表达式112按行主顺序存储2⑶10244i*m+j+l⑸126第七章函数⑴程序中函数main函数阐明某些函数体⑵123lvoid addfloata,float b2float addfloata,float b4Hl5lintvalue*10+5/102ponse==val第八章编译预解决354125212第九章指针1hELLO!2*2*4*6*8*324112212第十章构造体与共用体1sizeofstruct ps21max=person[i].age2min=person[i].age
3311226.041struct comp*z2z3a,b⑸7,3第十一章位运算取地址按位与lvl22a=ab310000010或或4a040a0x20a32500001111第十二章文献顺序或随机〉随机或顺序1122ASCII字符流式3vl2首地址4ln-l2buf550*sizeofstruct st
四、判断第二章数据类型、运算符与表达式错1对2错3对4错5第三章简朴程序设计C错1错2错3对4错5第四章对1对2错3第五章错1错2错3错4对5第六章数组错1对2对3对4对5第七章函数错1错2错3对4对5第八章编译预解决命令对1错5第九章指针错1对2对3错4错5第十章构造体与共用体对1错2错3对4错5第二十二章文献错1对2对3对4错5
五、编程题第一章语言概述第二章数据类型、运算符与表达C式第三章简朴程序设计C第四章选取构造程序设计1main{intx;scanf%d[x;ifx%3==0x%5==0x%7==0printf%d canbe dividedby3,5,7\n\x;else ifx%3==0x%5==0printf%d canbe dividedby3,5\n”,x;else ifx%3==0x%7==0printf“%d canbe dividedby3,7\rT,x;else ifx%5==0x%7==0printf“%d canbe dividedby5,7\n\x;else ifx%3==0printf:%d canbe dividedby3\n”,x;else if x%5==0printf%d canbe dividedby5\rT,x;else ifx%7==0printf%d canbe dividedby7\rT,x;elseprintf“%d cannotbe divided3,5,7\n\x;2main{float x;inty;printf^\n inputx:‘’;scanf66%f;x;switchx0{case l;y=-l;break;case0;switchx==0{case1;y=0;break;default:y=1;printf“\n y=%d\y;第五章循环控制1#include stdio.hmain{int day=0,buy=2;float sum=
0.0,ave;do{sum+=
0.8*buy;day++;buy*=2;}whilebuy=100;ave=sum/day;、B b++;、C a=b=5;、D b=intx;第四章选取构造程序设计能对的表达“当值在[]和[]范畴为真,否则为假”表达式1X1,10200,210是〉=A.x=1X=10x200x=210〉=B.x=l I|xv=10||x.200||x=210C.x=lx=10||x=200x=210D.x=l||x=10x.=200||x=210如下程序运营成果是2#include stdio.hmain{int a,b,d-241;a=d/100%9;printf“%d,%d»ab;A.6,1B.2,1C.6,0D.2,0
(3)请阅读如下程序:printf{u%f,ave};2#includestdio.hmain{int i,j;floati=l;i=6;i++{sum=O;forj=l;j=5;j++{scanf%f\g;sum+=g;ave=sum\5;printf“No.%dave=%
5.2f\n”,i,ave;第六章数组1#define M50main{int a[M],c
[5],i,n=0,x;printf Enter0or lor2or3or4,to endwith-l\n;scanf%d”,x;while x!=-1{ifx=0x=4{a[n]x;n++;}for i=o;i=5;i++c[i]=0;for i=0;in;I++c[a[i]]++;printf^The resultis:\n;for i=;i=4;i++printf%d:%d\n”,c[i];printf\n;2main{inta
[5]
[4]={3,6,2,1,3,9,0,2,1,5,6,7,4,0,0,0,0;int i,j;fori=0;I4;I++forj=0;j4;j++皿;a
[4][j]+=a[iprintffThe resultis:\n;for i=0;i4;i++printfC%3d5\a
[4][i];第七章函数1sumint n{int i,k=O;for i=0;i=n;i++k+=i;return k;⑵maxint arr[]
[4]{int I,j,max;max=arr
[0]
[0];forI=0;I2;I++forj=o;j4;j++if arr[i][j]maxmax=arr[i][j];returnmax;第八章编译预解决2#define MODa,ba%bmain{inta,b;printf^input twointeger a,b:;scanf%d,%d;a,b;printf6Ca modb is:%d\n,\MODa,b;3#define swapx,y{int t;t=x;x=y;y=t;}main{int i,a
[10],b
[10];for i=0;I10;i++scanfC%d”,a[i];for i=0;i10;i++scanf“%d”,b[i];for i=o;i10;i++swapa[i],b[i];for i=0;i10;i++printf“%d”,a[i7;printf\n”;for i=0;i10;i++printfT%d”,b[i];第九章指针1#include stdio.hmain{static charx[]=computer”;char*p;for9p=x;px+7;p+=2putchar*p;main{int b
[10],position,mun,k,*ql,*q2,temp;printfflnput10sorted munbers:\n;for k=0;k10;k++scanf%d”,b[k];printffAnlnput theposition:\n;scanf C%d9\position;printf^Input thenumber ofdata thatbe sortedagain:\n^;sccaf%d”,num;printf Theold array b is:\rT;for9k=0;k10;k++0printf%4d”,b[k];printf“\n”;ql=b[position-1];q2=b[position-2+num];for;qlb[position-l]+/2;q++,q2—{temp=*q1;q1=*q2;*q2=temp;}printfi^The newarraybis:\n;for k=0;k10;k++第十章构造体与共用体1struct stuint num;int mid;int end;int ave;}s
[3];main{inti;struct stu*p;for p+s;ps+3;p++{scanf%d%d%d%d,\p-num,p-mid,9p-end};for p=s;ps+3;p++printR%d%d%d%d\n,\p-num,p-mid,p-end,p-ave;2enum money{fen1=1,fen2=2,fen5jiao1=10Jiao2=20,jiao5=50,yuan1=100,yuan2=200,yuan5=500,yuan10=1000,yuan50=5000,yuan100=10000};第十一章位运算1main{unsigned rightrotunsigned a,int n;unsigned int m,b;intn;printfifenter mand n:’;scanf%x,%d”,m,n;printffm=%x,ri=%d\n”,m,n;b=rightror m,n;printfb=%x\n\b;unsigned rightrorunsigned a,intn{int rb;玲while n0rb=al«16-l;a=a»1;a=a|rb;returna;2main{unsigned x;int nl,n2;“请输入一种八进制数printf x:;scanf%o,x;请输入起始位结束位“;printf nl,n2:scanf%d,%d”,n1,s2;printf%ogetbitsx,n1-1,n2;getbitsvalue,n1n2unsigned value;int nl,n2;{unsigned z;z=z»n lz«l6-n2;z=z»16-n2;return z;第十二章文献1#include stdio.hmain{FILE*fp;char str
[100],filename
[10];int i=0;户if fp=fopen“upper.txt Jw=NULL{printfCcan notopen filerT;exit0;}printfCEnter astring:\n’;getsstr;while str[i]!=’!{if str[i]=astr[i]=zfputc str[i],fp;i++;fclosefp;fp=fopen uupper.txtv,r”;fgetsstr,strlenstr+1,fp;printff%s\n\str;fclosefp;2#include”stdio・h”struct student{long intnum;char name
[10];int age;char sex;char speciality
[20];char adder[40J;FILE*fp;Main{struct studentstd;fjp=fbpenstudent.dat“;Tb;if fp==NULLprintf^file notfbundrT;else{while!Feoffp{fread std,sizeof structstudent,l,fp;if std.num=9970101std.num=970135「%printf ld%s%d%c\n,\std.num std.name std.age std.sex;99}fclosefp;main{inta=5,b=0,c=0;if a+b+c printf,**畤$else printf$\n’;以上程序—O有语法错误不能通过编译A可以通过编译但不能直接通过连接B输出***C输出$$$D如下程序运营成果是—4omain{intm=5;ifm++5printfu%d\n,\m;else printfi^%d\n,\m----------------;A4B5C6D7为了避免在嵌套条件语句中中产生二义性,语言规定子句总是与相配对if-else celse缩排位置相似A if其之前近来B if其之后近来C if同一行上D if第五章循环控制设有程序段1intk=10while k=0k=k-l则下面描叙对的是OA whilek=0k=k-1;循环是无限循环B循环体语句一次也不执行C循环体语句执行一次D下面程序段运营成果是2oint n=0;whilen++=2;printf%d”,n;A2B3C4有语法错D语言中和循环重要区别是3C whiledo-while循环体至少无条件执行一次A do-while循环控制条件比循环控制条件严格B whiledo-while容许从外部转到循环体内Cdo-while容许从外部转到循环体内Ddo-while如下能对的计算程序段是41*2*3*...*10A do{i=l;s=l;s=s*i;i++;}whileI=10;B do{i=l;s=0;s=s*i;i++;}whileI=10;C i=l;s=l;do{s=s*i;i++;}whileI=10;D i=l;s=0;do{s=s*i;i++;}whileI=10;第六章数组在语言中,引用数组元素时,其数组下标数据类型容许是A1c整型常量B整型表达式C整型常量或整型表达式D任何类型表达式E如下能对二维数组进行对的初始化语句是2a oAinta
[2][]={{l,0,l},{5,2,3,};B inta[]
[3]={{l,2,3},{4,5,6};C32]
[4]={1,2,3,},{4,5},{6}};D inta[]
[3]={{l,0,l},{},{l,l}};若有阐明则下面对的论述是A3inta
[3]
[4]={0};只有元素⑼可得到初值B a
[0]0此阐明语句不对的C数组中各元素都可得到初值,但其值不一定为D a0数组中每个元素均可得到初值E a0下面程序每行程序前面数字表达行号41main2{3floata
[10]={0};4int i5fbri=0;i3;i++scanf%d\a[i];6fori=l;i10;i++a
[0]=a
[0]+a{i};7printf%f\rT,a[OD;。