计算机二级C语言必背题1

合集下载

计算机二级c语言专用题库(辅导班内部资料,超值!)

计算机二级c语言专用题库(辅导班内部资料,超值!)

第一章 C语言基础知识一、选择题:1.下列关于C语言用户标识符的叙述中正确的是()A)用户标识符中可以出现下划线和中划线(减号)B)用户标识符中不可以出现中划线,但可以出现下划线C)用户标识符中可以出现下划线,但不可以放在用户标识符的开头D)用户标识符中可以出现下划线和数字,它们都可以放在用户标识符的开头2.①下列选项中,不能用作标识符的是()A)_1234_ B)_1_2 C)int_2_ D)2_int_②以下选项中合法的用户标识符是()A)long B)_2Test C)3Dmax D)A.dat③以下不能定义为用户标识符的是()A)scanf B)Void C)_3com_ D)int3.可用作C语言用户标识符的一组标识符()A)void define WORD B)a3_b3 _123 IF C)For -abc CaseD)2a DO sigeof E)f2_G3 IF abc4.以下4组用户定义标识符中,全部合法的一组是()A)_main B)If C)txt D)intenclude -max REAL k_2sin turbo 3COM _0015.以下叙述正确的是()A)可以把define和if定义为用户标识符B)可以把define定义为用户标识符,但不能把if定义为用户标识符C)可以把if定义为用户标识符,但不能把define定义为用户标识符D)define和if都不能定义为用户标识符6.如果下面的变量都是int类型,则输出结果是()main(){ int sum=pad=5;pAd=sum++,pAd++,++pAd;printf(“%d\n”,pad);} A)7 B)6 C)5 D)47.C语言中最简单的数据类型包括()A)整型、实型、逻辑型B)整型、实型、字符型C)整型、字符型、逻辑型D)整型、实型、逻辑型、字符型8.以下选项中属于C语言的数据类型的是()A)复数型B)逻辑型C)双精度型D)集合型9.下列叙述中正确的是()A)C语言中既有逻辑类型也有集合类型 B)C语言中没有逻辑类型但有集合类型C)C语言中有逻辑类型但没有集合类型 D)C语言中既没有逻辑类型也没有集合类型10.C语言提供的合法的数据类型关键字是()()()①A)Double B)short C)integer D)Char②A)swicth B)cher C)Case D)default③A)VAR B)cher C)integer D)default11.以下选项中不属于C语言类型的是()A)signed short int B)unsigned long int C)unsigned int D)long short12.若有以下定义:char a;int b;float c;double d;则表达式a*b+d-c值的类型为()A)float B)int C)char D)double13.sizeof(double)是()A)一种函数调用 B)一个双精度型表达式 C)一个整型表达式 D)一个不合法的表达式14.①在C语言中,不合法的整型常数是()A)32768 B)0 C)037 D)0xAF②以下选项中可作为C语言合法整数的是()A)10110B B)0386 C)0Xffa D)x2a215.在C语言中,合法的长整型常数是()A)0L B)4962710 C)0.054838743 D)2.1869e10 E)324562& F)216D16.在C语言中,合法的实型常数是()()①A)5E2.0 B)E-3 C).2E0 D)1.3E②A)1.2E0.5 B)3.14159E C).5E-3 D)E1517.16位C编译系统中,若定义long a;能给a赋40000的正确语句()A)a=20000+20000; B)a=4000*10; C)a=30000+10000; D)a=4000L*10L;18.下列变量定义中合法的是()A)short _a=1-.1e-1;B)double b=1+5e2.5;C)long do=0xfdal;D)float 2_and=1-e-3;19.C语言中,运算对象必须是整型数的运算符是()()()①A)% B)/ C)< D)!②A)% B)\ C)%和\ D)**③A)%= B)/ C)= D)<=20.设a和b均为double型变量,且a=5.5,b=2.5,则表达式(int)a+b/b的值是()A)6.500000 B)6 C)5.500000 D)6.00000021.下列关于单目运算符++、--的叙述中正确的是()A)它们的运算对象可以是任何变量和常量B)它们的运算对象可以是char型变量和int型变量,但不能是float型变量C)它们的运算对象可以是int型变量,但不能是double型变量和float型变量D)它们的运算对象可以是char型变量、int型变量和float型变量22.以下程序的输出结果是()()()()()①main(){ int i=10,j=1;printf(“%d,%d\n”,i--,++j);}②main(){ int x=10,y=10;printf(“%d %d\n”,x--,--y);}③main(){ int a=12,b=12;printf(“%d%d\n”,--a,++b);}④main(){ int i=010,j=10;printf(“%d,%d\n”,++i,j--);}⑤main(){ int x=023;printf(“%d\n”,--x);}①A)9,2 B)10,2 C)9,1 D)10,1②A)10 10 B)9 9 C)9 10 D)10 9③A)10 10 B)12 12 C)11 10 D)11 13④A)11,10 B)9,10 C)010,9 D)10,9⑤A)17 B)18 C)23 D)2423.设有int x=11;则表达式(x++*1/3)的值是()A)3 B)4 C)11 D)1224.设有以下定义,则下面语句中错误的是()int a=0;double b=1.25;char c=‘A’;#define d 2A)a++;B)b++;C)c++;D)d++;25.有以下程序,程序运行后的输出结果是()main(){int m=3,n=4,x;x=-m++;x=x+8/++n;printf(“%d\n”,x);}A)3 B)5 C)-1 D)-226.以下选项中,与k=n++完全等价的表达式是()A)k=n,n=n+1 B)n=n+1,k=n C)k=++n D)k+=n+127.以下程序的输出结果是()main(){ int x=10,y=3;printf(“%d\n”,y=x/y);}A)0 B)1 C)3 D)不确定的值28.若有以下程序段,执行后c3中的值是()int c1=1,c2=2,c3;c3=1.0/c2*c1;A)0 B)0.5 C)1 D)229.若有定义:int a=8,b=5,c;执行语句c=a/b+0.4;后,c的值为()A)1.4 B)1 C)2.0 D)230.若已定义x和y为double类型,则表达式x=1,y=x+3/2的值是(),则表达式x=2,y=x+3/2的值是()A)1 B)2 C)2.0 D)2.5 E)3.5 F)3 G)3.0 31.以下程序的输出结果是()main(){double d=3.2;int x,y;x=1.2;y=(x+3.8)/5.0;printf(“%d\n”,d*y);}A)3 B)3.2 C)0 D)3.0732.①设有语句:int a=3;则执行了语句a+=a-=a*a;后,变量a的值是()②设有语句:int a=12;则执行了语句a+=a-=a*a;后,变量a的值是()③设有语句:int x=10;则执行了语句x+=x-=x-x;后,变量x的值是()④设有语句:int a=5;则执行了语句a*=a/=a++;后,变量a的值是()①A)3 B)0 C)9 D)-12②A)552 B)264 C)144 D)-264③A)10 B)20 C)40 D)30④A)2 B)1 C)40 D)333.以下程序的输出结果是()main(){int k=2,i=2,m;m=(k+=i*=k);printf(“%d,%d\n”,m,i);A)8,6 B)8,3 C)6,4 D)7,434.假定有以下变量定义:int k=7,x=12;则能使值为3的表达式是()A)x%=(k%=5) B)x%=(k-k%5) C)x%=k-k%5 D)(x%=k)-(k%=5)35.设x和y均为int型,则以下语句:x+=y;y=x-y;x-=y;的功能()A)把x和y按从大到小排列B)把x和y按从小到大排列C)无确定结果D)交换x和y中的值36.设有如下程序段, 则以下叙述中正确的是()main(){ int x=2002,y=2003;printf(“%d\n”,(x,y));}A)输出语句中格式说明符的个数少于输出项的个数,不能正确输出B)运行时产生出错信息C)输出值为2002D)输出值为200337.设x,y,z和k都是int型变量,则执行表达式:x=(y=4,z=16,k=32)后,x的值为()A)4 B)16 C)32 D)5238.执行下面程序中的输出语句后,a的值是()main(){ int a;printf(“%d\n”,(a=3*5,a*4,a+5));}A)65 B)20 C)15 D)1039.给出以下程序Ⅰ和Ⅱ,判断它们的输出()Ⅰ main()Ⅱ main(){int a=4,b=7; {int a=1,b=2;printf(“%d\n”,(a=a+1,b+a,b+1));} printf(“%d\n”,a=a+1,a+b,b+1);} A)Ⅰ输出5 B)Ⅰ输出5Ⅱ输出2 Ⅱ中printf函数调用语句的输出项包含了a=a+1形式,不合法C)Ⅰ输出8 D)Ⅰ中printf函数调用语句的格式描述符不够,输出无定值Ⅱ输出2 Ⅱ输出240.若有以下程序段,其输出结果是()int a=0,b=0,c=0;c=(a-=a-5),(a=b,b+3);printf(“%d,%d,%d\n”,a,b,c);A)3,0,-10 B)0,0,5 C)-10,3,-10 D)3,0,341.⑴设有如下的变量定义,则以下符合C语言语法的表达式是()int i=8,k,a,b; unsigned long w=5; double x=1.42,y=5.2;A)x%(-3) B)a=a*3=2 C)y=float(i) D)a+=a-=(b=4)*(a=3)⑵以下定义语句,若各变量已正确赋值,下列选项中正确的表达式()double a,b;int w;long c;A)a=a+b=b++ B)w%((int)a+b) C)(c+w)%(int)a D)w=a==b;⑶若变量已正确定义并赋值,下面符合C语言语法的表达式是()A)a:=b+1 B)a=b=c+2 C)int 18.5%3 D)a=a+7=c+b E)a=7+b+c,a++ F)a=a+7;⑷以下选项中非法的表达式是()A)0<=x<100 B)i=j==0 C)(char)(65+3) D)x+1=x+1⑸①若变量a、i已正确定义,且i已正确赋值,则合法的语句是()A)a==1 B)++i;C)a=a++=5;D)a=int(i);②若以下选项中的变量已正确定义,则正确的赋值语句是()A)x1=26.8%3;B)1+2=x2;C)x3=0x12;D)x4=1+2=3;⑹请选出合法的C语言赋值语句()()()①A)a=b=58 B)i++;C)a=58,b=58 D)k=int(a+b); E)x+y;②A)x=3,y=5 B)a=b=6 C)i--;D)y=int(x);③A)a=7+b+c=a+7;B)a=7+b++=a+7;C)a=7+b,c=a+7;D)a=7+b,b++,a+7⑺下列选项中不正确的赋值语句是()()①A)++t;B)k=i==j;C)a=b+c=1;D)n1=(n2=(n3=0));②A)j++;B)++(i+1);C)x=j>0;D)n=(i=2,++i);42.⑴设变量x为float型且已赋值,则以下语句中能将x中的数值保留到小数点后两位,并将第三位四舍五入的是()A)x=x*100+0.5/100.0;B)x=(x*100+0.5)/100.0;C)x=(int)(x*100+0.5)/100.0;D)x=(x/100+0.5)*100.0;E)x=(x*100+0.5)/100.0,x=(int)(x*100)/100.0;⑵若变量a已说明为float类型,i为int类型,则不能实现将a中的数值保留小数点后两位,第三位进行四舍五入运算的语句是()A)a=(a*100+0.5)/100.0,a=(int)(a*100)/100.0; B)i=a*100+0.5,a=i/100.0;C)a=(int)(a*100+0.5)/100.0;D)a=(a/100+0.5)*100.0;43.C语言程序的基本单位是()A)程序行B)语句C)函数D)字符44.在一个C程序中()A)main函数必须出现在所有函数之前 B)main函数可以在任何地方出现C)main函数必须出现在所有函数之后 D)main函数必须出现在固定位置45.以下说法中正确的是()A)C语言程序总是从第一个函数开始执行B)在C语言程序中,要调用的函数必须在main()函数中定义C)C语言程序总是从main()函数开始执行D)C语言程序中的main()函数必须放在程序的开始部分1 46.假设在程序中a、b、c均被定义成整型,并且已赋大于1的值,则下列能正确表示代数式abc的表达式是()A)1/a*b*c B)1/(a*b*c) C)1.0/a/b/c D)1/a/b(float)c47.一个算法应该具有“确定性”等5个特性,下面对另外4个特性的描述中错误的是()A)有零个或多个输入B)有穷性C)有零个或多个输出D)可行性48.C语言中用于结构化程序设计的三种基本结构是()A)顺序结构、选择结构、循环结构 B)if、switch、breakC)for、while、do-while D)if、for、continue49.结构化程序由三种基本结构组成,三种基本结构组成的算法()A)可以完成任何复杂的任务B)只能完成部分复杂的任务C)只能完成符合结构化的任务D)只能完成一些简单的任务50.以下叙述中正确的是()A)C程序中注释部分可以出现在程序中任意合适的地方B)花括号“{”和“}”只能作为函数体的定界符B)构成C程序的基本单位是函数,所有函数名都可以由用户命名D)分号是C语句之间的分隔符,不是语句的一部分51.⑴语句int i=3;则k=(i++)+(i++)+(i++);执行过后k的值为()i的值为()A)9,6 B)12,5 C)18,6 D)15,5⑵如果int i=3;则k=(i++)+(++i)+(i++);执行过后k的值为()i的值为()A)12,6 B)12,5 C)18,6 D)15,5⑶如果int i=3;则k=(++i)+(++i)+(i++);执行过后k的值为()i的值为()A)15,6 B)12,5 C)18,6 D)15,5⑷如果int i=3;则k=(++i)+(++i)+(++i);执行过后k的值为()i的值为()A)9,6 B)12,5 C)18,6 D)15,5二、填空题:1.C语言源程序文件的后缀是___,经过编译后,生成文件的后缀是_____,经过连接后,生成文件的后缀是_____。

计算机c语言二级考试试题及答案

计算机c语言二级考试试题及答案

计算机c语言二级考试试题及答案一、单项选择1 下列数据中,为字符串常量的是()。

DA、'A'B、How do you do.C、$abcD、"house"2 以下所列的C语言常量中,错误的是( )。

BA、0xFFB、1.2e0.5C、2LD、'\72'3 以下程序的输出结果是()。

Dmain(){float x=3.6;int i;i=(int)x;printf("x=%f,i=%d\n",x,i);}A、x=3.600000,i=4B、x=3 i=3.600000C、x=3,i=3D、x=3.600000,i=34 若k是整型,则以下程序段的执行结果是:( ) B k=-3;if(k<=0) printf("####")else printf("&&&&");A、####B、有语法错误,无结果C、&&&&D、####&&&&5 若x=2,y=3则x||y的结果是( )。

CA、3B、0C、1D、26 针对下列程序段回答问题( B ).for(t=1;t<=100;t++){scanf("%d",&x);if(x<0) continue;printf("=",t);}A、x>=0时什么也不输出B、最多允许输出100个非负整数C、printf函数永远也不执行D、当x<0时整个循环结束7 以下程序的执行结果是( )。

Bmain(){ int num = 0;while( num <= 2 ) { num++; printf( "%d,",num ); } }A、0,1,2B、1,2,3,C、1,2,3,4,D、1,2,8 选择正确的输入语句( D )。

