计算机考试C语言选择试题.docx
《计算机考试C语言选择试题.docx》由会员分享,可在线阅读,更多相关《计算机考试C语言选择试题.docx(21页珍藏版)》请在冰豆网上搜索。
计算机考试C语言选择试题
C语言选择试题
选择题
1、设intb=8;表达式(b>>2)/(b>>1)的值是________。
A)0B)2C)4D)8
2、以读写方式打开一个已有的文件file1,下面有关fopen函数正确的调用方式为________。
A)FILE*fp;fp=fopen("file1";"f");B)FILE*fp;fp=fopen("file1","r+");
C)FILE*fp;fp=fopen("file1","rb");D)FILE*fp;fp=fopen("file1","rb+");
3、在C程序中,可把整型数以二进制形式存放到文件中的函数是__________。
A)fprintf函数B)fread函数C)fwrite函数D)fputc函数
4、以下程序输出的结果是______
#include
#include
main()
{charw[][10]={"ABCD","EFGH","IJKL","MNOP"},k;
for(k=1;k<3;k++)printf("%s\n",&w[k][k]);
}
A)ABCDB)ABCDC)EFGD)FGH
FGHEFGJKKL
KLIJO
M
5、下列程序执行后的输出结果是_______。
#defineMA(x)x*(x+1)
main()
{inta=2,b=3;printf("%d\n",MA(1+a+b));}
A)6B)8C)24D)42
6、函数调用语句fseek(fp,10,1)的含义是_______。
A)将文件指针移到距离文件头10个字节处
B)将文件指针移到距离文件尾10个字节处
C)将文件指针从当前位置后移10个字节
D)将文件指针从当前位置前移10个字节
7、有如下程序
#defineN3
#defineMN+1
#defineNUM2*M+1
main()
{inti;
for(i=1;i<=NUM;i++)printf("%d\n",i);
}
该程序中的for循环执行的次数是_______。
A)5B)6C)7D)8
8、以下各选项企图说明一种新类型名,其中正确的是_______。
A)typedefa1int;B)typedefa2=intC)typedefinta3;D)typedefa4;int;
9、若fp是指向某文件的指针,且已读到此文件末尾,则库函数feof(fp)的返回值是_______。
A)EOFB)0C)非零值D)NULL
10、在C语言中,用w+方式打开一个文件后,可以执行的文件操作是________。
A)可任意读写B)只读C)只能先写后读D)只写
11、下面程序输出结果是________。
#defineMAX(x,y)(x)>(y)?
(x):
(y)
main()
{inta=4,b=2,c=3,d=4,t;
t=MAX(a+b,c+d)*10;printf("%d\n",t);
}
A)6B)7C)60D)70
12、当顺利执行了文件关闭操作时,fclose函数的返回值是________。
A)0B)TureC)-1D)1
13、下列叙述中正确的是________。
A)C语言编译时不检查语法。
B)C语言的子程序有过程和函数两种。
C)C语言的函数可以嵌套定义。
D)C语言所有函数都是外部函数。
14、下列语句中,不能将文件型指针fp指向的文件内部指针置于文件头的语句是________。
(注:
假定能正确打开文件)
A)fp=fopen("abc.dat","w")B)rewind(fp)C)feof(fp)D)fseek(fp,0L,0)
15、运行程序:
#defineS(X)2*X+1
main()
{inta=6,k=2,m=1;
a+=S(k+m);printf("%d\n",a);
}
则输出结果是________。
A)13B)12C)7D)6
16、源程序TEST.C经编译产生的目标文件和连接后产生的可执行文件是________。
A)TEST.bak和TEST.objB)TEST.obj和TEST.exeC)TEST.ext和TEST.cD)TEST.bak和TEST.exe
17、下面说明中,正确的是________。
A)typedefv1int;B)typedefv2=int;C)typedefintv3;D)typedefv4:
int;
18、feof函数用来判断文件是否结束,如果文件没有结束,则返回值是________。
A)-1B)0C)1D)EOF
19、以下程序的输出结果是
#defineM(x,y,z)(x)*y+z
main()
{inta,b,c;
a=b=1;c=3;printf("%d\n",M(a+b,b+c,c+a));
}
A)9B)12C)8D)程序不能运行
20、若定义unsignedinta=3,b=10;
printf("%d\n",a<<2|b==1);
则运行结果为________。
A)13B)12C)8D)14
21、整型变量x和y的值相等且为非0值,则下面表达式中结果为零的是________。
A)x||yB)x|yC)x&yD)x^y
22、fread和fwrite函数常用来要求一次输入/输出________数据。
A)一个整数B)一个实数C)一个字节D)一组
23、下面的程序执行后,文件test.t中的内容是
#include
voidfun(char*fname,char*st)
{FILE*myf;
inti;
myf=fopen(fname,"w");
for(i=0;ifclose(myf);
}
main()
{fun("test.t","newworld");fun("test.t","hello,");}
A)hello,B)newworldhello,C)newworldD)hello,rld
24、以下叙述正确的是_________。
A)可以把define和if定义为用户标识符B)可以把define定义为用户标识符,但不能把if定义为用户标识符
C)可以把if定义为用户标识符,但不能把define定义为用户标识符D)define和if都不能定义为用户标识符
25、若要打开A盘上user1子目录下名为abc1.txt的文本文件进行读、写操作,则正确语句是___。
A)fopen("A:
\user1\abc1.txt","r")B)fopen("A:
\\user1\\abc1.txt","r+")
C)fopen("A:
\user1\abc1.txt","rb")C)fopen("A:
\\user1\\abc1.txt","w")
26、设有以下说明语句
typedefstruct
{intn;
charch[8];
}PER;
则下面叙述中正确的是
A)PER是结构体变量名B)PER是结构体类型名C)typedefstruct是结构体类型D)struct是结构体类型名
27、下面程序的输出结果是________。
main()
{intx=5,y=9,z=1,t;
t=(x>y||x>z);printf("%d\n",t);
}
A)1B)0C)5D)3
28、程序中头文件typel.h的内容是:
#defineN5
#defineM1N*3
程序如下:
#define"type1.h"
#defineM2N*2
main()
{inti;
i=M1+M2;printf("%d\n",i);
}
程序编译后运行输出结果是________。
A)10B)20C)25D)15
29、有以下程序
#include
main()
{FILE*fp;
inti=10,j=30,k,n;
fp=fopen("d1.dat","w");
fprintf(fp,"%d\n",i);
fprintf(fp,"%d\n",j);
fclose(fp);
fp=fopen("d1.dat","r");
fp=fscanf(fp,"%d%d",&k,&n);
printf("%d%d\n",k,n);
fclose(fp);
}
程序运行后的输出结果是________。
A)1030B)2030C)3050D)3020
31、下列程序执行后的输出结果是________。
main()
{intx='d';
printf("%c\n",'A'+(x-'a'+1));
}
A)GB)HC)ED)J
32、下面能正确进行字符串赋值操作的语句是________。
A)chars[5]={"\ABCDE"}B)chars[5]={'A','B','C','D','E'};C)char*s;s={"ABCDEF"};D)char*s;scanf("%s",s);
33、下列程序执行后的输出结果是________。
main()
{chararr[2][5];
strcpy(arr,"love");
strcpy(arr[1],"you");
arr[0][4]='$';
printf("%s\n",arr);
}
A)loveB)love$youC)youD)$you
34、以下程序运行后,输出结果是________。
main()
{staticchara[]="ABCDEFGH",b[]="abCDefGh";
char*p1,*p2;
intk;
p1=a;p2=b;
for(k=0;k<=7;k++)
if(*(p1+k)==*(p2+k))printf("%c",*(p1+k));
prinft("\n");
}
A)ABCDEFGB)CDGC)abcdefghD)abcCDefGh
35、设有说明语句:
chara='\72';则变量a________。
A)包含1个字符B)包含2个字符C)包含3个字符D)说明不合法
36、有如下程序段
inta=14,b=15,x;
charc='A';
x=(a&&b)&&(c<'B');执行该程序段后,x的值为________。
A)tureB)falseC)0D)1
37、若变量c为char类型,能正确判断出c为大写字母的表达式是________。
A)'A'<=c<='Z'B)(c>='A')||(c<='Z')C)('A'<=c)and('Z'>=c)D)(c>='A')&&(c<='Z')
38、执行下面程序:
#include
#include
main()
{chars