安徽省二级C语言程序设计笔试样题.docx
《安徽省二级C语言程序设计笔试样题.docx》由会员分享,可在线阅读,更多相关《安徽省二级C语言程序设计笔试样题.docx(18页珍藏版)》请在冰点文库上搜索。
![安徽省二级C语言程序设计笔试样题.docx](https://file1.bingdoc.com/fileroot1/2023-6/17/501879fd-d9d5-4a2e-85fb-74b60a4ef4c3/501879fd-d9d5-4a2e-85fb-74b60a4ef4c31.gif)
安徽省二级C语言程序设计笔试样题
第1套C语言程序设计笔试样题
一单项选取题(每题1分,共40分)
1.某微型计算机型号规格标有PentiuШ600字样,其中PentiuШ是指__C____
A.厂家名称B.机器名称C.CPU型号D.显示屏名称
2.当前微型机上普通使用光驱及光盘,它采用是__C____
A.超导技术B.激光技术C.集成电路技术D.调频技术
3.在下列一组数中,最小数为__C_____
A.(11011101)2B.(125)10C.(A7)16D.(157)8
4.Windows98中,“回收站”是__B___
A.内存中某些空间B.硬盘中某些空间
C.软盘中某些空间D.某些空间中高速缓存
5.在“我电脑”窗口中变化一种文献或文献夹名称,可以采用办法是:
先选用该文献夹或文献,再用鼠标左键_____
A.单击该文献夹或文献名称B.单击该文献夹或文献图标
C.双击该文献夹或文献名称D.双击该文献夹或文献图标
6.Windows98文献夹组织构造是一种_B____
A.表格构造B.树形构造C.网状构造D.线性构造
7.以太网(Ethernet)拓扑构造是_B____
A.环形B.星形C.总线形D.树形
8.在因特网(Internet)中,电子公示板简称为_B_____
A.E-mailB.BBSC.WWWD.FTP
9.在多媒体个人计算机中,声卡作用是_D_____
A.用来播放声音B.连接主机和声音播放设备
C.用来录入声音D.连接主机和声音播放与录入设备
10.“CIH”是一种计算机病毒,它重要是破坏_D___,导致计算机系统瘫痪。
A.CPUB.软盘C.BOOT(程序)D.BIOS
11.设x,y,z和k都是int型变量,则执行表达式:
x=(y=4,z=16,k=32)后,x值为_C___
A.4B.16C.32D.52
12.设有如下变量定义
inti=8,k,a,b;
unsignedlongw=5;
doublex=1.42,y=5.2;
则如下符合C语言表达式是C_____
A.a+=a-=(b=4)*(a=3)B.x%(-3)C.a=a*3=2D.y=float(i)
13.假定有如下变量定义:
intk=7,x=12;
则能使值为3表达式是B_____
A.x%=(k%=5)B.x%=(k-4%5)C.x%=k-k%5D.(x%=k)-(k%=5)
14.如下论述对的是___D__
A.输入量可以是一种实型常量,
例如:
scanf("%f",3.5);
B.只有格式控制,没有输入项,也能对的输入数据到内存,
例如:
scanf("a=%d,b=%df");
C.当输入实型数据时,格式控制某些可以规定小数点后位数,
例如:
scanf(“%4.2f”,&f);
D.当输入数据时,必要指明变量地址,
例如:
scanf(“%f”,&f);
15.设x和y均为int型变量,则语句:
x+=y;y=x-y;x-=y;功能是_D_
A.把x和y按从大到小排列B.把x和y按从小到大排列
C.无拟定成果D.互换x和y中值
16.如下程序输出成果是__D___
main()
{
inta=12,b=12;
printf(“%d,%d\n”--a,++b);
}
A.1010B.1212C.1110D.1113
17.如下程序运营后,输出成果是__C____
main()
{char*s="abcd";
s+=2;
printf("%1d\n",s)
}
A.cdeB.字符cASCII码C.字符c地址D.出错
18.如下程序输出成果是_C___
main()
{intm=5;
if(m++>5)printf("%d\n",m);
elseprintf("%d\n",m--)
}
A.7B.6C.5D.4
19.当a=1,b=3,c=5,d=4时,执行下面一段程序后,x值为__B__
if(a
if(celseif(aif(belsex=3;
elsex=6;
elsex=7;
A.1B.2C.3D.6
20.在执行如下程序时,如果从键盘输入:
ABCdef<回车>,则输出为_B___
#include
{charch;
while((ch=getchar())!
='\n')
{if(ch>='A'&&ch<=’Z’)ch=ch+32;
elseif(ch>=’a’&&ch<=’z’)ch=ch-32
printf(“%c”,ch);
}
printf(“\n”);
}
A.ABCdefB.abcDEFC.abcD.DEF
21.下面能对的进行字符串赋值操作语句是__A__
A.chars[5]={“\ABCDE”}B.chars[5]={‘A’,’B’,’C’,’D’,’E’};
C.char*s;s={“ABCDEF”};D.char*s;scanf(“%s”,s);
22.当执行如下程序段时,描述对的选项是__A__
x=-1;
do{x=x*x;}while(!
x);
A.循环题将再执行一次B.循环题将执行两次
C.循环题将执行无限次D.系统提示有语法错误
23.执行如下程序后,输出成果是___D
main()
{inty=10;
do{y--;}while(--y);
printf(“%d\n”,y--);
}
A.-1B.1C.8D.0
24.在下列选项中,没有构成死循环程序是__C_
A.inti=100;B.for(;;);
while
(1)
{i=i&100+1;
if(i>100)break;}
C.intk=1000;D.ints=36;
do{++k;}while(k<=1000);while(s);--s;
25.执行语句:
for(i=1;i++<4;);后,变量i值是__C__
A.3B.4C.5D.不定
26.如下程序运营后,如果从键盘输入ABCDE<回车>,则输出成果为______
#include
#include
func(charstr[])
{intnum=0;
while(*(str+num)!
=’\0’)num++;
return(num);
}
main()
{charstr[10],*p=str;
gets(p);printf(“%d\n”,func(p));
}
A.8B.7C.6D.5
27.运营如下程序后,如果从键盘输入china<回车>,则输出成果为___
#include
main()
{intv1=0,v2=0;
charch;
while((ch=getchar())!
=’\n’)
switch(ch)
{case‘a’:
case’h’:
default:
v1++;
case’0’:
v2++;
}
printf(“%d,%d\n”,v1,v2);
}
A.2,0B.5,0C.5,5D.2,5
28.若如下程序所生成可执行文献名为fiel.exe,当打入如下命令执行该程序时,程序输出成果是_____
FILE1CHINABEIJINGSHANGHAI
main(intargc,char*argv[])
{while(argc-->0)
{++argv;printf(“%s”,*argv);}
}
A.CHINABEIJINGSHANGHAIB.FILE1CHINABEIJING
C.CBSD.FCB
29.下面程序运营成果是____
main()
{charch[7]={“65ab21”};
inti,s=0;
for(i=0;ch[i]>=’0’&&ch[i]<=’9’;i+=2)
s=10*s+ch[i]-‘0’;
printf(“%d\n”,s);
}
A.12ab56B.6521C.6D.62
30.运营下面程序,如果从键盘输入:
ab<回车>
c<回车>
def<回车>
则输出成果为____
#include
#defineN6
main()
{charc[N];
inti=0;
for(;ifor(i=0;iprintf(“\n”);
}
A.aB.aC.abD.abcdef
bbc
dcd
ed
f
31.如下程序运营后,输出成果是_____
#include
ss(char*s)
{char*p=s;
while(*p)p++;
return(p-s);
}
main()
{char*a=“abded”;
inti;
i=ss(a);
printf(“%d\n”,i);
}
A.8B.7C.6D.5
32.如下程序运营后输出成果是____
#include
func(inta,intb)
{staticintm=0,i=2;
i+=m+1;
m=i+a+b;
return(m);
}
main()
{intk=4,m=1,p;
p=func(k,m);printf(“%d”,p);
p=func(k,m);printf(“%d”,p);
}
A.8,15B.8,16C.8,17D.8,8
33.如下程序运营后,输出成果是____
#include
#definePT5.5
#defineS(x)PT*x*x
main()
{inta=1,b=2;
printf(“%4.1f\n”,S(a+b));
}
A.49.5B.9.5C.22.0D.45.0
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));
printf(“\n”);
}
A.ABCDEFGB.CDGC.abcdefghD.abCDefGh
35.如下程序执行后,a值是_____.
main()
{inta,k=4,m=6,*p1=&k,*p2=&m;
a=p1==&m;
printf(“%d,\n”,a);
}
A.4B.1C.0D运营时出错,a无定值
36.如下程序运营后,输出成果是______
intd=1;
fun(intp)
{intd=5;
d+=p++;
printf(“%d”,d);
}
main()
{inta=3;
fun(a);
d+=a++;
printf(“%d”,d);
}
A.84B.99C.95D.44
37.如下程序运营后,输出成果是____
main()
{charch[2][5]={“693”,”825”},*p[2];
inti,j,s=0;
for(i=0;i<2;i++)p[i]=ch[i];
for(i=0;i<2;i++)
for(j=0;p[i][j]>=’0’&&p[i][j]<=’9’;j+=2)
s=10*s+p[i][j]-‘0’;
printf(“%d\n”,s);
}
A.6385B.22C.33D.693825
38.若有如下程序段,输出成果为_____
int**pp,*p,a=10;
p=&a;pp=&p;
printf(“%d”,**pp);
A.10B.p地址C.a地址D.pp地址
39.若已建立如下链表构造,指针p,q分别指向图中所示结点,则不能将q所指结点插入到链表末尾一组语句为_____
A.q->next=NULL;p=p->next;p->next=q;
B.p=p->next;q->next=p->next;p->next=q;
C.p=p->next;q->next=p;p->next=q;
D.p=(*p).next;(*q).next=(*p).next;(*p).next=q;
40.以读写方式打开一种已有文献filel,下面关于fopen函数对的调用方式为_____
A.FILE*fp;
fp=fopen(“filel”,”r”);
B.FILE*fp;
fp=fopen(“filel”,”r+”);
C.FILE*fp;
fp=fopen(“filel”,”rb”);
D.FILE*fp;
fp=fopen(“filel”,”rb+”);
二.填空题
1.设有变量定义:
inta=5,b=4;
则表达式(--a>b++)?
--a;b++值为____
2.某C编译系统规定,int型数据占2字节,则定义:
structnode
{intx;
longy;
}z;
后,sizeof(z)=_____
3.设有变量定义:
inta[10]={1,2,3,4,5,6,7};
int*p=a;
则表达式*++p值为_____
4.下列程序用于计算
s=1+x+x2/2!
+x3/3!
….+xi/i!
+….近似值。
#include
main()
{inti=0;
floats,t=1.0,x;
scanf(“%1f”,&x);
s=t=1.0;
while(fabs(t)>1.0e-5)
{i++;
t=____;
s+=t;
}
printf(“s=%f\n”,s);
}
5.下面程序用于将输入三个数从小到大排序输出。
voidmain()
{inta,b,c,x,y;
scanf(“%d%d%d”,&a,&b,&c);
if(_____)
{x=a;y=b;}
else{x=b;y=a;}
if(______)
x=c;
else
if(y>c)
y=c;
printf(“%d,%d,%d”,y,a+b+c-x-y,x);}
6.如下程序将输入一行字符串中字母所有变成大写输出。
#include
main()
{charstr[255];
inti=0;
while((str[i++]=getchar())!
=’\n’);
str[i-1]=’\0’;
for(i=0;str[i]!
=’\0’;i++)
if(str[i]>=’a’&&str[i]<=’z’)
str[i]=(________);
printf(“\n%s\n”,str);
}
7.程序运营后,输出4,16,256。
test()
{_______x=2;
x=x*x;
printf(“%d”,x);
}
main()
{test();
test();
test();}
8.函数trans()实现对给定十进制整数d(d>=0),译成s(2<=s<=16)进制表达形式字符串。
chartrans(unsignedintd,ints)
{chardigits[]=”ABCDEF”;
charbuf[17];
inti=16;
if(s<2||s>16)return(0);
buf[i]=’\0’;
do
{
buf[--i]=digits[d%s];
();
}while();
printf(“%s”,&buf[i]);
}
main()
{ints,d;
scanf(“%d,%d”,&s,&d);
printf(“%4d=”,d);
trans(d,s);
printf(“%d\n”,s);
}
三.阅读下列程序,写出成果;
[程序1]
main()
{inti,x;
scanf(“%d”,&x);
for(i=2;x%i;i++);
printf(“%d\n”,i==x);
}
运营后,从键盘输入3,运营成果为:
();
从键盘输入4,运营成果为:
();
[程序2]
main()
{inti;
for(i=1;i<6;i++)
{if(i%2)printf(“$”);
elsecontinue;
printf(“#”);
}
printf(“&\n”);
}
运营成果为:
()
[程序3]
main()
{intn[3],i,j,k;
for(i=0;i<3;i++)n[i]=0;
k=2;
for(i=0;ifor(j=0;j<=k;j++)
n[j]=n[i]+1;
printf(“%d\n”,n[k]);
}
运营成果为:
()
[程序4]
longf(intn)
{longs;
if((n==1)||(n==2))
s=2;
elses=n+f(n-1);
returns;
}
main()
{longx;
x=f(4);
printf(“%d\n”,x);}
运营成果为:
()
[程序5]
#include
main()
{intm,n,i;
m=5;n=7;i=1;
do
{if((i%m==0)&&(i%n==0))
{printf(“%d\n”,i);
break;
}
i++;
}while(i!
=0);
}
运营成果为:
()
四.编程题
1、找出1~100之间所有“同构数”。
所谓“同构数”是指一种数,她出当前她平方数右端。
如6平方是36,6就是同构数。
2、编程实现二维数组()转置(即行列互换)。
3、按下述递归定义编写一种计算幂级数递归函数。
xn