计算机二级考试真题及答案c语言

计算机二级考试真题及答案c语言

计算机二级考试真题及答案c语言一、单项选择题(每题1分,共20分)1. 在C语言中,以下哪个关键字用于声明函数?A. structB. unionC. intD. void答案:D2. 若有定义int a=5; 则执行以下语句后,变量a的值是多少?A. a=(a++)+(++a)+a;B. a=a--+(++a)+a;C. a=(a++)+(++a)+a--;D. a=(a++)+(++a)+a--;答案:A3. 在C语言中,以下哪个运算符用于计算两个数的乘积?A. /B. %C. *D. ^答案:C4. 下列哪个选项是C语言中合法的字符常量?A. 'a'B. "a"C. 'ab'D. '\t'答案:D5. 在C语言中,以下哪个选项是合法的数组声明?A. int a[5];B. int a[];C. int a[5][5];D. int a[5,5];答案:A6. 若有定义int x=10; 则执行以下语句后,变量x的值是多少?A. x=x+++x;B. x=++x+x--;C. x=x--+x++;D. x=x+++x--;答案:B7. 在C语言中,以下哪个关键字用于声明一个结构体?A. structB. unionC. enumD. typedef答案:A8. 在C语言中,以下哪个选项是合法的指针声明?A. int *p;B. int *p[];C. int (*p)();D. int (*p)[5];答案:A9. 在C语言中,以下哪个选项是合法的循环语句?A. for(;;)B. while(1)C. do{}while(0)D. all of the above答案:D10. 在C语言中,以下哪个选项是合法的函数声明?A. int func();B. void func(int a);C. int func(int a, int b);D. all of the above答案:D11. 在C语言中,以下哪个选项是合法的宏定义?A. #define PI 3.14159B. #define PI 3.14159fC. #define PI 3.14159LD. all of the above答案:A12. 在C语言中,以下哪个选项是合法的文件操作函数?A. fopenB. fcloseC. freadD. all of the above答案:D13. 在C语言中,以下哪个选项是合法的字符串操作函数?A. strcpyB. strncpyC. strcatD. all of the above答案:D14. 在C语言中,以下哪个选项是合法的动态内存分配函数?A. mallocB. callocC. reallocD. all of the above答案:D15. 在C语言中,以下哪个选项是合法的位操作运算符?A. &B. |C. ^D. all of the above答案:D16. 在C语言中,以下哪个选项是合法的预处理指令?A. #includeB. #defineC. #ifdefD. all of the above答案:D17. 在C语言中,以下哪个选项是合法的类型转换运算符?A. (int)xB. (float)xC. (char)xD. all of the above答案:D18. 在C语言中,以下哪个选项是合法的条件运算符?A. ?B. :C. ||D. &&答案:A19. 在C语言中,以下哪个选项是合法的多维数组声明?A. int a[5][5];B. int a[][5];C. int a[5][];D. int a[][];答案:A20. 在C语言中,以下哪个选项是合法的枚举类型声明?A. enum color {red, green, blue};B. enum {red, green, blue};C. enum color {0, 1, 2};D. all of the above答案:D二、填空题(每题2分,共20分)1. 在C语言中,使用关键字________声明一个函数。

计算机二级c语言经典练习题及解析答案

计算机二级c语言经典练习题及解析答案

计算机二级c语言经典练习题及解析答案计算机二级c语言经典练习题及解析答案一、单选题1. C语言中的三大基本数据类型包括( B )A.整型、实型、逻辑型B.整型、实型、字符型C.整型、逻辑型、字符型D.整型、实型、逻辑型、数组型2. 在C语言中,以下合法的字符常量是( c )A. '\048'B. 'ab'C. '\43'D. "\0"3.设x 为 int 型变量,执行下列语句: x=10; x+=x-=x-x; 则x的值为 ( B )A. 15B. 20C. 25D. 304. 定义如下变量和数组: int i, x[3][3]={1,2,3,4,5,6,7,8,9};则下面语句for(i=0;i<3;i++) printf("%d",x[i][2-i]); 的输出结果是( C )A. 1 4 7B. 1 5 9C. 3 5 7D. 3 6 95.逗号表达式(a=3*5,a*4),a+15的值是( b )A.15B. 30D. 756. .以下程序的输出结果是( c )。

main( ){ int x=10,y=11;printf("%d,%d\n",x--,--y);}A. 11,11B. 10,11C. 10, 10D.11,107.若一个外部变量的定义形式为static int x ; 其中static的作用是( d )A.将变量存放在静态存储区,使x的值可以永久保留B.使变量x可以由系统自动初始化C.使x的值可以永久保留D.使x只能在本文件内引用8.有如下变量说明:int k=2;则下面的循环共执行多少( d )次while (k!=0) {printf("%d",k);k--;}A.无限多次 B.0次 C.1次 D. 2次9.设有变量说明:int a=7,b=8;那么语句:printf("%d,%d\n",(a+b,a),(b,a+b));的输出应该是( a )A. 7,15B. 8,15C. 15,7D.15,810.若已定义:int a[9], *p=a;并在以后的语句中未改变p的值,不能表示a[1]地址的表达式是( b )A. p+1C. a+1D. ++p11. C语言变量名中不能使用的字符是( d )A. 数字B. 字母C. 下划线D. 关键字12.以下变量定义中合法的是( a )A.short a=2.1e-1;B. double b=1+5e0.5;C. long do=0xffe ;D. float 3_end=1-e3;13.若有说明语句char ch1=′\x79′;则ch1( c )A.包含4个字符B.包含3个字符C. 包含2个字符D.包含1个字符14.C语言中的函数( b )A. 可以嵌套定义B.嵌套调用和递归调用均可C. 不可以嵌套调用D. 可以嵌套调用但不可以递归调用15. 设整形变量a=12;则执行完语句a+=a-=a*a后a的值为( c )A. 552B. 264C. -264D. 14416.设a=1,b=2,c=3,d=4,则表达式:a>b?a:cA.1 B.2 C.3 D.417.若有说明语句:int b[][4]={ 3,1,2,5,7,6,4}; 则b数组的行数为( b )A. 3B. 2C.无确定值D. 118. 若有定义:char c[10];从键盘输入“LiFang”,则正确的函数引用是( c )A. scanf(″%c″,&c[10]);B. gets(c);C. scanf(″%s″,&c);D. gets(c[10]);19. 两个基类型相同的指针变量之间,不能进行的运算是( c )A. <B. =C. +D.-20. 下面程序段执行结果是( b )int i=5,k; k=(++i)+(++i)+(i++); printf("%d,%d",k,i);A. 24,8B. 21,8C. 21,7D. 24,721.以下选项中属于C语言的数据类型是( b )。

计算机二级c语言考试真题及答案详解

计算机二级c语言考试真题及答案详解

