华南农业大学期末考试试卷 C语言考试合集

2020-02-21 23:24

装订线

华南农业大学期末考试试卷(A卷)

2010学年第1学期 考试科目: 程序设计(C语言) 考试类型:(闭卷)考试 考试时间: 120 分钟

学号 姓名 年级专业 题号 一 二 三 四 总分 得分 评阅人 机读 机读

考生注意:

1、答案必须分别写在“机读卡”和“答卷”上,写在试卷上不得分。

2、必须在机读卡和答卷上正确填写班级、学号、姓名等内容,否则没有考试成绩。 3、在机读卡的学生代号区只填写学号后10位。 4、考试结束,只需交“机读卡”和“答卷”,本试卷不用交。 得分

一、判断题(在机读卡上答题,每小题1分,共20分) 用2B型铅笔涂答题卡!!!按题号顺序,正确的判断涂黑“A”、错误的判断涂黑“B” 1、能正确表达逻辑关系“0

6、for循环语句先判断循环条件是否成立,然后再决定是否执行循环体。

7、goto语句和break语句都能实现使程序执行的流程从循环体内跳至循环体外。

8、C语言中,对数组定义大小时,若想在程序运行时改变大小,可用下面的语句段定义: int m;

scanf(\ int x[m];

9、定义数组时,数组下标可以是整型常量或正整型常量表达式。 10、一个函数中有且只能有一个return语句。

11、在一个函数中定义的静态局部变量不能被另一个函数引用。

12、用数组名作为函数调用时的实参,实际上传递给形参的是数组全部元素的值。

13、在C语言中,主函数可以调用任意一个函数,但是不能使用其它函数中定义的变量 14、C语言规定,程序中各函数之间既允许嵌套定义,也允许嵌套调用。

15、宏定义不是C语句,不必在行末加分号,若加了分号,则编译时会出现语法错误。 16、进行宏定义时,可以引用已经定义的宏名进行层层置换。 17、C语言的所有预编译语句均以#开头。

18、通过函数调用只能得到一个返回值,利用宏替换也只能得到一个结果。 19、被包含文件修改后,凡包含此文件的所有文件都要重新编译。

20、文件包含是不能嵌套的,即在一个被包含文件中不能包含另一个被包含文件。 得分

二、单项选择题(在机读卡上答题,每小题2分,共40分) 用2B型铅笔涂答题卡!!!按题号顺序,将答题卡上与选项对应的字母涂黑 21、在一个C程序中( )。

试题共10页-第1页

装订线

A)main函数出现在所有函数之前。C程序不一定都有main函数

B)main函数可以在任何地方出现。一个C程序必须有且仅有一个main函数 C)main函数必须出现在所有函数之后。一个C程序只能有一个main函数 D)main函数出现在固定位置。一个C程序可以有多个main函数 22、C语言中,下列叙述正确的是()。

A)既有逻辑类型也有构造类型 B)没有逻辑类型,但有构造类型 C)有逻辑类型,但没有构造类型 D)没有逻辑类型也没有构造类型 23、下列转义字符中,错误的是()

A)'\\0xa5' B)'\\031' C)'\\b' D)'\\\

24、已知梯形的上底为a,下底为b,高为h,用C语言写的正确的面积公式是()。A)1/2*(a+b)*h B)1.0/2*(a+b)*h C)1.0/2.0(a+b)h D)1.0\\2*a+b*h 25、已有定义char s1,s2;,下面正确的语句是()

A)scanf(\ B)scanf(\C)scanf(\ D)scanf(\26、运行下面的程序,正确的输出结果是() main()

{ float x=68.7563,y=-789.125; printf(\}

A)68.756303, -789.12 B)68.756303, -789.13 C)68.7563, -789.13 D)68.7563,-789.12 27、下列表达式中,值为0的表达式是()

A)3!=0 B)3!=3>4 C)3>4==0 D)6>5>4

28、设int a=3;,则表达式a<1&&--a>1的运算结果和a的值分别是() A)0和2 B)0和3 C)1和2 D)1和3 29、下列程序的运行结果是() main() { int i=0;

while(i-->0); printf(\}

A)10 B)0 C)10987654321 D)-1 30、下面程序的运行结果是() main() { int x=3;

do{ printf(\}

A)死循环 B)1 -2 C)10 D)1 31、下面程序的运行结果是() main()

{ int i=0,sum=0;

while(i++<6) sum+=i; printf(\}

A)15 B)16 C)21 D)不确定

