还剩7页未读,继续阅读
文本内容:
13执行下面程序段后,k值是o ok=1;n=263;do{k*=n%10;n/=10}while n;.下面程序段中循环体的执行次数是.14a=10;b=0;do{b+=2;a一+2+b;}wh ile a=0;若循环用以下形式表示
15.forfor表达式1;表达式2;表达式3循环体语句则执行语句fori=0;i3;i++pr i n tf“*”;时,表达式3执行次16o以下程序的输出结果是.main;,;{int s
[10]={l,2,3,4,5,6,7,8,9,10},*p=s printff%d\n”*p+
417.若二维数组a有m歹U,则计算任一元素a[i][j]在数组中位置的公式为假设a
[0]o
[0]位于数组的第一个位置上18在C语言中,二维数组元素的内存中的存放顺序是o o
19.在C语言中,一个函数一般由两个部分组成,它们是O
20.以下程序的运行结果是o#in cludestd io.h f int a[]{int i=0;wh ile a[i]=10p r i ntf%d,a[i];i++;}m ain{int a[]=1,5,10,9,11,7}:fa+1;
21.设有以下宏定义:#de f ine WIDTH80#define LENGTHWID TH+40则执行赋值语句k=LENGTH*20;k为i n t型变量后,k的值是O
22.下面的运行结果是.#d ef i ne MULzz*z main{pr int f%d\n”,MUL1+2+3;
23.下面程序的运行结果是o#d efine EXC Ha,b{i n t t;t=a;a=b;b=t;}main{i nt x=5,Y—9;EXCH x,y;p rintfx=%d,y=%d\n”,x,y;24下面程序段的运行结果是o ochars
[80],*s p=H ELL0!〃;sp=strcpyCs,s p;s
[0]=h;putss p;
25.下面程序段的运行结果是oc h ar si=AbcdEf,s2二“aB”;s1++;t=s trcmpsi,s20;pr i nt%d\n,t26o下面程序段的运行结果是och a r*p=〃PDPl-0”;i nt I,d;for1=0;I7;I++{d=i sd igi t*p+ii;i fd!=0printf C%c*p+I;
27.当运行以下程序时,从键盘输入boo kCRbook CR«CR表示回车,表示空格,则下面程序段运行的结果是char al
[80],a2
[80],*si=al,*s2=a2;ge ts si;gets s2;if!strcmpsl,s2printf“*”else pr i nt fu#n;pri nt f%d”,str1enst rc at si,s2;28o若已定义struc t num{i nt a;in tb;f1oa t f;}n={1,3,
5.0};stru ct num*pn=n;则表达式*pn.a+pn一〉f的值是
29.在C语言中,运算符作为双目运算符时表示的是运算.30o在C语言中,文件的存取是以字符为单位的,这种文件被称作文件
三、编程题:{c hars tr
[80];prin tf z,Ent er string:,z;g etsst r;p rintf\n stri n g1e ngth is:%d\n”,st rle ns tr;
4.解将从字符串中删除所有字符k的功能定义为函数参考程序如下#i n elude stdio hovoid d e1c harch ar str[],ch ar ci nt i,j;for i=0,j=0;s tr[i]!=\0f;i++if s t r[i]!=cs t r[j++]=str[i];s tr[j]=,\0,;mai n{c harstr
[80];int i,j;getss tr;d e1cha rs tr Jk;pu ts str;}
5.解依鞍点定义,对数组每行元素循环,找到当前行上最大元素,记下所在的列号,再判断此元素是否为对应列的最小元素.将寻找打印数组鞍点的操作定义为函数,如果没有鞍点,函数返回一
1.参考程序如下#i nclu d es tdio.h#d ef i n eN10#d efi neM10i nt and iani nt a[][M],i nt n,in tm#i nti,j,k,m ax,ma xcol;i nt flagl,flag2=0;/*f lagl标记每一行的最大值是否鞍点,flag2标记矩阵是否有鞍点*/for i=0;i n;i++{m ax=a[i]
[0];for j=1;j m;j++i fa[i][j]maxo{max=a[i][j];maxco1=j;}for k=0,flagl=l;k nfla g1;k++ifa[k][m axeol]maxf la g1=0;iff lag1=1{pr i ntf\n%3d%3d%5d\n,i,maxcol,ma x;flag2=l;}printf%s\n,s1;
8.ex=l=x=x2\2!+x3\3!・・・前20项的和float f2int nfloa tf1in tx,i nt n{}main{float exp=
1.0;i ntn,x;p ri n tfaInp utanumber:scanf%d”,x;printf%d\n,x;exp=exp+x;forn=2;n〈=19;n++e xp=e xp+f1x,n p/f2n;ri ntf\nTh eis exp%d=%
8.4f\nn,x,e xP运行结果Inp utan umber:3The is e xp3=
20.0855float f2in tn{i fn==1r eturnl;else returnf2n-l*n;float f1in tx,intn{int I;fl oat j=1;for1=1;I=n;I++j=j*x;retu r n j;
9.解:用输入负数表示输入结束参考程序如下#i nelude stdiooh main{float score
[200],ave,sum,x;int i,n,c ou nt;p rin tf Enter score:;s ca nf〃%f〃,x;n=0;s um=0o0;whi1ex0n200{s um+=x;score[n++]=x;scan f〃%f〃,x;a ve=sum/n;p rintf z,ave rage=a ve;for co u nt=0,i=0;i n;i++if sc or e[i]60{pri ntf%f\n H,sc ore[i];c ount++;pri ntf%d not pas s\n,count;
10.解:扬辉三角形各行数据规律1每行第一个和最后一个数都是12从第3行起,3除第一和最后一个数外,4其余的数都是上一行同5列和前一列两个数的和定义函数,将扬辉三角形的数据保存在二维数组中参考程序如下#inelude std io ho#de fin eN10void yang huiint a[][N],intn{int i,j;f ori=0;in;i++{a[i]
[0]=l;a[i][i]=1;}for i=2;in;i++for j=l;j i;j++a[i][j]=a[i-1][j—1]+a[i-1][j];main{in ti,j,n,a[N][N];printf Entern:;sc anf%d”,n;ya ngh ui a,n;fori=0;in;i++for j=0;j〈=i;j++print f〃%d z,,a[i][j];pri ntf〃\n;}Ho解:依回文定义从字符串的起始字符向后,最后一个字符向前依次判断,遇汉字的第一个字符同时处理两个字符参考程序如下ttinclude stdio.h#inc1udes tringoh〉int huiwe nc harst r[]{i nti,j,1e n,flag二1;1en=strle ns tr;for i=0,j=1e n—1;i=j;i++,j--;i fst r[i]!=s tr[j]{ifs tr[i]128s tr[j]128/*两侧都是汉字字符*/{i fstr[i]=str[j-l]str[i+l]=str[j]8{i++;j----;}else f1ag=0;else f1ag=0;°}r eturnflag;}ma in{c harstr
[50];p rintf Enterstri ng〃;ge ts str;i fh uiwens trpri ntf〃%s isa palindr om a\nv;elsep rintf,%s isnotpa1indroman;
12.解:设整型数组a中保存n个人的密码,对应的人出列后,数组元素置0作为标志顺时针确定下一个人的方法,可将下标加1,再对n求余参考程序如下#inclu des tdioho#define N100main{int a
[100];inti,j,m,n,k=0;p ri ntfEnternm〃;sc anf%d%d,n,m;printfE nter codea rra y:〃;for i=0;in;i++scanf%d,a[i];p rintf〃\n Output:\n〃;f ori=0;in;i++{j=l;while jm{w hile a[k]=0/*跳过已出列的人*/k=k+1%n;6j++;k=k+1%n;while a[k]=0/*跳过已出列的人*/k=k+l%n;p rintf(%d,k);m=a[k];a[k]=0;}}57当说明一个结构体变量时系统分配给它的内存是(A).OA.各成员所需内存量的总和B.结构中第一个成员所需内存量Co成员中占内存量最大者所需的容量Do结构中最后一个成员所需内存量
58.C语言结构体类型变量在程序执行期间(A).A.所有成员一直驻留在内存中B.只有一个成员驻留在内存中C.部分成员驻留在内存中D.没有成员驻留在内存中59以下对C语言中共用体类型数据的叙述正确的是(C)Ao可以对共用体变量名直接赋值B.一个共用体变量中可以同时存放其所有成员C.一个共用体变量中不可能同时存放其所有成员D.共用体类型定义中不能出现结构体类型的成员
60.C语言共用体型变量在程序运行期间(B)oA.所有成员一直驻留在内存中B.只有一个成员驻留在内存中Co部分成员驻留在内存中D.没有成员驻留在内存中
61.请读程序片段int x=20;p rintf(%d\n,~x);上面程序片段的输出结果是(C).Ao02B.-20C.—21Do-
1162.在位运算中,操作数每左移一位,其结果相当于(A)Ao操作数乘以2B.操作数除以2C.操作数除以4D.操作数乘以463o系统的标准输入文件是指(A)oA.键盘B.显示器C软盘D.硬盘
64.当顺利执行了文件关闭操作时,f close函数的返回值是(C)oA.-1Bo TURECo0D.
165.已知函数的调用形式:fread(b uff er,s ize,coun t,fp);其中bu ff er代表的是(C)A.一个整形变量,代表要读入的数据项总数B o一个文件指针,指向要读的文件C.一个指针,指向要读入数据的存放地址D.一个存储区,存放要读的数据项
二、填空题1O C程序的基本单位是O2表达式10%3的结果是o o3o假设所有变量均为整型,则表达式a=2,b=5,a++,b++,a+b的值为4在C语言中以16位PC机为例,一个float型数据在内存中所占用的字节数为;
5.C语言所提供的基本数据类型包括:.6,表达式p ow
2.8,sqrt do ublex值的数据类型为.
7.以下程序的执行结果是o#inc1udestd ioh〉ma in floatf=35;oprint f〃%f,%g”,f,f
8.以下程序的执行结果是o#i ncludestd iohm ain{floa tf=
31.41592;print f%f,%e〃,f,f
9.以下程序的执行结果是o#inc1ud estdio homain{inta,b,c;a-2;b=3;c=1;ifa cprintf〃%d\n”,a;elsep rintf%d\n,b;pri ntfM end\n;10o在C语言中,表示逻辑“真”值用.
11.有intx,y,z;且x=3,y=—4,z=5,则表达式x y==x|I z的值为.12o下面程序从键盘输入的字符中统计数字字符的个数,用换行符结束循环请填空int n=0,c;c=getchar;while{i fc=O c=9n++;c二g et char;。
个人认证
优秀文档
获得点赞 0