计算机二级c语言考试真题及答案详解一、单项选择题(每题2分,共40分)1. 在C语言中,以下哪个选项是合法的整型常量?A. 0x12B. 0x12.3C. 0x12LD. 0x12.3L答案:A2. 若有定义int a=1, b=2;,则以下哪个表达式的值不为真?A. a<bB. a<=bC. a>bD. a!=b答案:C3. 在C语言中,以下哪个选项是合法的字符串字面量?A. "Hello, World"B. 'Hello, World'C. "Hello, World\n"D. "Hello, World\0"答案:A4. 下列哪个函数不能正确计算数组元素的总和?A. sum = 0; for(i=0; i<n; i++) sum += array[i];B. sum = 0; for(i=0; i<n; i++) sum = sum + array[i];C. sum = 0; for(i=0; i<n; i++) sum = array[i];D. sum = 0; for(i=0; i<n; i++) sum += array[i];答案:C5. 在C语言中,以下哪个选项是合法的函数声明?A. int add(int, int);B. int add();C. int add(int a, int b);D. int add(a, b);答案:C6. 若有定义int a[10];,则以下哪个表达式是合法的数组元素访问?A. a[10]B. a[-1]C. a[3.5]D. a[3]答案:D7. 在C语言中,以下哪个选项是合法的指针声明?A. int *ptr;B. int *ptr[];C. int ptr*;D. int ptr[];答案:A8. 若有定义int x=10;,则以下哪个表达式是合法的赋值语句?A. x = x + 1;B. x = 1 + x;C. x = x++;D. x = ++x;答案:A9. 在C语言中,以下哪个选项是合法的循环语句?A. for(;;)B. while(1)C. do {} while(0)D. for(;;) {}答案:D10. 若有定义int a[5] = {1, 2, 3, 4, 5};,则以下哪个表达式是合法的数组元素访问?A. a[5]B. a[-1]C. a[2.5]D. a[2]答案:D11. 在C语言中,以下哪个选项是合法的switch语句?A. switch(x) { case 1: break; }B. switch(x) { default: break; }C. switch(x) { case 1: case 2: break; }D. switch(x) { case 1: default: break; }答案:C12. 若有定义int x=5;,则以下哪个表达式是合法的自增运算?A. x++;B. ++x;C. x--;D. --x;答案:A13. 在C语言中,以下哪个选项是合法的函数原型声明?A. void func();B. int func(int);C. void func(int a);D. All of the above答案:D14. 若有定义int a=3;,则以下哪个表达式是合法的位运算?A. a & 2B. a | 2C. a ^ 2D. All of the above答案:D15. 在C语言中,以下哪个选项是合法的宏定义?A. #define PI 3.14159B. #define PI 3.14159fC. #define PI 3.14159LD. All of the above答案:A二、编程题(每题30分,共60分)1. 编写一个函数,计算并返回一个整数数组中所有元素的和。

计算机二级考试C语言例题(1)

计算机二级考试C语言例题(1)

第一套给定程序的功能是:求二分之一的圆面积,函数通过形参得到圆的半径,函数返回二分之一的圆面积(注:圆面积公式为:2,在程序中定义的变量名要与公式的变量相同)。

例如,输入圆的半径值:19.527,输出为:s=598.949991。

注意:部分源程序给出如下。

请勿改动main函数和其他函数中的任何内容,仅在横线上填入所编写的若干表达式或语句。

试题程序:#include <stdio.h>double fun( double r){return 3.14159*【1】/2.0;}void main(){double x;printf("Enter x: ");scanf("%lf",【2】);printf("s=%lf\n",fun(【3】));}【参考答案】 (1)r*r (2)&x (3)x【考点分析】本题考查:圆面积计算公式*r*r;scanf( )函数的形式,其一般形式为"scanf("格式控制字符串",地址表列);",注意地址是由地址运算符"&"后跟变量名组成的;printf( )函数的形式,其一般形式为"printf("格式控制字符串",输出表列);";函数实参调用,函数作为另一个函数调用的实际参数出现。

【解题思路】填空1:计算圆的面积,公式为:*r。

填空2:scanf( )函数一般形式为scanf(格式控制,地址表列),因此填入&x。

填空3:函数的实际参数是圆的半径x。

下列给定程序中,函数fun的功能是:计算S=f(-n)+f(-n+1)+…+f(0)+f(1)+f(2)+…f(n)的值。

例如,当n为5时,函数值应为10.407143。

f(x)函数定义如下:f(x)=请改正程序中的错误,使它能得出正确的结果。

计算机二级C语言上机题库及答案(100套)

~计算机二级c 语言上机题库及答案内部资料,切勿外传!.第1 套填空题请补充FUN 函数,FUN 函数的功能是求10 的阶乘。

注意:部分源程序给出如下。

请勿改动主函数main 和其他函数中的任何内容,仅在fun 函数的横线上填入所编写的若干表达式或语句。

试题程序:#include <stdio.h>long fun(int n){if ( 1 )return (n*fun( 2 ));return 3 ;}main(){printf("10!=%ld\n", fun(10));}第1 处填空:n>1 或1<n第2 处填空:n-1第3 处填空:1 或11 或1L改错题下列给定程序的功能是:读入一个整数K(2〈=K〈=10000),打印它的所有因子(即所有为素数的因子)。

例如,若输入整数2310,则应输出:2、3、5、7、11。

请改正程序中的错误,使程序能得出正确的结果。

注意:不要改动main 函数,不得增行或删行,也不得更改程序的结构!试题程序:#include <conio.h>#include <stdio.h>/********found********/IsPrime(int n);{int i, m;m = 1;/********found********/for (i=2; i<n; i++)if !(n%i){m = 0;break;}return(m);}main(){int j, k;printf("\nplease enter an integer number between 2and 10000:");scanf("%d", &k);printf("\n\nThe prime factor(s) of %d is(are):", k);for (j=2; j<k; j++)if ((!(k%j)) && (IsPrime(j)))printf(" %4d,", j);printf("\n");}第1 处:Isprime(int n);应改为Isprime(int n)第2 处:if !(n%i)应该为if(!(n%i))编程题M 个人的成绩存放在score 数组中,请编写函数fun,它的功能是:返回低于平均分的认输,并将低于平均分的分数放在below 所指的数组中。

