上海市计算机二级考试C语言复习资料题目

上传人:jin****ng 文档编号:85892525 上传时间:2022-05-06 格式:DOC 页数:38 大小:490.50KB
返回 下载 相关 举报
上海市计算机二级考试C语言复习资料题目_第1页
第1页 / 共38页
上海市计算机二级考试C语言复习资料题目_第2页
第2页 / 共38页
上海市计算机二级考试C语言复习资料题目_第3页
第3页 / 共38页
亲,该文档总共38页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述
上海理工大学上海市计算机二级考试(C语言)复习资料题目C语言是一种面向过程的程序设计语言,函数、指针、地址和递归概念是它的难点。本复习资料以教学大纲为依据,提供各类题型和练习,重在“基本概念”、“常用算法”、“阅读分析程序”、“编程技能”等诸方面的强化训练,按照上海市计算机二级考试(C语言)的框架,提供“基础知识、读程序写结果、改错、编程序和程序指令填空”几部份,供学生学习参考,文末附习题参考解答。第一部份:基础知识1.2.3.下述循环的循环次数是()intk=2;while(k=0)printf(%d,k);k-;printf(n);A、无限次B、0次C、1次在下列选项中,没有构成死循环的程序段是()A、inti=100;B、for(;)while(1)i=i%100+1;if(i100)break;C、intk=1000;do+k;while(k=10000);若有以下定义和语句,且inta=0,1,2,3,4,p=a;*(a+i)D、ints=36;while(s);-s;0=i10,则对数组元素的错误引用是()5,6,7,8,9,*p,i;4.5.A、B、ap-aC、p+i下面能正确将字符串Boy进行完整赋值操作的语句是()A、chars3=B,o,y;C、chars3=Boy;B、D、chars=Boy;chars3;s0=B;s1=oD、2次D、*(&ai)s2=y;以下程序段的输出结果是(chararr=ABCD;char*ptr;for(ptr=arr;ptrarr+4;printf(%sn,ptr);A、ABCDB、ptr+)C、D、ABCDBCDCDD6. C语言的auto型变量是()A、存储在动态存储区中。B、存储在静态存储区中。C、存储在计算机CPU的寄存器中。D、存储在外存储器中。7. 测试文件是否结束函数的函数名是()A、feofB、EOFC、eofD、FEOF下面程序段的输出结果是()inta4=1,2,3,4,5,6,7,8,9,10,11,12,(*p)4;p=a;printf(“n%”d,*(*(p)+2);A、1B、5C、3D、7C语言规定:在一个源程序中,main函数的位置是()A、必须在最开始B、必须在系统调用的函数的后面C、可以任意D、必须在最后一个C程序的执行是从()A、本程序的main函数开始,到main函数结束B、本程序的第一个函数开始,到本程序文件的最后一个函数结束C、本程序的main函数开始,到本程序文件的最后一个函数结束D、本程序文件的第一个函数开始,到本程序main函数结束下面的四个选项中,均是不合法的用户标识符的选项是()A、AB、floatP_0la0do_A12.下面四个选项中,均是合法转义字符的选项是()A、B、017n13. sizeof(float)是()A、一个双精度型的表达式C、一种函数调用下述循环的循环次数是()b-aD、_123gototempintINT018D、0f101xabx1fC、C、B、一个整型表达式D、一个不合法的表达式intk=2;while(k=0)printf(%d,k);k-;printf(n);A、无限次B、0次C、1次D、2次15.若有以下定义和语句,且0=i10,则对数组元素的错误引用是()inta=0,1,2,3,4,5,6,7,8,9,*p,i;D、*(&ai)D、i*m+j+1p=a;A、*(a+i)B、ap-aC、p+i16.若二维数组a有m列,则在aij前的元素个数为()A、j*m+iB、i*m+jC、i*m+j-117.对两个数组a和b进行如下初始化chara=”ABCDEF”;charb=A,B,C则以下叙述正确的是()A、a与b数组完全相同C、a和b中都存放字符串C语言中有关全局变量的说法,正确的是()A、在使用到它的所有文件中均需定义B、在函数体外定义一次C、在main函数中定义E、在main函数外定义若有数组名作为函数调用时的实参,则传递给该函数形参的是()A、数组的首地址C、数组中全部元素的值下面程序段的输出结果是()inta3=1,2,3,4,5,6,7,8,9,10,11,12,(*p)3;p=a;printf(n%d,*(*(pH)+2);B、4,DE,F;B、a与b长度相同D、a数组比b数组长度长数组的第一个元素的值数组元素的个数21.22.C、不属于C语言程序基本结构的是()A)顺序结构B)选择结构若有定义及赋值:inta66,*p;p=*a;则下列各式中能表示兀素a01列地址的表达式是C)函数结构D)循环结构A)&a0+1B)a0+1C)*(p+1)D)p+123.十进制数123转换成十六进制数是oA)7AHB)7BHC)7CHD)7DH24.C语言中合法的字符常量是oA)058B)abC)xabD)”0”25.下列字符中,ascn码值最小的是oA)AB)aC)0D)空格o26.下面程序输出结果是main()intk=0;charc=A:doswitch(c+)caseA:k+;break;caseB:k-;caseC:k+=2;break;caseD:k=k%2;continue;caseE:k=k*10;break;default:k=k/3;k+;C)-1oD)2C)into(*r)6;D)char*w7;C)7.5D)10.5while(cG);printf(k=%dn,k);A)k=327.设有如下定义:B)k=4C)k=2D)k=0intx=l,y=-1;,则语句:printf(%dn,(x-&+y);的输出结果是()A) 1B)0C语言规定,函数返回值的类型是由A) return语句中的表达式类型所决定调用函数时的主调函数类型所决定B) 调用函数时系统临时决定在定义该函数时所指定的函数类型所决定28. 下列定义中,不是指针数组定义的是A)int*p5;B)float*q4;29. 以下程序运行结果为#definePT3.5#defineS(x)PT*x*xmain()inta=1,b=2;printf(%4.1fn,S(a+b);A)14.0B)31.5下面程序输出结果是()main()chara=ABCDEFG,k,*p;fun(a,0,2);fun(a,4,6);printf(%sn,a);fun(char*s,intp1,intp2)charc;while(p1p2)c=sp1;sp1=sp2;sp2=c;p1+;p2-;D)CBADGFEA)ABCDEFGB)DEFGABCC)GFEDCBA以下程序的输出结果是()main()inta=1,i;for(i=0;i4;i+)printf(%d,func(a);func(a)inta;intb=0;staticintc=1;b+;c+;return(a+b+c);A) 4444B)4455C)4567D)5678执行下面的程序后,y的值是main()inta=2,4,6,8,10;inty=1,x,*p=a+1;for(x=0;x3;x+)y+=*(p+x);printf(%dn,y);A)17B)18C)19D)20若使用下述程序段将整数30和浮点数5.5分别赋给变量a和b,那么输入应该是()inta;floatb;scanf(a=%d,b=%f,&a,&b);A)305.0B)a=30,b=5.5C)30,5.5D)a=30b=5.5设有如下定义:int(*ptr)();则以下叙述中正确的是()A)ptr是指向一维数组的指针变量B) ptr是指向int型数据的指针变量ptr是指向函数的指针,该函数返回一个int型数据C) ptr是一个函数名,该函数的返回值是指向int型数据的指针设有以下定义:inta43=1,2,3,4,5,6,7,8,9,10,11,12;int(*ptr)3=a,*p=a0;则以下能够正确表示数组元素a12的表达式的是()A)*(*ptr+1)2B)*(*(p+5)C)(*ptr+1)+2D)*(*(a+1)+2)37若有以下定义和语句,且0=i10,则对数组元素的错误引用是()inta=0,1,2,3,4,5,6,7,8,9,*p,i;p=a;A)*(a+i)B)ap-aC)p+iD)*(&ai)38. 执行下面的程序后,a的值是()#defineSQR(X)X*Xmain()inta=10,k=2,m=1;a/=SQR(k+m)/SQR(k+m);printf(%dn,a);A) 10B)1C)9D)0表达式18/4*sqrt(4.0)/8的值的数据类型为()A) intB)floatC)doubleD)不确定39. 当a=1,b=3,c=5,d=4时,执行完下面一段程序后x的值是()if(ab)if(cd)x=1;elseif(ac)if(bd)x=2;elsex=3;elsex=6;elsex=7;A)1B)2C)3D)6判断char型变量ch是否为大写字母的正确表达式()A)A=ch=A)and(ch=A)&(ch=Z)D)(A=ch)40. 以下程序的输出结果是()main()inti,k,a10,p3;k=5;for(i=0;i10;i+)ai=i;for(i=0;i3;i+)pi=ai*(i+1);for(i=0;i=0&chi=9;i+=2)printf(%dn,s);A)12ba56B)652141. 以下程序运行后的结果是()。main()chars=12345678;intv4=0,1,1,0,k,i;for(k=0;sk;k+)switch(sk)case1:i=0;case2:i=1;case3:i=2;case4:i=3;vi+;for(k=0;k4;k+)printf(%d,vk);A)0123B)0118C)5678D)024645.下面程序输出结果是()main()intk=0;charc=A;doswitch(c+)caseA:k+;break;caseB:k-;caseC:k+=2;break;caseD:k=k%2;continue;caseE:k=k*10;break;default:k=k/3;k+;while(c=0IIb=0)&(a0IIb=0&b=0)&(a0&b0)&(a+b0要把高级语言编写的源程序转换为目标程序,需要使用()A)编辑程序B)驱动程序C)诊断程序英文小写字母d的ASCII码为100(十进制),英文大写字母A)50B)66下面程序输出结果是()C)52D)E7H()D)编译程序D的ASCII码为()D)68voidprtv(int*x)printf(%dn,+*x);main()inta=25;prtv(&a);C)25D)26A)23B)2451.下面程序的输出是()intaa33=2,4,6;main()inti,*p=&aaOO;for(i=0;i2;i+)if(i=0)aaii+1=*p+1;else+p;printf(%d,*p);A)23B)26该程序的执行结果是()#include#includemain()intfun(char*,int);char*p;p=1234567;fun(p,strlen(p);puts(p);intfun(char*w,intn)chart,*s1,*s2;s1=w;s2=w+n-1;while(s1s2)t=*s1+;*s1=*s2-;*s2=t;A)1234567B)7654321试写出下列数学表达式的C语言表达式悅xy2(xy)52. 下面程序的输出结果是()#includemain()char*a=1234;fun(a);printf(n);fun(char*s)chart;if(*s)t=*+s;putchar(t);fun(s);53. 若有定义及赋值:C)33D)36C)1711717D)7177171inta66,*p;p=*a;则下列各式中能表示元素a01列地址的表达式是()A)&a0+1B)a0+1C)*(p+1)D)p+156.如果用八位二进制补码表示带符号的定点整数,则能表示的十进制数的范围是()A)-127到+127B)-128到+128C)-127到+128D)-128到+12757.若有定义及赋值:inty,*p,*p1;p=&y;p1=p;*p1=4;则可以输出变量y的地址的语句是()A)printf(un,y);B)printf(un,*p1);C)printf(un,*p);D)printf(un,&y);58.设有inty,u=0,x=15,下列各项中不能使y值为0的是()A)y=xAx;B、y=x1u;C、y=x4;D、y=x&u;59二进制数1111111.101B转换成十六进制数是()A)FF.AHB)FF.5HC)7F.AHD)7F.5H60字符串”123在”计算机内所占用的字节数是()个。A)1B)2C)3D)461.C语言中最基本的数据类型包括()A)整型、实型、逻辑型B)整型、实型、字符型C)整型、字符型、逻辑型D)整型、实型、逻辑型、字符型62.C语言中有关dowhile循环的说法,正确的是()A)在if语句内不能再使用do-while语句构成的循环B) do-while语句构成的循环必须用break语句才能退出do-while语句构成的循环,当while语句中的表达式值为非零时结束循环C) do-while语句构成的循环,当while语句中的表达式值为零时结束循环63在C语言中,不正确的int类型的常数是()A) 32768B)0C)037D)Xaf64.设有如下定义:inta=2,b=1,c=3,d=4,m=2,n=2;则执行表达式:(m=ab)&(n=cd)后,n的值为()1B)2C)3D)065设a,b类型正确,语句:printf(%d,(a=2)&(b=-2);的执行结果是()A)2B)C)1D)066设有如下定义:intx=l,y=-1;,则语句:printf(%dn,(x-&+y);的输出结果是()A)1B)0C)-1D)267.若有以下定义和语句,且0=i10,则对数组元素的错误引用是()D)*(&ai)D)*(&ai)D)ABCDinta=0,1,2,3,4,5,6,7,8,9,*p,i;p=a;A)*(a+i)B)ap-aC)p+i68.以下程序段的输出结果是()chararr=ABCD;char*ptr;for(ptr=arr;ptr=y=z,应使用C语言表达式()A)(x=y)&(y=z)B)(x=y)AND(y=z)C)(x=y=z)D)(x=y)&(y=z)73.以下不能对二维数组a进行正确初始化的语句是()A)inta23=0;inta3=1,2,0;A) inta23=1,2,3,4,5,6;inta3=1,2,3,4,5,6;74. 以下不正确的描述是()A)break语句不能用于循环语句和switch语句外的任何其它语句B) 在switch语句中使用break语句或continue语句的作用相同在循环语句中使用continue语句结束本次循环,但不会终止整个循环C) 在循环语句中使用break语句是,会跳出循环体,提前结束循环若有以下定义和语句chars12=abook!;printf(%d,strlen(s);则输出结果是()A)12B)8C)7D)6以下程序的输出结果是()main()inta=2,i;for(i=0;i3;i+)printf(%d,func(a);func(a)inta;intb=0;staticintc=3;b+;c+;return(a+b+c);A)777B)777C)789D)789执行下面的程序后,y的值是()main()inta=2,4,6,8,10;inty=1,x,*p=a+1;for(x=0;x3;x+)y+=*(p+x);printf(%dn,y);A)17B)18C)19D)20下面程序的输出是()intaa33=2,4,6;main()inti,*p=&aa00;for(i=0;i2;i+)if(i=0)aaii+1=*p+1;else+p;printf(%d,*p);A)23B)26C)33D)36设有以下定义:inta43=1,2,3,4,5,6,7,8,9,10,11,12;int(*ptr)3=a,*p=a0;则以下能够正确表示数组元素a12值的表达式的是()A)*(*ptr+1)2B)*(*(P+5)C)(*ptr+1)+2D)*(*(a+1)+2)75. 设有如下的程序段:charstr=Hello;char*ptr;ptr=str;执行完上面的程序段后,*(ptr+5)的值为()A)oB)0C)不确定的值D)o的地址81.假设已定义chara10和char*p=a,下面的赋值语句中,正确的是()A)a10=TurboCB)a=TurboCC)*p=TurboCD)p=TurboC82.下面程序输出结果是()main()chara=ABCDEFG,k,*p;fun(a,0,2);fun(a,4,6);printf(%sn,a);fun(char*s,intp1,intp2)charc;while(p1p2)c=sp1;sp1=sp2;sp2=c;p1+;p2-;A)ABCDEFGB)DEFGABCC)GFEDCBAD)CBADGFE下列程序的输出结果是()main()inta5=2,4,6,8,10,*p,*k;p=a;k=&p;printf(%d,*(p+);printf(%dn,*k);A)44B)22C)24D)46如有structstudentintno;charname20;charsex;structintyear;intmonth;intday;birth;structstudents;对变量s赋值1984年11月11日正确方式是()A)year=1984;month=11;day=11;birth.year=1984;birth.month=11;birth.day=11;B) s.year=1984;s.month=11;s.day=11;s.birth.year=1984;s.birth.month=11;s.birth.day=11;83. 以下程序的输出结果是()main()unionchari2;intk;r;r.i0=0;r.i1=2;printf(%dn,r.k);不确定不确定D)D)C)0A)2B)512C语言中,文件由A)记录组成B)由数据行组成C)由数据块组成D)由字符(字节)序列组成84. 要判断char型变量m是否是数字字符,可以使用表达式()A)0=m&m=9B)0=m&m=9C)0=m&m=9D)0=m&m=9以下正确的语句是()A)inta14=1,2,3,4,5;floatx3=1,2,3;B) longb23=1,1,2,1,2,3;doubley3=0;85. 执行下面的程序后,a的值为()main()inta,b;for(a=1,b=1;a=20)break;if(b%3=1)b+=3;continue;b-=5;A)7B)8C)9D)10下面程序的运行结果是()main()charch7=65ab21;inti,s=0;for(i=0;chi=0&chiage若有以下的说明,则输出结果为()unionuninta;charc2;w;w.c0=0x49;w.c1=0x48;printf(%xn,w.a);A)4948B)4849C)480049D)49004887. C语言中的文件类型只有()A)索引文件和文本文件两种B)ASCII文件和二进制文件两种C)文本文件一种D)二进制文件一种请写出将整数n(OWnW)转化为数字字符(ASCII字符)的表达式。88. 写出表达式(0x1234&0xDF)8的16进制结果。89. 分别写出下面两式的计算结果(括号内是二进制数):(11010101)&(01001011)和(11010101)&(01001011)试计算以下表达式的值(int)(float)32/5+(int)(6.8)*2.5)*4)表达式(11A5)的结果为:90. 设有如下定义intx=6;执行语句x+=x=x*x;后请写出x的值第二部分读程序,写结果设有数组a的定义:inta=1,2,3,4;语句:a3=-a0?a1+:a2+;执行后,数组a的各元素依次为。1. 下面的程序段执行后,#defineROUND3(x)(int)(x*1000+0.5)/1000.0printf(“f”,ROUND3(3.1416);输出的结果是。2. 设有函数段如下:intefg(inta,intb)if(a%b=0)returnb;elsereturnefg(b,a%b);c=efg(48,8);则c的值是。4假设m是一个三位数,从左到右用a,b,c表示各位上的数字,现将该三位数上的百位数与十位数交换,则从左到右各位数字是bac的三位数其表达式5. 执行下面的程序后,#includemain()char*p1,*p2;p仁How_are_you?;p2=p1+strlen(p1)-1;while(p2=p1)printf(%c,*p2-);for(p2=p1;*p2!=0;p2=p2+2)printf(%c,*p2);printf(n);输出的结果是。6. 以下程序运行后,structksinta;int*b;s4,*p;main()intn=1,i;printf(n);for(i=0;ia,(p+)-a);则结果是。7. 从键盘上输入123回车,该程序的输出结果是#includemain()intc;while(c=getchar()!=n)switch(c-1)case0:case1:putchar(c+4);case2:putchar(c+3);break;case3:putchar(c+2);case4:putchar(c+1);break;printf(n”);8. 以下程序运行时,输入10个整型数,输出结果是。inta,b;voidfound_value(intarray,intn)int*p,*array_end;array_end=array+n;a=b=*array;for(p=array+1;pa)a=*p;elseif(*pb)b=*p;return;main()inti,number10;printf(enter10integernumbers:n”);for(i=0;i10;i+)scanf(%d,&numberi);found_value(number,10);printf(na=%d,b=%dn,a,b);9. 执行该程序时,输出结果是。main()inty=10;doy-;while(-y);printf(%dn,+y);10. 运行以下程序,从键盘上输入china#,则输出结果是#includemain()intv1=0,v2=0;charch;while(ch=getchar()!=#)switch(ch)casea:caseh:default:v1+;caseo:v2+;printf(%d,%dn,v1,v2);11.#includevoidprintletter()staticintc=57;if(c=48)putchar(c);c-;printletter();main()printletter();12.main()inta5=1,3,5,7,9;int*num5;int*p,i;for(i=0;i5;i+)numi=&ai;p=num;for(i=0;i5;i+)printf(%3d,*p);p+;13.main()intfun(int*,int);intj=1,m=4,k;k=fun(&j,m);printf(“j=%dm=%dn”,j,m);printf(“Thefirstk:%dn”,k);k=fun(&j,m);printf(“j=%dm=%dn”,j,m);printf(“Thesecondk:%dn”,k);intfun(int*x,inty)staticintk=2;k+=*x+1;*x=k-y;returnk;14.#includeintcount,position,data;voidsearch(int*p,intn,intst)if(*p=data)count+;position=st;if(n1)search(p+1,n-1,st+1);main()inta5=10,30,50,30,20;count=0;data=25;search(a,15,1);printf(count=%d,position=%dn,count,position);15.intsumadd(intfunc,intdata)staticintsum;switch(func)case0:sum=data;break;case1:sum+=data;break;case2:sum-=data;break;returnsum;main()sumadd(1,10);printf(“%d”,sumadd(2,10);sumadd(2,20);printf(“%d”,sumadd(2,10);voids(inta,intn)inti,j,t;for(i=0;i=0&taj;j-)aj+1=aj;aj+1=t;main()inti,b6=24,12,14,32,22,34;s(b,6);for(i=0;i6;i+)printf(“%4d”,bi);printf(“n”);voidp(intk)intm,i;for(m=2;m=k;m+)for(i=2;i=m;i+)%4d”,m);%4d”,m);if(!(m%i)break;if(i=m)printf(printf(“n”);main()p(13);16. includemain()inta=0,10,20,30,;intn=0,*p;p=a+1;n+=*(p+);n+=(*p)+;n+=*(+p);n+=+(*p);printf(“n=%d,a=%d,%d,%d,%nd”,n,a0,a1,a2,a3);17. #includevoidstrselect(char*strs,intn,char*dest)inti;for(i=0;in;i+)*(dest+i)=*(strsi+i);*(dest+i)=0;main()char*strs=“First”,“Second”,“Third”,“Forth”,“Fifth”;charrst81;strselect(strs,5,rst);printf(“%sn”,rst);18. #includestructnodeintn;structnode*next;voidinsert(structnode*head,intnewn)structnode*p,*q;for(p=head;p-next!=NULL;p=p-next)q=p-next;if(newn%10)n%10)break;q=(structnode*)malloc(sizeof(structnode);q-n=newn;q-next=p-next;p-next=q;main()structnodehead,*p,*q;head.next=NULL;insert(&head,56);insert(&head,38);insert(&head,72);insert(&head,49);for(p=head.next;p!=NULL;p=p-next)printf(“%d”,p-n);printf(“n”);for(p=head.next;p!=NULL;)q=p;p=p-next;free(q);#include#ineludemain()intfun(char*,int);char*p;p=87654321;fun(p,strlen(p);puts(p);intfun(char*w,intn)chart,*s1,*s2;s1=w;s2=w+n-1;while(s12);scanf(%d,&i);devide(i);printf(n);第三部分程序改错改正下列程序中的错误,并以”将#XX行改为YYY的形式进行解答,代码左边的#1、#2、是附加的行号(下同)。1本程序用二分法在一个单调不减次序排列的数组中查找某个数。若存在,输出该数及它的下标位置;若不存在,输出表示找不到该数的信息(本程序有3个错)。#1main()#2inta10=2,5,6,8,11,15,18,22,60,88;#3intlow,high,m,i,x;#4scanf(%f,&x);#5low=0;#6high=10;#7while(lowam)high=m+1;#11elselow=m-1;#12#13if(low=high)#14printf(%disfound,thepositionis%dn,x,m);#15else#16printf(%disnotfoundn,x);#17由键盘输入长度不超过80的字符串,在按原样输出。(本题有2个错)#1#include#2main()#3charstr80;#4inti=0;#5clrscr();#6while(1)#7scanf(%s,stri);#8if(stri+=n)return;#9#10stri=0;#11printf(%sn,str);#122. 以下程序用递归算法求Xf,要求n=0,请填空(本题3个错)。#1main()#2floatxn(float,int);#3floatx,y;intn;#4printf(Inputxn:n);#5scanf(%f%d,&x,&n);#6if(x!=0)#7y=xn(x);printf(xAn=%fn,y);#8elseprintf(xwrong!n);#9#10floatxn(floatx,intn)#11floatz;#12if(n0)printf(nwrong!n);exit(0);#13if(n!=0)z=1;#14elseif(n=1)z=x;#15elsez=xn(x,n);#16returnz;#17n=15。3. 求ex的数学公式是ex1+x+x2+x3/3!+xn/n!,对下面的程序填空,设(本题2个错)#1doubleex(floatx)#2doubles=1.0,t=1.0;#3inti=1;#4while(i=15)#5t=x/i;#6s=s+t;#7i+;#8#9returns;#10#11main()#12floatx;#13doublee;#14scanf(%f,&x);#15e=ex(x,n);#16printf(e(%f)=%lfn,x,e);#17printf(%d,&ai);#175.本程序用二分法在一个单调不减次序排列的数组中查找某个数。若存在,输出该数及它的下标位置;若不存在,输出表示找不到该数的信息(本程序有3个错)。#1main()#2inta10=2,5,6,8,11,15,18,22,60,88;#3intlow,high,m,i,x;#4scanf(%f,&x);#5low=0;#6high=10;#7while(lowam)high=m+1;#11elselow=m-1;#12#13if(low=high)#14printf(%disfound,thepositionis%dn,x,m);#15else#16printf(%disnotfoundn,x);#176.以下程序的功能是:从键盘上输入一个字符串后,输出其长度。(本题有3个错)#1#include#2#include#3func(char*str)#4intnum=0;#5while(*(str+num)!=n)num+;#6returnnum;#7#8main()#9charstr10,*p;#10gets(p);printf(%dn,func(p);#117.本程序用于输入n个-100100间的整数,输入数据不对则重输,并计算其中的正整数之和(有2个错)。#1#defineN10#2intsum(intx,intn)#3inti=0,s=0;#4while(i0)s=s+xi;i+;#6returns;#7#8main()#9inti=0,s,aN,flag=1;#10do#11printf(Enter%dnumbers(-100=n=100)n,i+1);#12scanf(%d,&ai);#13while(flag)#14if(-100=ai)&(ai=100)flag=1;#15else#16printf(datawrong!againinput.n);#18#19i+;#20while(iN);#21s=sum(a,N);#22printf(sum=%dn,s);#238. 以下程序的功能是:从键盘上输入一个字符串后,输出其长度。(本题有3个错)#1#include#2#include#3func(char*str)#4intnum=0;#5while(*(str+num)!=n)num+;#6returnnum;#7#8main()#9charstr10,*p;#10gets(p);printf(%dn,func(p);#119. 以下程序的功能是:函数f获得十进制正整数n为参数后,返回值是n的位数(例如,123就是个三位数)。(本题有3个错)#1intf(longn)#2intc=0;#3do#4c+;#5n=n%10;#6while(!n);#7returnc;#8#9main()#10longn;#11intnum;#12scanf(%d,n);#13num=f(n);#14printf(%ldhas%dnumbersn,n,num);#15本程序用二分法在一个单调不减次序排列的数组中查找某个数。若存在,输出该数及它的下标位置;若不存在,输出表示找不到该数的信息。#1main()#2inta10=2,5,6,8,11,15,18,22,60,88;#3intlow,high,m,i,x;#4scanf(%d,&x);#5low=0;#6high=10;#7while(lowam)high=m+1;#11elselow=m-1;#12#13if(low=high)#14printf(%disfound,thepositionis%dn,x,m);#15else#16printf(%disnotfoundn,x);的解,(本程序有3个错误)。#17以下程序求e=1+1/1!+1/2!+1/n!+#1#include#2main()#3doublee,a;#4inti=1;#5e=1.0;#6a=0.0;#7do#8a*=i;#9a+=e;#10i=i+1;#11while(a=1e-12);#12printf(%0.12fn,e);#1310. 程序3.2是在5个字符串中求最小字符串并输出结果。#1#include#2#include“EXPRESSIO”N,“VARIABLE”,STATEMEN”T,“BLOC”K,“FUNCTIO”N;#3main()#4char*name5=#5#6chartemp;#8temp=name0;#9for(i=0;i5;i+)
展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 办公文档 > 活动策划


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!