计算机基础与程序设计试题Word文档下载推荐.docx
- 文档编号:22338215
- 上传时间:2023-02-03
- 格式:DOCX
- 页数:91
- 大小:87.22KB
计算机基础与程序设计试题Word文档下载推荐.docx
《计算机基础与程序设计试题Word文档下载推荐.docx》由会员分享,可在线阅读,更多相关《计算机基础与程序设计试题Word文档下载推荐.docx(91页珍藏版)》请在冰豆网上搜索。
if(i<
=0)printf(″****\n″);
elseprintf(″%%%%\n″);
A.****B.%%%%C.%%%%cD.****c
9.下面程序段的循环次数是( )
intk=2;
while(k==0)printf(″%d″,k);
k--;
printf(″\n″);
A.0次B.1次C.2次D.无限次
10.下面程序段的输出结果是( )
a=100;
while(a>
120);
a=a+1;
printf(″%d″,a);
A.100B.101C.120D.121
11.下面程序执行后,i的值是( )
main()
{inta[5]={1,2,3,4,5},i=2
printf(″%d″,a[i++]);
A.1B.2C.3D.4
12.下面程序的输出结果是( )
{inti,x[3][3]={9,8,7,6,5,4,3,2,1};
for(i=0;
i<
4;
i+=2)printf(″%d″,x[i][1]);
}
A.51B.52C.82D.93
13.在C程序中,若用基本数据类型所定义的变量调用函数,正确的说法是( )
A.由系统自动指定对应实参和形参是否共用存储单元
B.对应实参和形参各占一个独立的存储单元
C.对应实参和形参共用一个存储单元
D.可以由用户指定对应实参和形参是否共用存储单元
14.下面叙述中不正确的是( )
A.不同函数中可以使用相同名字的变量B.形式参数是局部变量
C.在一个函数内部定义的变量只能在本函数范围内有效
D.在一个函数内部的复合语句中定义的变量在本函数范围内有效
15.设有语句inta[4][10],*p=*a;
则下面表达式中属于地址表达式的是( )
A.a[1][2]B.a[1]C.*(p+1*10+2)D.*(a[1]+2)
16.下面定义不正确的是( )
A.structstarB.structstar
{{
intidintid;
char*name;
char*name;
}star1={1001,″Moon″};
};
star1={1001,″Moon″};
C.structD.structstar
intid;
intid;
}star1={123,″Sun″};
}star1;
17.下面各个位运算符的优先级从左到右依次升高的是( )
A.|^&
>
>
B.^>
&
~C.<
<
|^~D.~|&
18.设有说明:
intu=1,v=14;
表达式u+v>
2的值是( )
A.0B.3C.5D.7
19.如果将文件指针fp指向文件末尾,正确的语句是( )
A.feof(fp);
B.rewind(fp);
C.fseek(fp,0L,0);
D.fseek(fp,0L,2);
20.下面程序段中,不能完成的功能是( )
FILE*fp;
charch=′v′;
fp=fopen(″boy″,″rb+″);
fputc(ch,fp);
A.建立文件指针fp与文件boy的联系B.从boy文件中读取一个字符
C.向boy文件中写一个字符D.打开名为boy的二进制文件
二、多项选择题(本大题共5小题,每小题2分,共10分)
21.总线是连接微机CPU、内存和外设之间传送信号的公共通道,微机的总线包括有( )
A.电源线B.数据线C.地址线D.控制线E.网络线
22.若定义charc[11];
可将字符串″Iamaboy″赋给数组c,下面正确的选项有( )
A.c=″Iamaboy″;
B.getchar(c);
C.gets(c);
D.scanf(″%s″,c);
E.for(i=0;
10;
i++)scanf(″%c″,&
c[i];
c[10])=’\0’;
23.若有如下定义和语句,则能正确表示数组a首元素地址的表达式有( )
inta[10],*p;
p=a;
A.a[0]B.aC.p+1D.pE.*p
24.设有说明:
intx=1,y=3;
下面表达式的值为2的有( )
A.y&
~xB.x^yC.x|yD.y|x>
1E.x<
1|y>
2
25.在C语言中,关于符号FILE下面说法正确的有( )
A.FILE是C的关键字B.FILE表示一种关于文件参数的结构体类型
C.FILE表示一种关于文件参数的结构体变量D.FILE*可以用来说明文件指针
E.文件指针指向的变量的数据类型是FILE
三、简答题(本大题共4小题,每小题4分,共16分)
26.C语言中如何表示“真”和“假”?
系统如何判断一个量的“真”和“假”?
27.什么是“直接递归调用”?
什么是“间接递归调用”?
28.判断下面两程序段正确与否,并说明原因。
(1)charstr[12];
str=″program″;
(2)char*str;
29.设有说明:
structlanguage{longspearer;
charcountry[20];
}chinese;
试写出对chinese的成员spearer和country分别赋值1250000000和”China”的C语句。
四、阅读分析题(本大题共6小题,每小题5分,共30分)
30.阅读下面程序,写出运行结果(已知A的ASCII码为65,a的ASCII码为97)。
#include″stdio.h″
{intk=100;
charm;
m=k;
putchar(m);
printf(″,%d,%c,%o,″k,m-32,m);
31.阅读下面程序,并回答问题:
{intx,y,z,c;
scanf(″%d%d%d″,&
x,&
y,&
z);
if(x<
z){c=y;
y=z;
z=c;
z){c=x;
x=z;
y){c=x;
x=y;
y=c;
printf(″%d,%d,%d″,x,y,z);
(1)若程序运行时,输入3、2和5,则输出结果是什么?
(2)写出程序所实现的功能。
32.阅读下面程序,并回答问题:
{intm,n;
m=65;
n=14;
while(m!
=n)
{while(m>
n)m-=n;
while(n>
m)n-=m;
printf(″m=%d\n″,m);
(1)程序输出结果是多少?
(2)外循环执行完一次时,m和n的值分别是多少?
(3)将while(n>
语句删除后,程序运行情况如何?
33.阅读下面程序,并回答问题:
gcd(intx,inty)
{inttemp;
while(y){temp=x%y;
y=temp;
returnx;
{inta,b,y;
scanf(″%d,%d″,&
y=gcd(a,b);
printf(″最大公约数是:
%d″,y);
(1)gcd函数的返回值类型是什么?
(2)若将returnx写成returny会得到什么样的结果?
34.阅读下面程序,写出运行结果。
mian()
{char*str[]={″Pascal″,″CLanguage″,″Dbase″,″Cobol″};
intk;
for(k=0;
k<
k++)
printf(″%s\n″,str[k]);
35.阅读下面程序段,写出输出结果。
structnum
{floatf1;
intj;
}u={5.6,8},*p=&
u;
printf(″%.2f,%d\n″,u.f1,u.j);
printf(″%.2f,%d\n″,(*p).f1,p->
j);
五、程序设计题(本大题共2小题,每小题12分,共24分)
36.若有n行n列数组,试编写一程序,分别求出两条对角线元素之和。
(从键盘输入n*n个整型数,n≤20)
37.若在c:
\tclt路径下有一个名为zz.dat的文本文件,它包括10个按升序排列的整数,且每两个数之间用逗号隔开,现要插入一个整数使该序列仍保持升序,并把新序列写入到c:
\tclt路径下名为zzz.dat的文本文件中。
全国2006年7月计算机基础与程序设计试题
1.存储量1MB等于( )
A.23字节B.210字节C.220字节D.230字节
2.下面数据中最小数是( )
A.(0.1100)2B.(0.64)8C.(0.8125)10D.(0.D)16
3.在TurboC2.0中,寻求在线帮助可按键( )
A.F1B.F5C.F9D.F10
4.设有inta=3,b=-4,c=0;
表达式((a>
a:
b)&
&
c<
0的值是( )
A.-4B.0C.1D.3
5.若有下列程序段,欲使a=2、b=3,对应正确的数据输入方法是( )
inta,b;
scanf(″a=%d,b=%d″,&
a,&
A.2<
B.a=2b=3<
C.a=2,b=3<
D.2,3<
6.下面程序段的输出结果是( )
s=p=5;
p=--s;
p++;
++p;
printf(″%d\n″,p);
A.5B.6C.7D.8
7.关于if语句下面叙述正确的是( )
A.只有当if语句中表达式的值等于1时,才执行if的内嵌语句
B.只有当if语句中表达式的值为假时,才执行if的内嵌语句
C.只有当if语句中表达式的值等于0时,才执行if的内嵌语句
D.只要if语句中表达式的值非0时,就执行if的内嵌语句
8.若执行下面程序时,从键盘输入数据3和4,则程序的输出结果是( )
{inta,b,s;
scanf(″%d″,&
s=a;
if(a<
b)s=b
s=s*s;
printf(″%d″,s);
A.9B.12C.16D.25
9.若intx=0;
则while(x==0);
的循环次数是( )
A.0B.1C.2D.无限次
10.下面程序段的输出结果是( )
for(i=1;
i<
3;
i++)
{for(j=1;
j<
j++)
printf(″%d″,i+j);
A.2334B.234C.23D.2
3434
11.下面程序的输出结果是( )
mian()
{inta[5]={2,4,6,8,10},i;
i=2;
printf(″%d″,a[i++]);
A.2B.4C.6D.8
12.下面程序的输出结果是( )
{inta[3][4]={1,3,5,7,9,11,13,15,17,19,21,23};
inti,j,k=0;
for(i=0;
k=k+a[i][0];
printf(″%d\n″,k);
A.27B.33C.39D.45
13.以下正确的函数定义形式是( )
A.doublefun(intx,inty)B.doublefun(intx;
inty)
C.doublefun(intx,inty);
D.doublefun(intx,y);
14.关于变量以下不正确的说法是( )
A.在不同函数中可以使用相同名字的变量
B.形式参数是全局变量
C.在函数内定义的变量只在本函数范围内有效
D.在函数内的复合语句中定义的变量是局部变量
15.设有语句inta[4][10],*p=*a;
则下列表达式中不是地址表达式的是( )
A.&
a[1][2]B.a[3]C.*(p+1*10+2)D.p+1*10+2
16.下面关于结构体类型变量定义不正确的是( )
A.structscoreB.struct
{{
intmath;
intmath;
intChinese;
intChinese;
}Li,Wang;
C.structscoreD.structscore
};
Li,Wang;
structscoreLi,Wang;
17.下面各个运算符的优先级从左到右依次降低的是( )
|^B.~&
|C.>
^|D.~>
^
18.设有说明:
intu=1,v=2;
表达式:
u+v<
A.-1B.1C.9D.12
19.下面程序段中,不能完成的功能是( )
charch;
fp=fopen(″file1″,″rb+″);
ch=fgetc(fp);
A.建立文件指针fp与文件file1的联系B.从file1文件中读一个字符
C.向file1文件中写一个字符D.打开名为file1的二进制文件
20.在格式:
fread(stu,size,n,fp);
中,下面说法不正确的是( )
A.stu是内存中存放数据的首地址B.n表示读n次
C.size是一个数据块的字节数D.fp表示文件指针
21.微机系统的主机包含的部件有( )
A.输入设备B.存储器C.输出设备D.运算器E.控制器
22.下面各选项中,能正确进行字符串操作的有( )
A.chars[]={′a′,′b′,′c′,′d′,′e′,′\0′};
B.chars[10];
s=″abcde″;
C.chars[10];
strcpy(s,″abcde″)
D.chars[10];
getchar(s);
E.chars[10];
gets(s);
23.若有以下定义和语句,则能正确表示数组a首元素地址的表达式有( )
doublea[5],*p1
p1=a;
A.aB.p1+1C.*p1D.&
a[1]E.p1
24.设有说明:
intu=1,v=3,w=7;
下面表达式的值为3的有( )
A.w>
1&
v|uB.u&
v&
wC.u|v&
wD.w&
v<
1E.v^w|u
25.在C语言中,下面关于文件说法正确的有( )
A.按数据的组织形式,可分为文本文件和二进制文件B.文件只能是ASCII码文件
C.文件能用fopen()函数打开D.文件只能是二进制文件
E.对打开的文件可以进行读或写操作
26.简述C语言中标识符的命名规则并说明C语言中哪些名是用标识符来标识的?
27.变量有哪几种存储类别?
指明它们存储数据的区域。
28.定义char*str=″computer″;
是将字符串″computer″赋值给变量str,这种说法对吗?
为什么?
29.设有说明:
structflower{char*part;
char*color;
}mum;
char*part_of_flower[3]={″花″,″茎″,″叶″};
char*seven_color[7]={″赤″,″橙″,″黄″,″绿″,″青″,″蓝″,″紫″};
试写出将mum的成员part定义为″花″、成员color定义为″黄″的C语句。
30.阅读下面程序,写出运行结果。
{inta=789,x,y,z;
x=a/100;
y=a/10-10*x;
z=a-10*y-100*x
printf(″%d,%o,%x,%d″,x,y,z,100*z+10*y+x);
{inta,b,x,y;
scanf(″%d,%d″,&
x=a*a+b*b
if(x>
100)
{y=x/100;
printf(″%d″,y);
elseprintf(″%d″,a+b);
(1)若程序运行时,输入6和9,输出结果是什么?
(2)说明程序的功能。
{intu,v,a,b,t,r;
u=24;
v=16;
if(u>
v){t=u;
u=v;
v=t;
a=u;
b=v;
while((r=b%a)!
=0)
{b=a;
a=r;
printf(″a=%d\n″,a);
(1)程序输出结果是什么?
(2)该程序完成什么功能?
(3)若将while循环替换为do-while循环,请写出相应的程序段。
33.阅读下面程序,写出运行结果。
inta=5,b=5;
chang1()
{inta=4;
printf(″a1=%d,b1=%d\n″,a,b++);
chang2(inta,intb)
{a++;
b--;
{chang1();
a++,b++;
chang2(a,b);
printf(″a2=%d,b2=%d\n″,a,b);
34.阅读下面程序,写出运行结果。
#include<
stdio.h>
string.h>
{charp1,p2,srt[50]=″abc″,str1[50];
p1=″abc″;
p2=″abc″;
puts(str);
strcpy(str1,p1);
p1=str1;
printf(″%s\n″,strcat(p1,p2));
strcpy(str+1,p1);
printf(″%s\n″,str);
35.设有说明语句int*p;
请分析下面语句的含义:
p=(int*)malloc(sizeof(int));
free(p);
36.从键盘输入n*n个整型数(n≤20),组成n行n列数组,打印出其上三角数组。
37.用循环语句编程打印下列图案,并以ASCII码的形式写到c盘根目录下的1x.dat文件中。
(第一行的″$″在第20列)
$
$$$
$$$$$
$$$$$$$
全国2007年4月计算机基础与程序设计试题
1.I/O设备指的是计算机的( )
A.存储设备B.输入和输出设备C.控制器D.运算器
2.具有只读功能的内存储器是指( )
A.ROMB.RAMC.硬盘D.CD-ROM
3.十进制数-5在八位的微机内的存储形式是( )
A.00000101B.10000101C.11111010D.11111011
4.C语言源程序的基本单位是( )
A.过程B.函数C.子程序D.语句
5.设有intp,q;
以下不正确的语句是( )
A.p*=3;
B.p/=q;
C.p+=3;
D.p&
=q;
6.若有下列程序段,欲使a=2,b=3,对应正确的数据输入方法是(其中<
表示换行)( )
inta,b
scanf("%d%d",&
a,&
b);
A.2<
B.a=2b=3<
C.a=2,b=3<
D.2,3<
7.设有说明intx=0,y=2;
则执行if(x=0)y=1+x;
elsey=x-1;
后,变量y的值是( )
A.-1B.0C.1D.2
8.下面程序的输出结果是( )
{
intx=5,y;
if(x>
0)
y=1;
y=0;
if(x<
y=-1;
printf("%d",
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 计算机 基础 程序设计 试题