计算机二级c语言考试考点

计算机二级c语言考试考点计算机二级c语言考试考点【考点1】数制转换一定要记住二进制如何转换成十进制。

八进制是没有8 的,逢8 进1,018 的数值是非法的。

【考点2】位运算C语言提供6种位运算符:按位求反~,按位左移,按位右移,按位与,按位异或|,按位或^。

总的处理方法:几乎所有的位运算的题目都要按这个流程来处理(先把十进制变成二进制再变成十进制)。

异或运算的规则:0异或1得到1,0异或0得到0,1异或1得到0。

可记为“相同为0,不同为1”。

【考点3】注释是对程序的说明,可出现在程序中任意合适的地方,注释从“/*”开始到最近一个“*/”结束,其间任何内容都不会被计算机执行,注释不可以嵌套。

【考点4】书写格式每条语句的后面必须有一个分号,分号是语句的一部分。

一行内可写多条语句,一个语句可写在多行上。

【考点5】标识符合法的用户标识符考查:合法的要求是由字母,数字,下划线组成。

有其它元素就错了。

并且第一个必须为字母或则是下划线。

第一个为数字就错了。

C语言标识符分如下3类(1)关键字。

它们在程序中有固定的含义,不能另作他用。

如int、for、switch 等。

(2)预定义标识符。

预先定义并具有特定含义的标识符。

如define、include 等。

(3)用户标识符。

用户根据需要定义的标识符,符合命名规则且不与关键字相同。

关键字不可以作为用户标识符号。

main define scanf printf 都不是关键字。

迷惑你的地方If 是可以做为用户标识符。

因为If 中的第一个字母大写了,所以不是关键字。

【考点6】整型数据整型一般是两个字节, 字符型是一个字节,双精度一般是4 个字节:考试时候一般会说,在16 位编译系统,或者是32 位系统。

碰到这种情况,不要去管,一样做题。

掌握整型一般是两个字节, 字符型是一个字节,双精度一般是4 个字节就可以了。

【考点7】转义字符转义字符的考查:在程序中 int a = 0x6d,是把一个十六进制的数给变量a 注意这里的0x 必须存在。

全国计算机二级c语言课后练习及参考答案试卷1

一单项选择题1.逻辑运算符两侧运算对象的数据类型是(D )。

A)只能是0或1B)只能是0或非0正数C)只能是整型或字符型数据D)可以是任何类型的数据2.已知x=43,ch='A',y=0;则表达式(x>=y&&ch<'B'&&!y)的值是( C )。

A)0B)语法错C)1D)“假”3.已知int x=10,y=20,z=30;以下语句执行后x,y,z的值是( B )。

y)z=x;x=y;y=z;A)x=10,y=20,z=30B)x=20,y=30,z=30C)x=20,y=30,z=10D)x=20,y=30,z=204.执行下列语句后a的值为( C ),b的值为()。

int a,b,c;a=b=c=1;++a|| ++b && ++c;A)错误 1B) 2 2C)2 1D) 1 15.若希望当A的值为奇数时,表达式的值为“真”,A的值为偶数时,表达式的值为“假”,则以下不能满足要求的表达式是(C )。

A)A%2==1B)!(A%2==0)C)!(A%2)D)A%26.设有:int a=1,b=2,c=3,d=4,m=2,n=2;执行(m=a>D)后n的值是(B )。

A)0B) 2C)3D) 47.判断char型变量cl是否为小写字母的正确表达式是(D )。

A)‘a’<=cl<=‘z’=a)&&(cl<=z)C)(‘a’>=cl)||(‘z’<=cl)=‘a’)&&(cl<=‘z’)8.以下不正确的if语句形式是(C )。

y&&x!=y);B)if(x==y)x+=y;C)if(x!=y)scanf(“%d”,&x)else scanf(“%d”,&y)D)if(x<y){x++;y++;}9.请阅读以下程序:main(){int a=5,b=0,c=0;if(a=b+C)printf(“***\n”);else printf(“$$$\n”);}以上程序(D )。

全国计算机二级c语言题库

第一章一、选择题1.对下列二叉树进行中序遍历的结果是( )。

A.ACBDFEGB.ACBDFGEC.ABDCGEFD.FCADBEG2.按照"后进先出"原则组织数据的数据结构是( )。

A.队列B.栈C.双向链表D.二叉树3.下列叙述中正确的是()。

A.一个逻辑数据结构只能有一种存储结构B.数据的逻辑结构属于线性结构,存储结构属于非线性结构C.一个逻辑数据结构可以有多种存储结构,且各种存储结构不影响数据处理的效率D.一个逻辑数据结构可以有多种存储结构,且各种存储结构影响数据处理的效率4.下面选项中不属于面向对象程序设计特征的是()。

A.继承性B.多态性C.类比性D.封装性5.下列叙述中正确的是()。

A.软件交付使用后还需要进行维护B.软件一旦交付使用就不需要再进行维护C.软件交付使用后其生命周期就结束D.软件维护是指修复程序中被破坏的指令6.下列描述中正确的是()。

A.软件工程只是解决软件项目的管理问题B.软件工程主要解决软件产品的生产率问题C.软件工程的主要思想是强调在软件开发过程中需要应用工程化原则D.软件工程只是解决软件开发中的技术问题7.在软件设计中,不属于过程设计工具的是()。

A.PDL(过程设计语言)B.PAD图C.N-S图D.DFD图8.数据库设计的4个阶段是:需求分析、概念设计、逻辑设计和()。

