计算机C语言笔试题目及答案Word文档下载推荐.docx
- 文档编号:19095147
- 上传时间:2023-01-03
- 格式:DOCX
- 页数:17
- 大小:18.08KB
计算机C语言笔试题目及答案Word文档下载推荐.docx
《计算机C语言笔试题目及答案Word文档下载推荐.docx》由会员分享,可在线阅读,更多相关《计算机C语言笔试题目及答案Word文档下载推荐.docx(17页珍藏版)》请在冰豆网上搜索。
do
printf(%d,x=2);
}while(!
(--x));
A1B30C1-2D死循环
7.C语言规定,简单变量做实参时,它和对应的形参之间的数据传递方式是b。
A.地址传递B.值传递C.由实参传递给形参,再由形参传递给实参D.由用户指定传递方式
8.已知一个函数的定义如下:
d。
doublefun(intx,doubley)
{}
则该函数正确的函数原型声明为:
A.doublefun(intx,double)B.fun(intx,inty)C.doublefun(int,double);
D.fun(x,y);
9.已知整型变量K的值为5,下面程序段执行的结果是c。
switch(k)
case1:
putchar(A);
case2:
putchar(B);
case3:
putchar(C);
case4:
putchar(D);
default:
putchar(E);
ACDEBCCEDABCD
10.以下程序的执行次数是c。
inti,j;
for(i=0,j=1;
i=j+1;
i+=2,j--)
printf(%d\n,i);
A3B2C1D0
11.下列叙述中错误的是b。
A主函数中定义的变量在整个程序中都是有效的
B复合语句中定义的变量只在该复合语句中有效
C其他函数中定义的变量在主函数中不能使用
D形参是局部变量
12.若运行时输入100,写出以下程序的运行结果。
inta;
printf(%s,(a%2!
=0?
No:
Yes));
}_
Yes运行结果:
ANoBYesCsDNo:
Yes
运行结果:
b
13.下面正确的二维数组定义是b。
Ainta[2][]={{1,2},{2,4}};
Binta[][2]={1,2,3,4,};
Cinta[2][2]={{1},{2},{3}};
Dinta[2][]={{1,2},{3,4}};
14.若有
chara[]=china
则d不可输出该字符串。
Aputs(a);
Bprintf(%s,a)
Cinti;
for(i=0;
ii++)printf(%c,a[i]);
Dputchar(a);
15.对于字符串的操作,下列说法中正确的是c。
A可用赋值表达式对字符数组赋值,如charstr[20];
str=aaaa
B若有字符数组a和b,且ab,则strcmp(a,b)为非负数
C可用strcpy函数进行字符串的复制完成字符数组的赋值
D字符串aaaa在内存中占用4个字节长度
16.已有定义intk=2;
int*ptrl1,*ptr2;
且ptr1和ptr2均已指向变量k,下面不能正确执行的赋值语句是b。
A.k=*ptrl+*ptr2Bptr2=kC.ptl1=ptr2Dk=*ptr1*(*ptr2)
17.若定义:
inta[9],*p=a;
并在以后的语句中未改变p的值,不能表示a[1]地址的表达式是b。
A.p+1Ba+1C++pDa++
18.若有以下定义和语句:
#include
main(0
{char*s1=12345,*s2=1234
printf(%d\n,strlen(strcpy(s1,s2)));
}则输出的结果是c。
A.9B5C4D10
19.以下定义和语句:
inta[3][2]={1,2,3,4,5,6},*p[3];
p[0]=a[1];
则*(p[0]+1)所代表的数组元素是c。
A.a[0][1]Ba[1][0]Ca[1][1]Da[1][2]
20.以下程序的输出结果是b。
{charstr[][10]={China,BEijing},*p=str;
printf(%s\n,p+10);
A.ChinaBBeijingCngDing
21.回答本题的运行结果为a。
已知intx=3,y,*p,*q;
inta[]={1,2,3,4,5};
p=y=*p,q=a+2;
printf(%d%d%d%d,x,y,*p,*q);
A.3333B1234
C.1223D2222
22.在switch()语句中case后面可以是c。
A.关系表达式B逻辑表达式C常量表达式D算术表达式
23.表达式532||84-!
1值是a。
A.1B2C3D0
24.下列运算符中,优先顺序的级别最低的是d。
A.!
BC+D||
25.已有定义intk=2;
int*ptrl,*ptr2;
且ptr1和prt2均已指向变量k,下面有能正确执行的赋值语句是b。
A.k=*ptr1+*ptr2B.ptr2=kC.ptr1=ptr2D.k=*ptrl*(*ptr2)
二、填空题:
(本大题共5小题,每小题2分,共10分)
1.C语言中,唯一的三目运算符是表达式1?
表达式2:
表达式3,而是双目运算符。
2.函数的递归可分直接递归和间接递归,它由递推和回归两部分组成。
3.假设所有变量均为整型,则表达式(a=2,b=5,a++,b++,a+b)的值为367。
4.C语言提供了两个与地址相关的运算符分别是。
5.C语言数组的下标总是从0开始,不可以为负数;
构成数组各元素具有相同的变量。
三、程序分析题(本大题共4小题,前三小题每题4分,最后一小题8分,共20分)
1.以下程序的输出结果为a。
charc=z
printf(%c,c-25);
2.分析下列程序的运行结果
intk=4,m=1,p;
/*静态变量应用*/
p=fl1(k,m);
printf(%-10d,p);
fl1(a,b)
inta,b;
staticintm,i=2;
i*=m+2;
m=i+a+b;
return(m);
运行结果为:
949(9空格)。
3.通过指针变量给所指向的变量赋值。
请将编号①②空白处补充完整。
voidmain()
intint*p1,*p2,a,b;
①p1=
②p2=
scanf(%d%d,p1,p2);
printf(%d%d,a,b);
4.下列程序的作用是将一个数组中的数据逆序输出,请将编号①②③④空白处补充完整。
intn[10];
inti,j,tmp;
printf(please10numbers:
\n)
ii++)scanf(%d,n[i]);
printf(Originnumber:
\n);
for①(i=9;
ii--);
printf(%d,n[i]);
i=0;
j=9;
while②;
tmp=n[i];
n[i]=n[j];
n[j]=tmp;
③;
④;
printf(Reversingbumbers:
while(i10)
i++;
四、按要求编写程序(本大题共2小题,每小10题分,共20分)
1.利用冒泡法对60个学生的成绩进行排序。
2.编和求,公式如下:
其中arctan(x)用如下形式的级数计算:
直到某级数绝对值不小于为止。
(提示:
和x均为double型)
1.(从低到高的排序)
voidfun(inta[],intn);
voidmain(void)
inta[60],i;
for(i=0;
ii++)
scanf(%d,a[i]);
fun(a,60);
voidfun(inta[],intn)
inti,j,t;
i
for(j=0;
j
if(a[j]a[j+1])
t=a[j];
a[j]=a[j+1];
a[j+1]=t;
printf(%d,a[i]);
printf(\n
2.(网上找的不确定)
voidmain()
intx,y;
longi,m=0;
doubled,r=32767;
floatpi,n=5000000;
srand()(time(0));
i
x=rand()();
y=rand()();
d=sqrt(x*x+y*y);
if(d
m=m+1;
printf(m=%d\n,m);
pi=4*m/n;
printf(pi=%f\n,pi);
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 计算机 语言 笔试 题目 答案
![提示](https://static.bdocx.com/images/bang_tan.gif)