哈工大学年秋季学期C语言试题包括答案Word格式文档下载.docx

上传人:b****2 文档编号:15121692 上传时间:2022-10-27 格式:DOCX 页数:22 大小:25.04KB
下载 相关 举报
哈工大学年秋季学期C语言试题包括答案Word格式文档下载.docx_第1页
第1页 / 共22页
哈工大学年秋季学期C语言试题包括答案Word格式文档下载.docx_第2页
第2页 / 共22页
哈工大学年秋季学期C语言试题包括答案Word格式文档下载.docx_第3页
第3页 / 共22页
哈工大学年秋季学期C语言试题包括答案Word格式文档下载.docx_第4页
第4页 / 共22页
哈工大学年秋季学期C语言试题包括答案Word格式文档下载.docx_第5页
第5页 / 共22页
点击查看更多>>
下载资源
资源描述

哈工大学年秋季学期C语言试题包括答案Word格式文档下载.docx

《哈工大学年秋季学期C语言试题包括答案Word格式文档下载.docx》由会员分享,可在线阅读,更多相关《哈工大学年秋季学期C语言试题包括答案Word格式文档下载.docx(22页珍藏版)》请在冰豆网上搜索。

哈工大学年秋季学期C语言试题包括答案Word格式文档下载.docx

6.指向不同类型数组的两个指针不能进行有意义的比较。

7.unionch

{

inta[3];

floatm;

};

这样的一个数据类型共占用内存数为6字节。

8.设有定义:

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

则数组元素a[1][1]的值为0。

二、单项选择题:

(10分,每题2分)

1.下列对字符串的定义中,错误的是:

A)charstr[7]="

FORTRAN"

;

B)charstr[]="

C)char*str="

D)charstr[]={'

F'

'

O'

R'

T'

A'

N'

0};

2.设有声明语句:

inta=1,b=0;

则执行以下语句后输出:

switch(a)

{

case1:

switch(b)

{

case0:

printf("

**0**"

);

break;

case1:

**1**"

}

case2:

**2**"

}

A)**0**B)**0****2**

C)**0****1****2**D)有语法错误

3.在while(x)语句中的x与下面条件表达式等价的是:

A)x!

=0B)x==1C)x!

=1D)x==0

4.已知

structsk

inta;

floatb;

}data,*p;

若有p=&

data则对data中成员a的正确引用是________。

A)(*p).dataB)(*p).a

C)p->

data.aD)p.data.a

5.C语言中形参的缺省存储类别是:

A)自动(auto)B)静态(static)

C)寄存器(register)D)外部(extern)

三、写出下列程序的运行结果。

1.

#include<

stdio.h>

main()

intx=8,y=12;

%d%d\n"

x++,++y);

x,y);

运行结果是:

 

2.

intx,y;

scanf("

%2d%*3s%2d"

&

x,&

y);

%d"

x+y);

程序执行时从键盘输入:

123456789↙

3.

voidFunc(intb[])

intj;

for(j=0;

j<

4;

j++)

{

b[j]=j;

staticinta[]={5,6,7,8},i;

Func(a);

for(i=0;

i<

i++)

printf("

%d\n"

a[i]);

4.

#include<

intcube(inty);

intx;

for(x=1;

x<

=5;

x++)

printf(“%d”,cube(x));

intcube(inty)

return2*y;

5.

voidFunc(void);

inti;

for(i=0;

i<

2;

Func();

voidFunc(void)

staticinttimes=1;

Func()wascalled%dtime(s).\n"

times++);

四、阅读程序,在标有下划线的空白处填入适当的表达式或语句,使程序完整并符合题目要求。

(12分,每空2分)

1.下面这个程序用于读入5个整数,当程序读入的数据为正整数时,则显示该数,否则,不显示。

读入5个数据后,程序结束运行。

inti,n;

for(i=1;

printf("

Pleaseentern:

"

scanf("

);

if(n<

=0)_____________;

n=%d\n"

n);

Programisover!

\n"

2.下面函数实现strcmp的功能,将两个字符串s和t进行比较,然后将两个字符串中第一个不相同字符的ASCII码值之差作为函数值返回。

intMyStrcmp(chars[],chart[])

s[i]==t[i];

i++)

if(s[i]==)return0;

return();

3.下面程序模拟了鹘子的6000次投掷,用rand函数产生1到6之间的随机数face,然后统计1到6每一面出现的机会存到数组frequency中。

intface,roll,frequency[7]={0};

strand(time(NULL));

for(roll=1;

roll<

=6000;

roll++)

face=;

++;

for(face=1;

face<

=6;

face++)

printf(“%d,%d”,face,frequency[face]);

五、在下面给出的程序中,有9处错误(包括语法错误和逻辑错误),请找出其中的错误,并改正之。

(18分,每找对1个错误,加1分,每修改正确1个错误,再加1分。

1.输入一行字符,统计其中的英文字符、数字字符、空格字符,以及其他字符的个数。

string.h>

#defineARR_SIZE=80;

charstr[ARR_SIZE];

intlen,i;

intletter=0,digit=0,space=0,other=0;

请输入一个字符串:

gets(str);

len=strlen(str);

for(i=0;

len;

i++);

{

if(a=<

str[i]<

=z||A=<

=Z)

{

letter++;

}

elseif(0=<

=9)

digit++;

}

elseif(str[i]='

'

{

space++;

else

other++;

英文字符数:

letter);

数字字符数:

digit);

空格数:

space);

其他字符数:

other);

2.任意输入英文的星期几,在查找星期表后输出其对应的数字。

inti,pos;

intfindFlag=0;

charx[10];

charweekDay[7][]={"

Sunday"

"

Monday"

Tuesday"

Wednesday"

Thursday"

Friday"

Saturday"

};

%s"

x);

7&

&

!

findFlag;

if(x=weekDay[i])

pos=i;

findFlag=1;

}

if(findFlag=1)

%s是%d\n"

x,pos);

else

没有找到!

六、编程(42分,每小题14分)

1.编程计算a+aa+aaa+……+aa…a(n个a)的值,要求n和a由用户从键盘输入。

2.给出一百分制成绩,要求输出成绩等级‘A’、‘B’、‘C’、‘D’、‘E’。

90分以上为‘A’,80~89分为‘B’,70~79分为‘C’,60~69为‘D’,60分以下为‘E’。

3.从键盘任意输入某班10个学生的成绩,计算总成绩并统计成绩不及格的学生人数,要求用一维数组做函数参数,在函数中实现输出总成绩及不及格的学生人数。

参考答案

(×

(√)

5.一个数组能够存储不同类型的数据(×

)。

A。

B。

switch(a

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 经管营销 > 企业管理

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1