试题共10页-第2页

32、定义如下变量和数组 int i;

int x[3][3]={1,2,3,4,5,6,7,8,9};

装订线 for(i=0;i<3;i++) printf(\则语句的输出结果是()。 A)1 5 9 B)1 4 7 C)3 5 7 D)3 6 9 33、不能把字符串Hello!赋给数组a的语句是()

A)char a[10]={'H','e','l','l','o','!'}; B)char a[10]; a=\C)char a[10]; strcpy(a,\ D)char a[10]=\34、若有int s[4]={1,2,3,4};,则s[s[0]+2*s[2]-s[3]]的值是() A)1 B)2 C)3 D)4 35、C语言程序的三种基本结构是()

A)嵌套结构、递归结构、循环结构 B)递归结构、循环机构、转移结构 C)顺序结构、选择结构、循环结构 D)循环结构、转移结构、顺序结构 36、若函数的调用形式如下: f((x1,x2,x3),(y1,y2))

则函数形参的个数是()。

A)2 B)3 C)4 D)5 37、执行下列程序后的输出结果是()。 int a=3,b=4;

void fun(int x1,int x2) {

printf(\}

main()

{ int a=5,b=6; fun(a,b); }

A)3,4 B)11,1 C)11,4 D)11,6 38、以下函数值的类型是() fun(float x) { float y; y=3*x-4; return(y); }

A)不确定 B)float C)int D)void 39、C编译系统对文件包含命令#include\的处理通常是()。 A)编译处理之前 B)编译处理过程之中 C)程序连接时 D)程序执行的开始

40、设有以下宏定义,则执行语句x=2*(N+Y(5+1));后,x(设x为整型)的值是()#define N 3

#define Y(n) ((N+1)*n)

A)42 B)48 C)54 D)出错 得分

试题共10页-第3页

装订线

三、阅读程序填空题(在答卷上答题,每空1分,共20分)

1、下列程序的主要功能是输入实数x,按照如下公式计算并输出y的值,请填空完善程序。

main()

{ float x,y; printf(\ scanf(\

if( 01) ) y=x;

else if( 02) ) y=6*x-1; else y= 03) ; printf(\}

2、某物品原有价值为p,使用后其价值降低,价值的折扣率根据时间t(月数)确定如下:

下面程序根据输入的时间和原有的价值计算物品的现有价值,请填空完善程序。 main() { int t,d; float p;

scanf(\ switch( 04) ){ case 0: d=0;break; case 1: d=2;break; case 2:

case 3:d=5;break; case 4: case 5:

case 6: d=8;break; 05) : d=10; }

printf(\ 06) ); }

3、根据以下给定公式计算 的值(取前n项),请填空完善程序。

main()

{ double sum=1.0,x=1.0,y=1.0; int n;

scanf(\ 07) ); while(n){ y=y*x;

sum+= 08) ; x++; n--; }

printf(\}

4、下面程序完成输入一个整数并判断是否为素数,请填空完善程序。

试题共10页-第4页

装订线

#include\main()

{ int n,k,i=1;

scanf(\ k=sqrt(n);

for(i=2;i<=k;i++)

if( 09) ) break;

if( 10) ) printf(\ }

5、下面程序的功能是对从键盘上输入的两个字符串进行比较,然后输出两个字符串中第一个不同字符的ASCII码之差,请填空完善程序。 #include main()

{ char str1[81],str2[81]; int i;

gets(str1); gets(str2); i=0;

while(str1[i]==str2[i]&& 11) ) i++; printf(\ 12) ); }

6、下面程序的功能是求数组s中的最大元素及它的下标,请填空完善程序。 main()

{ int s[4][4],max,i,j,row,col; for(i=0;i<4;i++)

for(j=0;j<4;j++) scanf(\ 13) =s[0][0]; for(i=0;i<4;i++) for(j=0;j<4;j++) if(s[i][j]>max){

14) ;row=i;col=j; }

printf(\} 7、函数del(s,i,n)的功能是从字符串s中删除从i个字符开始的n个字符。main函数调用del函数,从字符串\中删除从第3个字符开始的4个字符,然后输出删除子串后的字符串。请填空完善程序。 void del(char s[], int i, int n) {

int j,k,length=0;

while(s[length]!='\\0') 15) ; --i; j=i; k=i+n;

while(k

试题共10页-第5页


华南农业大学期末考试试卷 C语言考试合集.doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:人名反应综述

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: