广东工业大学C语言考研历年真题及答案文档格式.docx
《广东工业大学C语言考研历年真题及答案文档格式.docx》由会员分享,可在线阅读,更多相关《广东工业大学C语言考研历年真题及答案文档格式.docx(24页珍藏版)》请在冰点文库上搜索。
printf(“%d\n”,a[i]);
9、在C语言中,共用体变量中的所有成员占有同一个存储空间。
10、下列语句是否正确?
#definePI3.1415926;
area=PI*r*r;
对于试题的一些补充说明:
1、试题每年我都会进行整理分析(收录当年的试题),给出严格严谨的答案;
2、试题的答案除特别简单的题目,一般都会上机测试,保证答案的正确性(当然,我的答案不一定都对,青出于蓝而胜于蓝,我相信后继者会更加优秀,欢迎批评指正);
3、本套试题的原始试卷中存在出错的题目,没有正确答案,我一并进行了修改,但仍保留了原题目;
4、该套试题已经经过两代考研人(2014年)的验证和修改修订,以下是部分使用者的评价:
2001年攻读硕士学位研究生入学考试试题
(注:
试卷封面需填写自己的准考证号,答完后连同试题一并交回)
1、一个C语言程序可以包含任意多个不同名的函数,C程序总是从第一个
出现的函数开始执行。
2、putchar函数可以向终端输出一个字符或者字符型变量值。
3、表达式‘A’<
=ch<
=‘Z’可以判断char型变量ch是否为大写字母。
4、C语言中,do-while循环和while循环的主要区别是do-while循环
至少无条件执行一次。
5、对于某个具体的结构体类型,成员的数量必须固定,各个成员的类型必须相同。
6、下列语句都是合法的赋值语句。
k=int(a+b);
a=b=58
--i;
7、下列运算符的优先级从高到低依次排列为:
!
&
&
+<
=
8、下面程序的运行结果为8,-1()
#include<
stdio.h>
{
inti,b,k=0;
for(i=1;
=5;
i++)
b=i%2;
while(b-->
=0)k++;
printf(“%d,%d”,k,b);
9、下列语句均为C语言控制语句:
if()…else…;
for()……;
continue;
goto;
return;
广东工业大学
2002年攻读硕士学位研究生入学考试专业课试题
C语言程序设计(机)科目编号:
404
机械电子工程、机械设计及理论
试题封面需填写自己的准考证号,答完后连同试题一并交回)
)(每问1分,共10分)
1、在C语言程序中,要调用的函数必须在main()函数中定义。
2、在C语言程序中,所有的运算符都采用自左至右的结合方式。
3、可以在赋值语句中通过赋值运算符“=”对字符数组整体赋值。
4、定义char*aa[2]={“abcd”,“ABCD”},则aa数组的两个元素中各自存放了
字符‘a’,‘A’的地址。
5、已知inta,*p=&
a;
输入语句scanf(“%d”,p);
是不正确的。
6、用数组名作为函数调用时的实参,则实际上传递给形参的是数组的首地址。
7、C语言结构体类型变量在程序执行期间,所有成员一直驻留在内存中。
8、不能把共用体作为函数参数,也不可以使用指向共用体的指针。
9、从作用域的角度看,静态外部变量和外部变量是一样的。
10、C语言中对文件的存取是以字符为单位的。
二、回答下列各题(每题4分,共20分)
1、C语言中用于循环控制的语句有哪些?
试举例说明。
2、C语言一共有32个关键字(保留标志符),请写出与数据定义有关的几种关键字。
3、C语言提供了哪几种逻辑运算?
在C语言中,系统如何判断一个逻辑量的“真”
或“假”?
4、请分别从变量的作用域和变量的存在时间两个方面来对变量的数据存储类别进行分析
和说明。
5、在计算机程序设计中,一般用三种基本结构作为表示一个良好算法的基本单元。
请写
出这三种基本结构的名称,并分别用简单的流程图来表示。
三、填空题(每空1分,共20分)
1、C语言允许直接访问物理地址,能进行位(bit)运算,能实现语言的大部分功能,
可以直接对硬件进行操作。
2、计算机程序包括数据描述和数据操作方面的内容。
其中数据描述主要定义和数
据初值。
C语言中的语句可以分为、函数调用语句、、空语句和
2003年攻读硕士学位研究生入学考试专业课试题
1、long是合法的C变量名。
2、变量都可以进行自增或自减运算。
3、unsignedint表示无符号基本整型。
4、int*p[8]表示p为指向整型数组的指针变量。
5、C语言中,关系运算符的优先级高于逻辑运算符。
6、C语言switch(表达式)语句中,表达式的类型必须为常量表达式。
7、函数形参属于动态存储变量。
8、定义一个函数时,形参的类型说明可以放在函数体内。
9、所有C运算符都是从左向右进行求值。
10、设intx=6,y=5;
则表达式(x+y)++的值为12。
二、回答下列各题(每题5分,共30分)
1、C语言中有哪几种关系运算符,并比较它们的优先级。
2、C语言中常用的循环结构有哪些,试比较它们的特点。
3、对三个实数求最大数,函数如下,请指出函数的错误,并改正。
floatmaxx(floatx,floaty,floatz)
{
floatmax=x;
if(z>
y)
x)
max=z;
elseif(y>
max=y;
return(max);
4、阅读下列程序,并给出程序的输出结果。
main()
广东工业大学
2005年攻读硕士学位研究生入学考试专业课试题
考试科目(代码)名称:
(403)C语言程序设计满分150分
使用专业:
机械设计制造及其自动化、机械电子工程、机械设计及理论、
信号与信息处理
一、选择题(每题4分,共60分)
1、以下程序运行后,输出结果是()。
#include<
#definePT5.5
#defineS(x)PT*x*x
{inta=1,b=2;
printf(“%4.1f\n”,S(a+b));
A.49.5B.9.5C.22.0D.45.0
2、若已定义inta[]={0,1,2,3,4,5,6,7,8,9},*p=a,i;
其中0<
=i<
=9,则对a数组元素不正
确的引用的是()。
A.a[p+a]B.*(&
a[i])C.p[i]D.a[0]
3、以下程序的输出结果是()。
string.h>
{charstr[12]={‘s’,‘t’,‘r’,‘i’,‘n’,‘g’};
printf(“%d\n”,strlen(str));
A.6B.7C.11D.12
4、设x,y,z和k都是int型变量,则执行表达式:
x=(y=4,z=16,k=32)后,x的值为()。
A.4B.16C.32D.52
5、执行以下程序段后,m的值为()。
inta[2][3]={{1,2,3},{4,5,6}};
intm*p;
2006年攻读硕士学位研究生入学考试专业课试题
信号与信息处理
一、选择题(15×
4=60分)
1、有如下程序:
{charstr[]=“I_love_this_game”,*p;
p=&
str[0];
printf(“%d,%d,%d\n”,sizeof(str),sizeof(p),strlen(p));
}
则程序运行后输出的结果为()。
A.2,2,16B.17,2,16C.16,2,16D.16,16,16
2、有以下程序
#definefun(x)x*x
{intResult;
Result=fun(9+9)/fun(3+3);
printf(“%d\n”,Result);
}执行后的结果为()。
A.105B.36C.324D.156
3、有如下程序:
mem.h>
char*GetString(void)
{charp[]=“Hello!
Everybody!
”;
returnp;
{char*str=NULL;
str=GetString();
printf(str);
}程序运行后的结果为()。
A.NULLB.Hello!
Everybody!
C.Hello!
D.程序崩溃
2007年攻读硕士学位研究生入学考试专业课试题
车辆工程
一、判断题(每题2分,共20分)
1、在C语言中,main函数必须位于程序前面。
2、C程序的每行只能写一条语句。
3、若果i的原值为5,则执行语句j=i++;
之后,j的值等于6。
4、C语言本身没有输入输出语句。
5、一个C源程序可以由一个或多个函数组成。
6、用typedef可以增加新类型。
7、若char*a[2]={“ab”,“AB”},则a数组的两个元素中各自存放了字符
‘a’和‘A’的地址。
8、同一个函数可以被一个或多个函数调用任意多次。
9、函数的参数不可以是指针类型。
10、将一个字符串从一个函数传递到另一个函数,可以用地址传递的方法。
二、简答题(每题6分,共30分)
1、试说明下列表达是否正确?
若正确,表达式的值是什么?
2、C语言中的‘d’和“d”有什么区别?
3、C语言中的关系运算符有哪些,并说明它们的优先级。
4、指出下列标识符那些是非法的。
(1)a_Char
(2)b22c(3)286pc(4)-am
(5)_7b(6)ab#(7)Max_1(8)__Star
(9)*itm(10)To-2(11)for(12)“tt”
5、什么是指针变量?
如何定义?
它在初始化时应该注意什么?
三、填空题(每空1分,共30分)
1、一个C程序的执行是从本程序的函数开始执行,到函数结束。
2、如果a的初值是12,则执行语句a-=a+=a*a;
后,a的值为。
3、已知整型变量a的初值为5,b的初值为3,则!
a&
b++的值为,a||b+4&
a*b
的值为,a!
=b>
2<
=a+1的值为。
2009年攻读硕士学位研究生入学考试专业课试题
(803)C语言程序设计(机电学院)满分150分
一、填空题(每题2分,共20分)
1、C程序的基本单位是子程序。
()
2、0x5FE是不合法的整型常量。
3、若有以下类型说明语句:
charw;
intx;
floaty;
doublez;
则表达式w*x+z-y的结果数据类型是char。
4、default不是C语言提供的合法关键字。
5、scanf(“a=b=%d”,&
a,&
b)是正确的输入语句。
6、在C语言中,“dowhile的循环中,当条件为非0时将结束循环”说法是正确的。
7、if(x>
y&
!
=y)是不正确的if语句形式。
8、表达式!
x||a==b等效于(!
x)||(a==b)。
9、执行语句“x=(a=3,b=a--)”后,x,a,b的值依次为3,3,2。
10、有定义语句“inta[][3]={1,2,3,4,5,6};
”,则a[1][0]的值是2。
二、简答题(每题6分,共30分)
1、试说明下列表达式是否正确?
21/221/2.021%221.0%24>
54&
6>
5
2、C语言中‘d’和“d”有何区别?
4、指出下列标识符中哪些是非法的
(1)a_Char
(2)b22c(3)286pc(4)-am
(5)_7b(6)ab#(7)Max_1(8)__Star
(9)*itm(10)To-2(11)for(12)“tt”
它在初始化时应注意什么?
三、填空题(每题1分,共30分)
(下面每空1分)
1、C语言的三种主要的循环控制语句是(除goto语句外):
1、2、
3、。
2、变量的存贮类型有以下四种:
(1)
(2)(3)(4)。
3、对以下说明语句的正确理解是inta[10]={6,7,8,9,5};
将5个初值依次赋a[]、a[]、a[]、a[]、a[]。
(下面每空2分)
4、设a=3,b=7,求下列表达式的值。
2010年攻读硕士学位研究生入学考试专业课试题(A卷)
(803)C语言程序设计满分150分
一、判断题(对的打√,错的打×
,每小题2分,共30分)
1、在C语言中,常量和变量都有数据类型。
2、C语言的运算符只有单目运算符和双目运算符两种。
3、若变量已正确定义,表达式x+y=z符合C语言语法。
4、C编辑器可以找出C源程序中所有的语法错误和逻辑错误。
5、表达式3*5/2和表达式3/2*5等价。
6、表达式m=n++的求解顺序是先计算m=n,再计算n=n++。
7、C语言对大小写不敏感。
8、若表达式sizeof(unsigned)的值为2,则unsigned类型数据能表示
的最大整数为216-1。
9、break语句只能用于循环结构中。
10、while语句先判断循环条件,所以循环体有可能一次也不执行。
二、单项选择题(每小题2分,共30分)
1、当c的值不为0时,在下列选项中能正确将c的值付给变量a、b的是()。
A.c=b=aB.(a=c)||(b=c)C.(a=c)&
(b=c)D.a=c=b
2、在C语言中,不正确的int类型的常数是()。
A.‘C’B.0C.037D.0xA5
3、在C语言的类型中,int,char,short等类型的长度是()。
A.固定的B.由用户自己定义C.任意的D.与机器字长有关
4、设a=3,b=2,c=3,d=4,则表达式a<
b?
a:
c<
d?
d的结果为()。
A.3B.2C.4D.1
5、设有如下定义:
intx=1,y=-1;
则语句:
printf(“%d\n”,(x--&
y++));
的输出
结果是()。
A.1B.0C.-1D.2
6、下列语句中符合C语言语法的赋值语句是()。
2011年攻读硕士学位研究生入学考试专业课试题(A卷)
一、填空题(共30分)
1、C语言中三种主要的循环控制语句(除goto语句外)、、。
2、变量的储存类型有以下几种:
、、、。
3、在C语言中,逻辑“真”用表示。
4、设x为整型变量,值为1,则表达式(x&
1)==(x%2)的值为。
5、int*p,a;
则语句p=&
中的运算符&
是符号。
6、设x=15,n=12;
则表达式x%=(n+=3)运算后,x的值为。
7、设inta=7,b=9,t;
执行完表达式t=(a>
b)?
b后,t的值是。
8、设有以下宏定义:
#definePR80
#definePPPR+403
inta;
则执行赋值语句a=PP+PR;
a的值是。
9、用C语言描述下列命题:
已知a为整数,a不能被13和31整除:
。
10、以下函数的功能是:
求x的y次方,请填空。
doublefun(doublex,inty)
{inti;
for(i=1,z=x;
y;
i++)z=z*;
returnz;
11、请写出下列程序的输出结果。
如有空格,加空格以示区别。
voidmain()
{inta=2008,b=8;
floatx=361.568,y=-123.456;
charilc[]={“IloveChina!
”};
printf(“%2d,%2d\n”,a,b);
/*结果1:
*/
printf(“%8.3f-%8.3f=%8.2f\n”,x,y,x-y);
/*结果2:
printf(“%8s\n”,ilc);
/*结果3:
12、若有如下的结构体说明:
structSTRU
{inta,b;
charc;
doubled;
structSTRU*p1,*p2;
};
请填空,以完成对t数组的定义,t数组的每个元素为该结构体类型。
t[20]。
2012年攻读硕士学位研究生入学考试专业课试题(A卷)
1、用C语言描述下列命题
1)已知a为整数,a不能被51和13整除;
2)c是一个大写字母;
2、设a=2,b=5,表达式b*=(b%=a)的值为。
3、C语言的三种基本程序结构是、、。
4、设floatx=2.5,y=8.3;
inta=5;
表达式x+y-a%3*(int)(x+y)%3/7的值用标准输出
函数默认输出到屏幕上的显示为。
5、二维数组a有m列,则在a[i][j]之前的元素个数为:
6、C语言中用表示逻辑值“假”,用表示逻辑值“真”。
7、设inta=10,表达式a-=a*=a运算后a的值为。
二、单项选择题(每小题2分,共40分)
1、在C语言中,下列类型不属于简单数据类型的是()。
A.整型B.字符型C.实行D.数组类型
2、一个C程序的执行是从()。
A.本程序文件的第一个函数开始,到本程序文件的最后一个函数结束;
B.本程序的main()函数开始,到本程序文件的最后一个函数结束;
C.本程序的main()函数开始,在main()函数中结束;
D.本程序文件的第一个函数开始,到本程序main()函数结束。
3、在C语言中,语句和数据定义是用()作为结束标记的。
A.。
B.,C.;
D.{}
4、结构化程序设计不应该使用()。
A.自顶向下,逐步细化的方法;
B.灵活、简洁的goto结构;
C.模块化设计;
D.三种基本结构:
顺序结构、选择结构、循环结构的编码方法
5、break语句的正确使用方法是()。
A.无论在任何情况下,都中断程序的执行,退出到系统的下一层;
B.在多重循环中,只能退出最靠近的那一层循环语句;
2013年攻读硕士学位研究生入学考试专业课试题
一、填空题(每空2分,共20分)
1、已知能被4整除而不能被100整除的或者能被400整除的年份是闰年,则判断某一年year
(已定义成字符型变量)是否是闰年的表达式为:
;
表示字符c是一个字母
(包括大写字母和小写字母)的表达式为:
2、设inta=2,b=2,c=3;
写出下面逻辑表达式的值:
(a>
b)&
c||0。
3、设有宏定义:
#defineS(a,b)a*b,则在程序中赋值语句:
area=S(5+6,12);
将展开为:
4、设floatx=2.5,y=4.7;
inta=7;
则表达式x+a%3*(int)(x+y)%2/4的值为。
5、二维数组a有n行m列,则在a[i][j]之后的元素个数为:
6、函数的参数为char*类型时,形参与实参结合的传递方式为;
函数的实参为常
量时,形参与实参结合的传递方式为。
7、若有以下定义和语句,则sizeof(a)的值是,而sizeof(b)的值是。
struc