C(Ⅱ)期末试卷(含答案)

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

江 苏 大 学 试 题

课程名称 计算机基础及C 语言(Ⅱ) 开课学院 计算机学院

使用班级 考试日期 .

注意事项:

1. 闭卷考试。考试时间为120分钟。

2.答案均请用铅笔涂在答题卡上。将答题卡上的试卷类型涂A (补考则涂B )。

3.请将答题卡、试卷都写上班级、学号、姓名、任课教师。考试结束分别交予监考老师。

一、 选择题(30分,每小题1分,请涂写在答题卡上)

1. 以下常量中正确的是 D 。

A .'abc' B. '\x123' C.3.145E-1.2 D. "a" 2. 以下选项中,不能用作变量名的是 D 。

A. _1234_

B._1_2

C.int_2_

D.2_int_ 3. 设有“int a;”,以下不能正确表达10

A. 10

B. A==11||a==12||a==13||a==14

C. a>10&&a<15

D.!(a<=10)&&!(a>=15)

4. 已知数据类型定义和变量声明如下:

struct sk

{int a; float b;}data[2], * p ;

若有p=data ,则以下对data[0]中成员a 的引用中错误的是 A 。 A. data[0]->a B. data->a C. p->a D. (* p).a 5. 下列程序的程序输出结果为 A 。 #define X(a) a*a main()

{ printf(“%d \n”,X(4+5));}

A.29

B.18

C.20

D.25

6. 若有定义“enum seq{mouse, cat, dog, rabbit=0, sheep, cow=6, tiger};” 则执行语句“printf(“%d ”,cat+sheep+cow);”后输出的结果是_____C ______。 A. 6 B.7 C.8 D. 9

7. 以下能将字符串“good!”正确地存放在字符数组s 中,或使指针s 能指向这个字符串

的是______D ______。

A. char s[4]={…g‟, …o‟, …o‟, …d‟, …!‟};

B. char s[5];s=“good!”;

C. int s[5]= “good!”;

D. char *s;s=“good!”;

江 苏 大 学 试 题 第2页

共 9页 第 1 页

8.设有说明:

union data

{ int i ;float f;

struct{ int x;char y;}s;

double d; }a;

则变量a 在内存中所占字节数为_ A __ 。

A.8

B.17

C.9

D.15

9.设已有非空文本数据文件filel.dat,要求能读出文件中原有的全部数据,并在文件原有数据之后添加新数据,则用FILE *fp=fopen("file1.dat",D)打开该文件。

A. "w"

B. " w+"

C. "r+"

D. "a+"

10.以下关于if语句的错误描述是B。

A. 条件表达式可以是任意表达式

B.条件表达式只能是关系表达式或逻辑表达式

C.条件表达式的括号不可以省略

D.与else配对的if语句是其之前最近的未配对的if语句

11.在以下不致造成死循环的语句是:A。

A. for(y=0,x=1; x>++y; x=i ++) i =x;

B. for(; ;x+=i );

C. while(x=8) x--;

D. for(i =10,sum=0; sum<=i ;) sum= --i ;

12.设有定义:“float y=3.45678;int x;”,则以下表达式中能实现将y中数值保留小数点后2 位,第3位四舍五入的表达式是:B。

A. y=(y*100+0.5)/100.0

B. x=y*100+0.5,y=x/100.0

C. y=y*100+0.5/100.0

D.y=(y/100+0.5)*100.0

13.以下程序段输出结果是:C。

int a=10,b=11,c=12,s;

s=a++<=10&&b--<=2&&c++;

printf(“%d,%d,%d,%d”,s,a,b,c);

A. 0,11,10,13

B. 1,11,10,13

C. 0,11,10,12

D.1,11,10,12

14.设有“char s[ ]=“Program”,*p=s;”,则以下叙述中正确的是:C。

A. 数组s的内容与指针变量p中内容相同

B.数组s的长度与strlen(p)的值相等

C.p[5]的值等于s[5]的值

D. sizeof(s)等于sizeof(*p)

15.下列程序段执行后变量j的值是: B 。

int j; char *s="x\045\""; for(j=0;*s++;j++);

江苏大学试题第3页

A. 7

B. 3

C. 4

D. 5

16.若有定义语句“static char str[4][20]={ "thank", "you","very","much! "};”则str数组中存储'\0' 的数组元素有:D个。

A. 0

B. 17

C. 21

D. 63

17.下列正确的声明说明语句是D。

A. float m=15,n=4,q=m%n;

B. int n=10, y[n];

C. char p[2][ ]={ "DOS","WINDOWS"};

D. char *p[ ]={ "DOS","WINDOWS","UNIX"};

18.设有函数f的定义如下:

void f(int x, int *y)

{ *y=x*x*x;}

main( )

{ int j,c[4]={1,2,3,4},s[4]={0};

for(j=0;j<4;j++)

{ /* 调用f函数*/

printf(“%d”,s[j]); }

}

若在main函数中欲调用函数f,则正确的调用语句是______C______。

A. f(c,s);

B. f(c[i ],s[i]);

C. f(*(c+i),&s[i]);

D. f(c+i ,s+i );

19.执行以下程序段后,x,w的值为_____C_______。

int x=0,y=1,z=2,w;

if(x++) w=x;

else if(x++&&y>=1) w=y;

else if(x++&&z>1) w=z;

A. 0,1

B. 1,1

C. 2,1

D.3,2

20.已知有声明语句“int a[5]={1,2,3,4,5},*p,i;”,以下语句中不能正确输出a数组全部元素值的是_____C______。

A.for(p=a,i=0;i<5;i++) printf("%d",*(p+i));

B.for(p=a;p

C.for(p=a,i=0;p

D.for(p=a;p

江苏大学试题第4页

相关文档
最新文档