A.编码设计B.测试阶段C.运行阶段D.物理设计9.数据库技术的根本目标是要解决数据的()。

A.存储问题B.共享问题C.安全问题D.保护问题10.数据库独立性是数据库技术的重要特点之一。

所谓数据独立性是指()。

A.数据与程序独立存放B.不同的数据被存放在不同的文件中C.不同的数据只能被对应的应用程序所使用D.以上3种说法都不对11.下列关于栈的叙述正确的是()。

A.栈是非线性结构B.栈是一种树状结构C.栈具有"先进先出"的特征D.栈具有"后进先出"的特征12.结构化程序设计所规定的三种基本控制结构是()。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

考试命中率很高噢 一、选择题 (1) 下面叙述正确的是(C) A. 算法的执行效率与数据的存储结构无关 B. 算法的空间复杂度是指算法程序中指令(或语句)的条数 C. 算法的有穷性是指算法必须能在执行有限个步骤之后终止 D. 以上三种描述都不对

(2) 以下数据结构中不属于线性数据结构的是(C) A. 队列 B. 线性表 C. 二叉树 D. 栈 (3) 在一棵二叉树上第5层的结点数最多是(B) 注:由公式2k-1得 A. 8 B. 16 C. 32 D. 15 (4) 下面描述中,符合结构化程序设计风格的是(A) A. 使用顺序、选择和重复(循环)三种基本控制结构表示程序的控制逻辑 B. 模块只有一个入口,可以有多个出口 C. 注重提高程序的执行效率 D. 不使用goto语句

(5) 下面概念中,不属于面向对象方法的是 (D) 注:P55-58 A. 对象 B. 继承 C. 类 D. 过程调用 (6) 在结构化方法中,用数据流程图(DFD)作为描述工具的软件开发阶段是(B) A. 可行性分析 B. 需求分析 C. 详细设计 D. 程序编码 (7) 在软件开发中,下面任务不属于设计阶段的是(D) A. 数据结构设计 B. 给出系统模块结构 C. 定义模块算法 D. 定义需求并建立系统模型 (8) 数据库系统的核心是(B) A. 数据模型 B. 数据库管理系统 C. 软件工具 D. 数据库 (9) 下列叙述中正确的是(C) A.数据库是一个独立的系统,不需要操作系统的支持 B.数据库设计是指设计数据库管理系统C.数据库技术的根本目标是要解决数据共享的问题 D.数据库系统中,数据的物理结构必须与逻辑结构一致

(10) 下列模式中,能够给出数据库物理存储结构与物理存取方法的是(A) 注:P108 A. 内模式 B. 外模式 C. 概念模式 D. 逻辑模式 (11) 算法的时间复杂度是指(C) A. 执行算法程序所需要的时间 B. 算法程序的长度 C. 算法执行过程中所需要的基本运算次数 D. 算法程序中的指令条数

(12) 算法的空间复杂度是指(D) A. 算法程序的长度 B. 算法程序中的指令条数 C. 算法程序所占的存储空间 D. 算法执行过程中所需要的存储空间

(13) 设一棵完全二叉树共有699个结点,则在该二叉树中的叶子结点数为(B) 注:利用公式n=n0+n1+n2、n0=n2+1和完全二叉数的特点可求出

A. 349 B. 350 C. 255 D. 351 (14) 结构化程序设计主要强调的是(B) A.程序的规模 B.程序的易读性 C.程序的执行效率 D.程序的可移植性 (15) 在软件生命周期中,能准确地确定软件系统必须做什么和必须具备哪些功能的阶段是(D) 注:即第一个阶段

A. 概要设计 B. 详细设计 C. 可行性分析 D. 需求分析 (16) 数据流图用于抽象描述一个软件的逻辑模型,数据流图由一些特定的图符构成。下列图符名标识的图符不属于数据流图合法图符的是(A) 注:P67

A. 控制流 B. 加工 C. 数据存储 D. 源和潭 (17) 软件需求分析阶段的工作,可以分为四个方面:需求获取、需求分析、编写需求规格说明书以及(B) 注:P66

A. 阶段性报告 B. 需求评审 C. 总结 D. 都不正确 (18) 下述关于数据库系统的叙述中正确的是(A) A. 数据库系统减少了数据冗余 B. 数据库系统避免了一切冗余 C. 数据库系统中数据的一致性是指数据类型的一致 D. 数据库系统比文件系统能管理更多的数据

(19) 关系表中的每一横行称为一个(A) A. 元组 B. 字段 C. 属性 D. 码 (20) 数据库设计包括两个方面的设计内容,它们是(A) A. 概念设计和逻辑设计 B. 模式设计和内模式设计 C. 内模式设计和物理设计 D. 结构特性设计和行为特性设计 (21) 下列叙述中正确的是(A) A. 线性表是线性结构 B. 栈与队列是非线性结构 C. 线性链表是非线性结构 D. 二叉树是线性结构 (22) 下列关于栈的叙述中正确的是(D) A. 在栈中只能插入数据 B. 在栈中只能删除数据 C. 栈是先进先出的线性表 D. 栈是先进后出的线性表 (23) 下列关于队列的叙述中正确的是(C) A. 在队列中只能插入数据 B. 在队列中只能删除数据 C. 队列是先进先出的线性表 D. 队列是先进后出的线性表 (24) 对建立良好的程序设计风格,下面描述正确的是(A) 注:P48 A. 程序应简单、清晰、可读性好 B. 符号名的命名要符合语法 C. 充分考虑程序的执行效率 D. 程序的注释可有可无 (25) 下面对对象概念描述错误的是(A) 注:P55 A. 任何对象都必须有继承性 B. 对象是属性和方法的封装体 C. 对象间的通讯靠消息传递 D. 操作是对象的动态性属性 (26) 下面不属于软件工程的3个要素的是(D) 注:P62 A. 工具 B. 过程 C. 方法 D. 环境 (27) 程序流程图(PFD)中的箭头代表的是(B) 注:P81 A. 数据流 B. 控制流 C. 调用关系 D. 组成关系 (28) 在数据管理技术的发展过程中,经历了人工管理阶段、文件系统阶段和数据库系统阶段。其中数据独立性最高的阶段是(A)

