哈工大C语言试题

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

精品文档哈尔滨工业大学(威海)2008/2009秋季学期笔试试题(A 卷)C语言程序设计

计入总分;70%试卷说明:1. 卷面总分100分,取卷面成绩的 2. 选择

题、填空题与写运行结果题必须在答题卡内答题; 3. 答题时禁止拆开试卷钉,背面即为草稿纸;

分钟。4. 答题时间105

2分)一、单项选择题(本题16分,每小题

注的文编译程序编译连接之后生成一个后缀为______1. C语言源程序文件经过C意件。行D) .cpp C) .exe B) .obj A) .c 为。!(x>0||y>0) 等价于_____2. 表达式规D) !(x>0)&&!(y>0) B) !(x>0)||!(y>0) C)!x>0&&!y>0

A) !x>0||!y>0 范其中buffer代表的3. 已知函数的调用形式:fread(buffer, size, count, fp);

)。是(

A) 一个整型变量,代表要读入的数据项总数遵B) 一个文件指针,指向要读入的文件守一个指针,指向要存放读入数据的地址C) 考一个存储区,存放要读入的数据项D) 试以下不能正确定义二维数组的选项是4. 纪

a[][2]={1,2,3,4};

B) int }; A) int 律4}}; D) int a[2][2]={{1},2,3}; C) int

5. 以下程序的输出结果是_____。

main()

{

char ch[3][5]={AAAA,BBB,CC};

教研室主任签字:printf(\\%s\\

,ch[1]);

}

A) \AAAA\ B) \BBB\ C) BBB D) AAAA

精品文档.

精品文档

6. 对y在[3,23]和[100,200]范围内为真的确表达式为_____。

A) (y>=3)&&(y<=23)&&(y>=100)&&(y<=200)

B) (y>=3)||(y<=23)||(y>=100)||(y<=200)

C) (y>=3)&&(y<=23)||(y>=100)&&(y<=200)

D) (y>=3)||(y<=23)&&(y>=100)||(y<=200)

7. 设有如下结构定义:

struct addr

{

char name[30]; char street[40];

char city[20]; char office[30];

char phone[10]; int age;

} stud;

若用printf(“%s\n”,…)访问该结构中name值的正确方法是____。

A) stud->name B) & C) stud.&name D)

8. 若变量已正确定义并赋值,表达式______不符合C语言语法。

A) a*b/c; B) 3.14%2 C) 2, b D) a/b/c

分)二、填空题(本题20分,每小题21. 设变量定义为:int s[ ]=hello\nworld\n;,则数组s中有______个元素。

2. 设变量定义为:int a[2]={1,3}, *p=&a[0]+1;,则*p的值是_____。

3. 表达式!!8的值是______。

4. 下列程序段的输出结果是_____。

#define MIN(x,y) (x)<(y)?(x) : (y)

printf(%d,10*MIN(10,15));

5. 设a为整型变量,初值为12,执行完语句a+=a-=a*a后,a的值是_____。

6. 下列程序的输出结果是_____。

#include

main()

{

printf(%d,8>7?6:5>4?3:2);

}

7. 下列程序段的输出结果是_____。

char *st[ ]={abcd,efgh,ijkl,mnop};

printf(%s, *(st+1)+1);

8. 下列程序段的输出结果是_____。

int *p, *q, k = 1, j=10 ;

p=&j; q = &k ; p = q ; (*p)++;

printf(%d,*q);

9. 下列程序的输出结果是_____。

#include

main()

{ int c=35;

printf(%d\n,c&(c+1));

}

10. 下列程序的输出结果是_____。

精品文档.

精品文档

#include

main()

{ int a[2][3],(*p)[3];

int k=0,j;

p=a;

for(;k<2;k++)

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

*(p[k]+j)=(k+1)*(j+1);

printf(%d\n,*(p[1]+2));

}

三、请写出下列程序运行的输出结果。分)分,每小题

3用“□”表示空格(本题24#include 1.

main()

{

int x,y=1,z=10;

x=1;

if(z<0)

if(y>0) x=3;

else x=5;

牰湩晴尨?搥屜屮砬?

if(z=y<0) x=3;

else if(y==0) x=5;

else x=7;

牰湩晴尨?搥屜屮砬?

printf(z=%d\n,z);

}

#include 2.

int f(int m)

{

static int k=0;

int s=0;

for(;k<=m;k++)

s++;

return s;

}

精品文档.

精品文档

main( )

{

int s1, s2;

s1=f(5);

相关文档
最新文档