c语言试题及答案Word文档下载推荐.docx
- 文档编号:18524955
- 上传时间:2022-12-19
- 格式:DOCX
- 页数:19
- 大小:22.48KB
c语言试题及答案Word文档下载推荐.docx
《c语言试题及答案Word文档下载推荐.docx》由会员分享,可在线阅读,更多相关《c语言试题及答案Word文档下载推荐.docx(19页珍藏版)》请在冰豆网上搜索。
i=%d,f=%f"
&
i,&
f);
,为了把100和分别送给i和f,正确的输入为()。
A、100<
空格〉<
回车>
B、i=100,f=<
C、100<
回车〉<
D、x=100<
f=<
10、下列表述中,合法的C语言赋值语句是()。
A、a=b=58B、i++;
C、a=58,b=58D、k=int(a+b);
11、若k是int型变量,程序片段k=-3;
if(k<=0)printf("
####"
);
elseprintf("
"
的输出结果是()。
A、####B、&
C、####&
D、有语法错误,无输出结果
12、程序main(){intx=1,y=0,a=0,b=0;
switch(x){case1:
switch(y){case0:
a++;
break;
case1:
b++;
}case2:
break;
}printf("
a=%d,b=%d\n"
a,b);
}的输出结果是()。
(1分)
A、a=2,b=1B、a=1,b=1
C、a=1,b=0D、a=2,b=2
13、若有定义floatw;
inta,b;
,则合法的switch语句是(A)。
A、switch(w){case:
printf("
*\n"
case:
**\n"
}
B、switch(a);
{case1printf("
case2printf("
}
C、switch(b){case1:
default:
\n"
case1+2:
D、switch(a+b);
{case1:
case2:
14、若有inta[4][5];
,则数组a包含的元素个数是()。
A、4B、5
C、9D、20
15、下列语句中,正确的定义语句是()。
A、intA[a];
B、intA[10];
C、intA[3,4];
D、intA[][3]
16、下列描述中,能正确给字符数组str定义和赋值的是()。
A、charstr[]={"
China"
};
B、charstr[10];
str={"
C、charstr[10]={"
abcdefghijklmn"
D、charstr[10];
strcpy(str,"
17、若有charc[6]={'
H'
'
e'
l'
o'
,则c[5]的值是()。
0'
B、'
\0'
C、空格D、不可知的
18、设有定义:
charc,string[]="
Welcomezhanghong"
,若要逐个输出元素的值,可以写一个循环程序段,则这个循环段的“循环条件”是()。
A、c=string[i]='
B、(c=string[i])='
C、c=string[i]!
='
D、(c=string[i])!
19、在TurboC下,若有数组定义:
floatf[10]={1,2,3,4};
,则数组f所占的存储空间为()个字节。
A、4B、16
C、10D、40
20、C语言允许用外部说明来指定变量、函数等,这里的外部指的是()。
A、冠以关键字externB、位置在函数体外部
C、作用范围是全程的D、位置在函数外部
21、下列关于静态局部变量的说法中,不正确的说法是(C)。
A、静态局部变量在函数内定义B、静态局部变量的生存期为整个源程序
C、静态局部变量的作用域为整个源程序D、静态局部变量若在说明时未赋初值,则系统自动赋予0值
22、下列关于局部变量的说法中,不正确的说法是()。
A、不能在复合语句中定义变量B、局部变量是在函数内部定义说明的
C、形参变量属于被调函数的局部变量D、允许在不同的函数中使用相同的变量名
23、在复合语句中定义的变量()。
A、只在主函数中有效B、只在本复合语句中有效
C、可以在整个文件中有效D、可以在所有函数中有效
24、如果全局的外部变量和函数体内定义的局部变量重名,则()。
A、出错B、局部变量优先
C、外部变量优先D、全局的外部变量优先
25、在主函数中定义的变量()。
A、只在主函数中有效B、可以在整个文件中有效
C、可以在所有函数中有效D、可以在被调用的函数中有效
26、能够在输出完字符串后自动输出一个回车换行的函数是()函数。
A、putc()B、puts()
C、printf()D、putchar()
27、在C程序中,main()的位置()。
A、可以任意B、必须作为第一个函数
C、必须作为最后一个函数D、必须放在它所调用的函数之后
28、如果函数值的类型和return语句中表达式的值不一致,则()。
A、语法出错B、连接出错
C、以函数类型为准D、以表达式值的类型为准
29、若在程序中用到“strlen()”函数时,应在程序开头写上()。
A、#include<
>
B、#include<
C、#include<
D、#include<
30、若有intf(inta,intb);
,则说明函数f()。
A、是一个内部函数B、是一个外部函数
C、只能在本文件中使用D、不能被同一源程序其他本文件中的函数调用
31、声明一个函数为外部函数,应该在声明函数的函数类型的前面加()。
A、autoB、static
C、externD、register
32、若有inta=3,*pa;
floatf=,*pf;
,则下列表述中,错误的是()。
A、pa=&
aB、pa=&
f
C、pf=&
fD、*pf=a+f
33、设chars[10];
inti=5;
,下列表达式中,正确的表达式是()。
A、s[i+6]B、*(s+i)
C、*(&
s+i)D、*((s++)+i
34、若有inta[10],*p=a;
,则()。
A、p++可以使p指向下一个字节B、p+=2相当于p=sizeof(a)/10
C、p++可以使p指向下一个元素,即a[1]的首地址D、p+=2可以使p指向下一个元素,即a[1]的首地址
35、设有语句:
inta[10]={0,1,2,3,4,5,6,7,8,9},i,*p=a;
,下列表达式中,对a数组元素引用错误的是()。
A、p[i]B、a[p-a]
a[i])D、*(*a(a+i))
36、在C语句中,&
后跟指针变量名,表示该指针变量的(()。
A、值B、别名
C、地址D、类型
37、若程序中包含有以下说明和定义:
structex{intx,y;
}…structex,x,y;
…,则在计算机上调试时,()。
A、编译出错B、可以编译、连接、执行
C、可以编译、连接,但不能执行D、可以编译,但连接出错
38、“.”运算符称为()运算符。
A、指针B、取地址
C、结构体成员D、指向结构体成员
39、设有定义语句“struct{inta;
floatb;
charc;
}abc;
”,则对结构体成员a的引用可以是()。
A、B、abc-a
C、abc>
aD、abc->
a
40、在说明一个结构体变量时系统分配给它的存储空间是()。
A、该结构体中的第一个成员所需存储空间B、该结构体中的最后一个成员所需存储空间
C、该结构体中所有成员所需存储空间的总和D、该结构体占用最大存储空间的成员所需存储空间
41、下列关于C语言数据文件的叙述中,正确的叙述是()。
A、文件由ASCII码字符序列组成,C语言只能读写文本文件B、文件由二进制数据序列组成,C语言只能读写二进制文件
C、文件由记录序列组成,可按数据的存放形式分为二进制文件和文本文件
D、文件由数据流形式组成,可按数据的存放形式分为二进制文件和文本文件
42、在C语言中,关于文件存取方式,()。
A、只能顺序存取B、只能随机存取(也称直接存取)
C、可以顺序存取,也可以随机存取D、只能从文件开头存取
43、C语言可以处理的文件类型是()。
A、文本文件和数据文件B、文本文件和二进制文件
C、数据文件和二进制文件D、都不对
44、以读写方式打开一个已存在的二进制文件file1,fopen函数的正确的调用方式是()。
A、FILE*FP;
FP=fopen("
r"
"
file1"
B、FILE*FP;
C、FILE*FP;
rb+"
D、FILE*FP;
45、设fp是文件指针,str是一个字符串变量,n是一个整数,向文件中输出字符串的正确格式是()。
A、fputs(str,fp);
B、fputs(fp,str);
C、fputs(str,n,fp);
D、fputs(fp,n,str);
46、函数调用语句fseek(fp,-10L,2)的含义是()。
A、将文件位置指针移动距文件头10个字节处B、将文件位置指针从当前位置向文件尾方向移10个字节
C、将文件位置指针从当前位置向文件头方向移10个字节D、将文件位置指针移至距文件尾10个字节处
47、fp是文件指针,str是一个字符串,n是一个整数,向文件中输出数据的正确格式是()。
A、fprintf("
%s,%d\n"
str,n,fp);
B、fprintf(fp,"
str,n);
C、fprintf("
fp%s,%d\n"
D、fprintf("
%s,%dfp\n"
48、在C程序中,可把整型数以二进制形式存放到文件中的函数是()。
A、fprintf函数B、fread函数
C、fwrite函数D、fputc函数
49、标准函数fgets(s,n,f)的功能是()。
A、从文件f中读取长度为n的字符串存入指针s所指的内存B、从文件f中读取长度不超过n-1的字符串存入指针s所指的内存
C、从文件f中读取n个字符串存入指针s所指的内存D、从文件f中读取n-1字符串存入指针s所指的内存
50、若fp是指向某文件的指针,若没到该文件的末尾,则函数表达式!
feof(fp)的值是()。
A、EOFB、1
C、非零值D、0
二、填空题(7道小题,共30分)
1、*下面程序的功能是:
将从键盘上输入的小写字母变成对应大写字母后的第二个字母并输出。
其中y变成A,z变成B。
#include<
voidmain()
{
char【c】;
while((c=getchar())!
\n'
)
if(c>
&
c<
z'
c-=30;
Z'
c<
+2)
c-=26;
}
printf("
%【c】"
c);
%c"
(4分)
--------------------------------------------------------------------------------
2、*用冒泡法对10个数排序
{
【int】a[11],i,j,t;
Input10numbers:
for(i=1;
i<
11;
i++)
%d"
a[i]);
=9;
for(j=【1】;
j<
=10-i;
j++)
if(a[j]>
a[j+1])
{
t=a[j];
a[j]=a[j+1];
a[j+1]=t;
Thesortednumbers:
%d"
a[i]);
3、*两个乒乓球队进行比赛,各出三人甲队为A、B、C.乙队为X、Y、Z三人.已经抽签决定比赛名单。
有人向队员打听比赛的名单,A说他不和X比,C说他不和X、Z比.编程序找出三对赛手的名单.
#include<
char【i】,j,k;
for(i='
X'
i<
i++)
for(j='
j<
j++)
【if】
(i!
=j)
for(k='
k<
k++)
if(i!
=k&
j!
=k)
if(i!
k!
)
A--%c\tB--%c\tC--%c\n"
i,j,k);
4、*程序的功能是显示具有n个元素的数组s中的最大元素。
#define【N】30
inti,a[N];
intfmax(ints[],intn);
for(i=0;
N;
%d\n"
a[fmax(a,N)]);
int【fmax】
(ints[],intn)
intk,p;
for(p=0,k=p;
p<
n;
p++)
if(s[p]>
s[k])k=p;
return(k);
5、*由系统随机产生一个N×
N矩阵(矩阵中的元素值在[10,99]范围内),输出这个矩阵下三角区所有元素的和。
#defineN5
main()
inta[N][N],b[N*N],【k】=-1,f,t,i,j,s;
正在产生%d个在[10,99]范围内随机数...\n\n"
N*N);
for(j=0;
k++;
f=1;
do
b[k]=rand()%100;
}while(b[k]<
【10】);
a[i][j]=b[k];
输出数组a[%d][%d]:
\n\n"
N,N);
%5d"
a[i][j]);
【s】=0;
i;
s=s+a[i][j];
\n数组a中下三角区所有元素和是%d\n"
s);
(6分)
6、*使用双重循环,输出下面的图形:
1
121
12321
1234321
1
inti,j;
for(i=1;
=4;
for(j=1;
40-i;
"
=i;
j++)
j);
for(j=【i】-1;
j>
0;
j--)
for(i=3;
i>
=【1】;
i--)
for(j=i-1;
j--)
7、*下面程序的功能是计算正方形的面积。
floata,s;
【float】*p,*area;
p=&
a;
area=&
s;
%f"
p);
s=(*p)*(*p);
areais=%2f\n"
*【area】);
三、编程题(3道小题,选作2道,每道15分,共30分)
*编写程序:
*写程序,输出1000以内第二大的素数。
(10分)
必须将本题程序最后的运行结果填入下面的框中。
否则,该题以零分计!
运行结果:
991
请将你解答本题所写的源程序粘贴到下面或者上载源程序
参考答案:
intmain()
inti,j,k,n=0;
for(i=1000;
1;
{k=sqrt(i);
for(j=2;
=k;
if(i%j==0)break;
if(j>
k){n++;
if(n==2){printf("
i);
}}
return0;
--------------------------------------------------------------------------------
2、*编写程序:
*先下载数据文件到自己的计算机中,然后编制程序,要求:
统计其数字个数。
(【下载文件“”】;
)下载方法:
在链接上右击打开弹出菜单,选择“目标另存为”。
参考答案:
{charc;
intk=0;
FILE*p;
p=fopen("
D:
\\a\\"
while(!
feof(p))
c=fgetc(p);
if(c>
9'
k++;
k);
fclose(p);
运行结果:
155
:
5zr`jpyU_;
s6ZyF
Exrzyn;
X<
|<
vimG
yH(*c<
B82=@gQS`
^QC=81*&
zGi>
k=
[CuKun5O]KL]hoe
7N+S{o!
x@WT4I]#
R,"
52tEs;
F]#Hz
X$SN$|fZe/MO4g
0lG*+UO=kh
w$c2(<
DI1>
AGSG
9{"
];
/ySrn"
JH`F
9`xjJ00b<
5DC>
\P_,'
3OWS1,2d!
@.,\H@|>
6=w&
5+
`'
3M31wwId!
0V0E
KB$bc.`Bn2_k3K!
Lh]R
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 语言 试题 答案