福建省计算机等级考试二级选择题附答案.docx
- 文档编号:11510239
- 上传时间:2023-06-01
- 格式:DOCX
- 页数:42
- 大小:34.77KB
福建省计算机等级考试二级选择题附答案.docx
《福建省计算机等级考试二级选择题附答案.docx》由会员分享,可在线阅读,更多相关《福建省计算机等级考试二级选择题附答案.docx(42页珍藏版)》请在冰点文库上搜索。
福建省计算机等级考试二级选择题附答案
一、单项选择题
(1).下面程序运行后,文件d_f.dat的容是
(1)。
main()
{FILE*fp;inti=10,j=20;
fp=fopen("d_f.dat","w");
fprintf(fp,"%d",i);
fclose(fp);
fp=fopen("d_f.dat","a");
fprintf("%d",j);
fclose(fp);
}
①1020②20③2010④10
(2).若有定义:
enumday{sun,mon,tue,wed,thu,fri,sat};,则枚举常量sun、mon的值分别为(4)。
①70②12③71④01
(3).下列程序段运行后,表达式
(2)的值为3。
structpoint
{intx;
inty;
}*p;
structpointa[3]={1,2,3,4,5,6};
p=a;
①p[3].x②p[1].x③*(p+2)④p[2].x
(4).以下程序段的运行结果是(3)。
intx[]={2,3,4,5,6,7},*p=x;
inti,s=0;
for(i=1;i<5;i++)s+=p[i++];
printf("%d",s);
①20②14③8④6
(5).C语言的函数体由
(1)括起来。
①{}②[]③<>④()
(6).若有定义:
intx,y,z;语句x=(y=z=3,++y,z+=y);运行后,x的值为
(2)。
①7②6③8④3
(7).若有定义:
intx;charc='A';则正确的赋值表达式是(4)。
(说明:
'A'的ASCII码的十进制值为65,'a'的ASCII码的十进制值为97)
①x='ABC'②x=c+'ABC'③x=c+'CBA'④x=c+32
(8).下面叙述错误的是(3)。
①C语言规定可逐个引用数组元素但不能一次引用整个数组②数组中每一个元素都属于同一个数据类型③C语言数组长度在定义数组时可不作确定④C语言数组名称是数组在存中的首地址
(9).以下程序的运行结果是(4)。
intf(intc)
{c+=2;
returnc;
}
main()
{inta=2,c=5;
a=f(a);
printf("%d%d\n",a,c);
}
①24②25③44④45
(10).C语言中,二维数组元素在存中的存放顺序是(3)。
①由用户自己定义②按列存放③按行存放④随机存放
(11).以下程序的运行结果是
(1)。
#defineXa+b
main()
{inta=3,b=4,s1;
s1=2*X;
printf("%d\n",s1);
}
①10②14③8④6
(12).若有定义:
charstr1[10],str2[10]="Fujian";,能将字符串"Fujian"赋给数组str1的正确语句是
(1)。
①strcpy(str1,str2);②strcpy(str2,str1);③strcopy(str1,str2);④str1="Fujian";
(13).若有定义:
inti,x;(3)不是死循环。
①for(;;i+=2);②for(i=10;;i--);③for(x=5;x>0;x--);④while(x=1);
(14).只能向终端输出一个字符的是
(1)。
①putchar()函数②scanf()函数③printf()函数④getchar()函数
(15).C语言的基本数据类型包括(3)。
①整型、字符型、指针型②整型、实型、逻辑型③整型、实型、字符型④整型、实型、空类型
(16).若有定义:
inta,b=5;语句a=(b/2)+b%2;运行后,a的值为
(2)。
①4②3③2④0
(17).x的值在-20至-5之间为“真”,否则为“假”的正确逻辑表达式为(3)。
①!
(x>-20)&&!
(x<-5)②-5 (18).以下程序的运行结果是(3)。 voidmain() {inta,b=2,c=6; a=3; if(a>6) a=a+b; elseif(a==6) b=a+c; else a=b+c; printf("%d\n",a); } ①5②6③8④9 (19).若有定义: inta[3][4]={{1,2},{3,4},{5,6,7}};,则a[1][1]的值为(4)。 ①2②3③1④4 (20).若有定义: structteacher {intnum; charsex; intage; }teacher1; 则下面叙述错误的是(4)。 ①struct是结构类型的关键字②structteacher是用户定义的结构类型③num、sex、age都是结构变量teacher1的成员④teacher1是结构类型名 (21). (1)是关于C语言数据类型的正确叙述。 ①变量使用前应定义相应的数据类型②不允许使用空类型③枚举类型不是基本类型④数组不是构造类型 (22).(4)为非法的字符串常量。 ①"case"②""③"056"④'123' (23).若有定义: intb=-15;则 (2)为正确的赋值表达式。 ①b=*5②b+=b*3③*b=6④b+10=-5 (24).若有定义: inta,b=6;语句a=--b;运行后,a、b的值分别是(4)。 ①65②56③66④55 (25).若有定义floatx;要从键盘输入数据6.02赋给x,则应选用(3)语句。 ①scanf("%1.2f",&x);②scanf("%4.2f",&x);③scanf("%f",&x);④scanf("%8.2f",&x); (26).若有定义: inta=1,b=2,c=3,d=4,t=2,k=2;语句(t=a ①0②2③-1④1 (27).若有定义: inta=6,b=7,k=0,t=1;语句(k=a ①00②11③10④01 (28).以下程序段运行时,若从键盘输入5,则运行结果是(4)。 inta,y=10; scanf("%d",&a); if(a>10) y=a+6; printf("%d\n",y+a); ①10②16③11④15 (29).以下程序段运行后x的值为 (1)。 inti=0,x=2; while(i++<=5) {x+=2; } ①14②12③8④10 (30).以下程序段运行后x的值为(4)。 inta[8]={1,2,3,4,5,6,7,8},i,x=0; for(i=0;i<8;i++,i++) x=x+a[i]; ①20②18③36④16 (31).以下程序段运行后s的值是 (2)。 inta[3][3]={1,2,3,1,2,3,1,2,3}; inti,j,s=0; for(i=0;i<3;i++) for(j=i;j<3;j++) s+=a[i][j]; ①15②14③13④12 (32).以下程序的运行结果是 (2)。 inta=2,b=3; intmin(inta,intb) {intc; c=a a: b; return(c); } main() {inta=4; printf("%d",min(a,b)); } ①4②3③2④2,3 (33).若有定义: #definePI3,则表达式PI*2*2的值为 (2)。 ①322②12③4④不确定 (34).以下程序段运行后*(p+1)的值为 (2)。 chara[]="good"; char*p; p=a; ①a[1]的地址②'o'③不确定④'g' (35).以下程序段运行后x的值为(4)。 inta[]={1,2,3,4,5,6,7,8}; inti,x,*p; x=1; p=&a[1]; for(i=0;i<3;i++) x*=*(p+i); ①6②1③120④24 (36).以下程序段的运行结果是(4)。 union {intnum1; intnum2; }s; s.num1=20; s.num2=30; printf("%d",s.num1); ①20②2030③50④30 (37).下面程序运行后,屏幕显示Fileopenerror! ,则可能的原因是(4)。 #include main() { FILE*fp; charstr[256]; fp=fopen("test.txt","rt"); if(fp==NULL) {printf("Fileopenerror! "); return; } fscanf(fp,"%s",str); fclose(fp); } ①当前工作目录下的test.txt文件是空文件②函数fopen()的参数是错误的③test.txt文件已经打开④当前工作目录下没有test.txt文件 (38). (1)为正确的用户标识符。 ①max_at②3_row③union④min-5 (39).若有定义: intx,a,b;语句x=(a=2,b=3,a+b);运行后,x、a、b的值依次为 (2)。 ①235②523③532④325 (40).下面叙述正确的是 (2)。 ①模运算符"%"两边运算数的数据类型是任意的②C语言中整型与字符型变量的混合运算表达式的结果是整型③(3+9)++是正确表达式④"abc"+"xxx"是正确表达式 (41).若有定义inta=8,b=5;要实现输出形式为: 8*5=40,正确的printf()函数调用语句是(4)。 ①printf("a*b=%d\n",a*b);②printf("%d*%d=a*b\n",a,b);③printf("a*b=a*b\n");④printf("%d*%d=%d\n",a,b,a*b); (42).下列运算符中优先级最低的是 (1)。 ①=②! ③>④* (43).以下程序段的运行结果是(4)。 ints=15; switch(s/4) {default: printf("Over"); case1: printf("One"); break; case2: printf("Two"); } ①One②Two③OverTwo④OverOne (44).下面叙述正确的是 (1)。 ①for循环的循环体可包含多条语句,但必须用花括号{}括起来②for循环只能用于循环次数已经确定的情况③在for循环中,不能用break语句跳出循环体④for循环是先执行循环体语句,后判断表达式 (45).若有定义: intarr[15],n=5;无确引用arr数组元素的是(4)。 ①arr[15-n]②arr[0]③arr[n]④arr[10+n] (46).以下程序段的运行结果是(4)。 charstr[3][2]={'a','b','c','\0','e','f'}; printf("%s",str[0]); ①abcef②a③abc\0ef④abc (47).以下程序段运行后*(p++)的值为(3)。 chara[5]="work"; char*p; p=a; ①a[0]的地址②'o'③'w'④a[1]的地址 (48).若有定义: structdata {chara; floatb[3]; longc; }d1; 则变量d1的长度是(4)。 ①12②4③15④17 (49).若有定义: inta[10]={0,1,2,3,4,5,6,7,8,9},*p=a;,则(3)表达式是错误的。 ①p++②a[2]③a++④p[2] (50).若由定义: typedefintNUM[100]; NUMn; 则(3)语句是正确的。 ①NUM=n;②n=2;③n[0]=2;④NUM=2; (51).下面程序运行后,屏幕显示writeok! ,则下面叙述正确的是(3)。 main() {FILE*fp; fp=fopen("data.txt","wt"); if(fp! =NULL) {fprintf(fp,"%s\n","Filewritesuccessed! \n"); fclose(fp); printf("writeok! \n"); } } ①当前工作目录下找不到data.txt文件②当前工作目录下存在data.txt文件,其中的容是“writeok! ”③当前工作目录的data.txt文件已经关闭④当前工作目录的data.txt文件已经打开 (52).(3)为正确的变量名。 ①case②else③pro_5④5_pro (53).若有定义: floatx=2,y;inta=3;语句y=1*(x+a)/3;运行后,y的值为(3)。 ①1.0②0③1.666667④2.0 (54).若有定义: intx,a;赋值语句a=(x%3==0)? 0: 1;与(4)语句不等价。 ①if(! (x%3==0))a=1;elsea=0;②if(x%3! =0)a=1;elsea=0;③if(x%3==0)a=0;elsea=1;④if(x%3)a=0;elsea=1; (55).以下程序段的运行结果是 (1)。 intt[][3]={1,2,3,4,5,6,7,8,9,10,11,12}; printf("%d\n",t[1][1]); ①5②3③1④4 (56).以下程序段运行后a的值为 (2)。 inta=2; a=strcmp("miss","miss"); ①1②0③true④-1 (57).以下程序的运行结果是 (2)。 fun() {staticinta=0; a++; printf("%d",a); } main() {inti; for(i=1;i<=2;i++) fun(); } ①11②12③01④00 (58).若有定义: int*p1,*p2;,则不能用于指针变量p1、p2之间的运算符是(4)。 ①==②=③-④+ (59).以下程序段的运行结果是 (2)。 intx[3]={1,2,3}; int*p; p=x; for(p++;p<&x[2];p++) printf("%d",*p); ①3②2③23④12 (60).下列(4)对结构类型变量定义是错误的。 ①struct {intnum; intage; }teach1,teach2; ②structteacher {intnum; intage; }teach1; ③structteacher {intnum; intage; }; structteacherteach1; ④struct {intnum; intage; }teacher; structteacherteach1; (61).若有定义: charch; intj,k; enumday{sun,mon,tue,wed,thu,fri,sat}; inta[sat]; 则 (2)对下列语句是否符合语法规则的判断是正确的。 sun=0;/*语句1*/ j=mon+tue;/*语句2*/ if(a[mon]>0)j++;/*语句3*/ ①语句1、2、3均错误②语句1错误,语句2和语句3正确③语句1、2、3均正确④语句2正确,语句1和语句3错误 (62).下面叙述正确的是 (2)。 ①程序中必需含有自定义函数②所有语句都必须以分号";"结束③main()函数必须位于源程序文件的开头④每行最多只能写两条语句 (63).若有定义: floatx=3.5,y=3.6;则表达式 (2)的值为6。 ①(int)(x+y)②(int)x+(int)y③int(x+y)④x+y (64).以下程序段运行后x的值为 (1)。 inti=0,x=0; for(;i<=5;i++,i++) {x+=3;} ①9②15③6④12 (65).若有定义: inta[3][2];,则表达式&a[2][1]-a的值为(3)。 ①5②4③3④2 (66).以下程序的运行结果是(4)。 intfun(intarray[3][3]) {intj; for(j=0;j<3;j++)array[1][j]++; printf("\n"); } main() {intj,a[3][3]={0,1,2,1,0,4,2,4,5}; fun(a); for(j=0;j<3;j++)printf("%2d",a[1][j]); printf("\n"); } ①104②123③012④215 (67).下面叙述错误的是 (1)。 ①宏定义也是C语句,必须在行末加分号②“#definePRICE30”命令的作用是定义一个与30等价的符号常量PRICE③C源程序中加入一些预处理命令是为了改进程序设计环境,提高编程效率④“#inclue (68).下面叙述错误的是(4)。 ①任何指针变量都可以与空指针NULL进行比较②一个指针变量只能指向同一类型的变量③一个变量的地址称为该变量的指针④可以将一个整数值赋给指针变量 (69).以下程序段运行后x的值为(4)。 inta[]={1,2,3},b[]={4,3,3}; int*p,*q; inti,x; p=a;q=b; for(i=0;i<3;i++) if(*(p+i)==*(q+i)) x=*(p+i)*2; ①4②2③不确定④6 (70).以下程序的运行结果是 (2)。 main() {inta[3]={1,2,3}; int*num[3]; int**p,i; for(i=0;i<3;i++) num[i]=&a[i]; p=num; printf("%d",**p); } ①&a[0]②1③3④num (71). (2)不是文件读库函数。 ①fgetc()②fputs()③fscanf()④fread() (72).C源程序中main()函数的位置(4)。 ①必须位于程序的最前面②可以在自定义函数后面③必须在自定义函数前面④必须在系统库函数后面 (73).若有定义: inta=3;语句a+=a-=a*a;运行后,a的值为(3)。 ①-6②-3③-12④0 (74).若有语句inta;charc;scanf("%3d%c",&a,&c);为将整数135赋给a,字符'6'赋给c,正确的数据输入方式是(3)。 (说明: ①135 (75).若有定义: intx=1,y=2,z=3;则表达式 (2)的值为0。 ①x>y||x ((x (76).以下程序段运行后x的值为(4)。 inta=3,b=6,x; x=(a==b)? a++: --b; ①3②4③6④5 (77).若有定义: inti,x=0;语句for(i=1;i<=3;i++)x+=2;与下列 (2)程序段不等价。 ①i=1; for(;i<=3;i++)x+=2; ②i=1; for(;;i++)x+=2; ③i=1; for(;i<=3;) {x+=2;i++;} ④for(i=1;i<=3;) {x+=2;i++;} (78).(3)能正确定义一个指向函数的指针。 ①int(*p)()②int(*p())③int*p()④(int*)p() (79).若有定义: enumnum{a1,a2=3,a3,a4=10};,则枚举常量a2、a3的值分别为 (2)。 ①23②34③33④12 (80).C语言中,对文件操作的一般步骤是(4)。 ①打开文件,定义文件指针,读写文件,关闭文件②定义文件指针,读文件,写文件,关闭文件③操作文件,定义文件指针,修改文件,关闭文件④定义文件指针,打开文件,读写文件,关闭文件 (81).若有定义: inti=3,j=6;则表达式(--i)*(j++)的值为 (2)。 ①18②12③10④15 (82).若有定义: inta;且表达式! a的值为0,则表达式(4)的值为1。 ①! (a<0||a>0)②a=0③a==0④a! =0 (83).以下程序段运行后x的值为(4)。 inta[8]={1,2,3,4,5,6,7,8},i,x=0
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 福建省 计算机等级考试 二级 选择题 答案