A. 数据库系统 B. 文件系统 C. 人工管理 D. 数据项管理 (29) 用树形结构来表示实体之间联系的模型称为(B) A. 关系模型 B. 层次模型 C. 网状模型 D. 数据模型 (30) 关系数据库管理系统能实现的专门关系运算包括(B) A. 排序、索引、统计 B. 选择、投影、连接 C. 关联、更新、排序 D. 显示、打印、制表 (31) 算法一般都可以用哪几种控制结构组合而成(D) 注:P3 A. 循环、分支、递归 B. 顺序、循环、嵌套 C. 循环、递归、选择 D. 顺序、选择、循环 (32) 数据的存储结构是指(B) 注:P13,要牢记 A. 数据所占的存储空间量 B. 数据的逻辑结构在计算机中的表示 C. 数据在计算机中的顺序存储方式 D. 存储在外存中的数据 (33) 设有下列二叉树:图见书P46 对此二叉树中序遍历的结果为(B) A. ABCDEF B. DBEAFC C. ABDECF D. DEBFCA (34) 在面向对象方法中,一个对象请求另一对象为其服务的方式是通过发送(D) 注:P56 A. 调用语句 B. 命令 C. 口令 D. 消息 (35) 检查软件产品是否符合需求定义的过程称为(A) 注:P95 A. 确认测试 B. 集成测试 C. 验证测试 D. 验收测试 (36) 下列工具中属于需求分析常用工具的是(D) 注:P67 A. PAD B. PFD C. N-S D. DFD (37) 下面不属于软件设计原则的是(C) 注:P73 A. 抽象 B. 模块化 C. 自底向上 D. 信息隐蔽 (38) 索引属于(B) A. 模式 B. 内模式 C. 外模式 D. 概念模式 (39) 在关系数据库中,用来表示实体之间联系的是(D) A. 树结构 B. 网结构 C. 线性表 D. 二维表 (40) 将E-R图转换到关系模式时,实体与联系都可以表示成(B) A. 属性 B. 关系 C. 键 D. 域 (41) 在下列选项中,哪个不是一个算法一般应该具有的基本特征(C) A. 确定性 B. 可行性 C. 无穷性 D. 拥有足够的情报 (42) 希尔排序法属于哪一种类型的排序法(B) A.交换类排序法 B.插入类排序法 C.选择类排序法 D.建堆排序法 (43) 在深度为5的满二叉树中,叶子结点的个数为(C) A. 32 B. 31 C. 16 D. 15 (44) 对长度为N的线性表进行顺序查找,在最坏情况下所需要的比较次数为(B) 注:要牢记

A. N+1 B. N C. (N+1)/2 D. N/2 (45) 信息隐蔽的概念与下述哪一种概念直接相关(B) 注:P74 A.软件结构定义 B. 模块独立性 C. 模块类型划分 D. 模拟耦合度 (46) 面向对象的设计方法与传统的的面向过程的方法有本质不同,它的基本原理是(C) A. 模拟现实世界中不同事物之间的联系 B. 强调模拟现实世界中的算法而不强调概念 C. 使用现实世界的概念抽象地思考问题从而自然地解决问题 D. 鼓励开发者在软件开发的绝大部分中都用实际领域的概念去思考

(47) 在结构化方法中,软件功能分解属于下列软件开发中的阶段是(C) 注:总体设计也就是概要设计

A. 详细设计 B. 需求分析 C. 总体设计 D. 编程调试 (48) 软件调试的目的是(B) 注:与软件测试要对比着复习 A.发现错误 B.改正错误 C.改善软件的性能 D.挖掘软件的潜能 (49) 按条件f对关系R进行选择,其关系代数表达式为(C) A. R|X|R B. R|X|Rf C. бf(R) D. ∏f(R) (50) 数据库概念设计的过程中,视图设计一般有三种设计次序,以下各项中不对的是(D) 注:P127,要牢记

A. 自顶向下 B. 由底向上 C. 由内向外 D. 由整体到局部 (51) 在计算机中,算法是指(C) A. 查询方法 B. 加工方法 C. 解题方案的准确而完整的描述 D. 排序方法 (52) 栈和队列的共同点是(C) 注:这一共同点和线性表不一样 A. 都是先进后出 B. 都是先进先出 C. 只允许在端点处插入和删除元素 D. 没有共同点 (53) 已知二叉树后序遍历序列是dabec,中序遍历序列是debac,它的前序遍历序列是(A) 注:P38,前提要掌握三种遍历的方法

A. cedba B. acbed C. decab D. deabc (54) 在下列几种排序方法中,要求内存量最大的是(D) 注:要牢记,书中没有提到。 A. 插入排序 B. 选择排序 C. 快速排序 D. 归并排序 (55) 在设计程序时,应采纳的原则之一是(A) 注:和设计风格有关 A. 程序结构应有助于读者理解 B. 不限制goto语句的使用 C. 减少或取消注解行 D. 程序越短越好 (56) 下列不属于软件调试技术的是(B) 注:P98 A. 强行排错法 B. 集成测试法 C. 回溯法 D. 原因排除法 (57)下列叙述中,不属于软件需求规格说明书的作用的是(D)注:P71

相关文档
最新文档