扬州大学C语言0606、0706期末试题.doc
- 文档编号:250871
- 上传时间:2022-10-07
- 格式:DOC
- 页数:16
- 大小:124KB
扬州大学C语言0606、0706期末试题.doc
《扬州大学C语言0606、0706期末试题.doc》由会员分享,可在线阅读,更多相关《扬州大学C语言0606、0706期末试题.doc(16页珍藏版)》请在冰豆网上搜索。
200606
一、单选题(每小题2分,共30分)
1.下列表示中,不是C语言合法字符常量的是
(1)。
A.‘\0xff’B.‘\65’C.‘$’D.‘\x2a’
2.设有如下定义:
floaty=3.45678;
intx;
则下列表达式中能实现将y中数值保留至小数点后2位,小数点后第3位四舍五入的表达式是
(2)。
A.y=(y*100+0.5)/100.0B.x=y*100+0.5,y=x/100.0
C.y=y*100+0.5/100.0D.y=(y/100+0.5)*100.0
3.下列表示中,能在C语言中正确定义三个整型变量a、b、c,且能给它们均赋值5的是(3)。
A.inta=b=c=5;B.inta,b,c=5;
C.inta=5,b=5,c=5;D.a=b=c=5;
4.设有数学命题“当整数a的值为奇数时,表达式的值为真,否则为假”,则下列C语言表达式中,不能满足该数学命题要求的是(4)。
A.a%2==1B.!
(a%2)C.!
(a%2==0)D.a%2
5.执行下列程序段后,变量i的值是(5)。
inti=1;
switch(i){case0:
i+=1;
case1:
i+=1;
case2:
i+=1;
default:
i+=1;
}
A.1B.2C.3D.4
6.在C语言中,break语句(6)。
A.能用在C源程序中的任何位置B.只能用在循环体内
C.只能用在循环体内或switch语句中D.可用作函数内的任一语句
7.设有程序段:
intx=10;
while(x=0)x=x-1;
则下列叙述中正确的是(7)。
A.while循环执行10次B.循环是无限循环
C.循环体语句一次也不执行D.循环体语句只执行一次
8.在C语言中,数组名可作为实在参数传递给函数的形式参数,此时,作为实在参数的数组名被处理为(8)。
A.该数组的长度B.该数组的元素个数
C.该数组中元素的值D.该数组的首地址
9.以下关于函数定义的叙述中,正确的是(9)。
A.构成C语言源程序的基本单位之一是函数定义
B.所有被调用的函数必须在调用之前定义
C.main函数的定义必须放在其他函数定义之前
D.定义main函数时,main函数的函数体内必须至少包含一条语句或声明
10.设有下列程序段:
structperson{charname[9];intage;};
structpersonclass[10]={“John”,17,“Paul”,19,“Mary”,18,“adam”,16};
则下列选项中,能打印出字母“M”的语句是(10)。
A.printf(“%c\n”,class[3].name);
B.printf(“%c\n”,class[3].name[1]);
C.printf(“%c\n”,class[2].name[1])
D.printf(“%c\n”,class[2].name[0])
11.以下能将字符串“good!
”正确地存放在字符数组s中,或使指针变量s能正确地指向这个字符串的是(11)。
A.chars[5]={‘g’,‘o’,‘o’,‘d’,‘!
’};
B.chars[5];s=“good!
”;
C.ints[5]=“good!
”;
D.char*s;s=“good!
”;
12.若有语句:
chars1[10],s2[10]=“books”;
则下列表示中,能正确地将字符串“books”赋给数组s1的是(12)。
A.s1={“books”}B.strcpy(s1,s2)
C.s1=s2D.strcpy(s2,s1)
13.以下正确的函数说明语句是(13)。
A.intfun(inta,b)B.floatfun(inta;intb)
C.doublefun()D.intfun(chara[][])
14.设有说明语句
char*s=“abcd”;
则执行s+=2后,*s的内容是(14)。
A.aB.bC.cD.cd
15.下列对typedef的叙述中,错误的是(15)。
A.用typedef可以增加新类型
B.用typedef可以定义各种类型名,但不能用来定义变量
C.用typedef只是将已存在的类型用一个新的标识符来代表
D.使用typedef有利于程序的通用和移植
二、填空题(每空1分,共20分)
1.一个C语言源程序是由若干个
(1)组成的;C语句的分隔符是
(2)。
2.程序的三种基本控制结构分别是(3)、选择和(4)。
3.数学表达式“”所对应的C语言表达式为(5)。
在C程序中要计算这样的表达式,通常必须包含头文件(6)。
4.在C语言中,声明变量的格式为:
存储类别类型名变量名表;
其中,变量有四种存储类别,它们分别是(7)、register、extern和(8)。
5.若有定义:
“inta[3][4]={{1,2,3},{4,5},{6,7,8}};”,则执行该说明语句后,a[1][2]=(9),a[2][1]=(10)。
6.在C程序中,若有函数定义如下:
voidf()
{staticinti;
…}
其中,void表明函数f(11);而i是一个(12)整型变量。
7.在C语言程序设计中,预处理命令行必须以(13)开头,该命令是在(14)被处理的。
8.若一结构的成员项是指向本结构类型的结构指针,则称该结构为(15)。
定义这种结构类型的一般形式如下:
structnode{intdata;
(16)next;
};
9.在C语言源程序中,函数内部说明局部变量时若缺省了存储类型,则该变量的存储类型为(17);定义一个函数时,若缺省该函数返回值的类型,则默认返回值为(18)型。
10.设有以下说明语句:
structstudent{intx;
int*y;
};
intdt[4]={1,2,3,4};
structstudenta[4]={10,&dt[3],20,&dt[2],30,&dt[1],40,&dt[0]},*p=a;
则表达式++p->x的值为(19),表达式*(++p)->y的值为(20)。
三、阅读程序写出结果(每小题4分,共20分)
1.下列程序的运行结果是。
#include
main()
{ints=0,n=135;
do{s+=n%10;
n/=10;
}while(n);
printf(“%d\n”,s);
getch();
}
2.下列程序的运行结果是。
#include
voidf(intx,inty)
{intt;
t=x;x=y;y=t;
}
main()
{inta=1,b=100;
f(a,b);
printf(“%d,%d\n”,a,b);
getch();
}
3.以下程序运行的结果是。
#include
#include
main()
{inti;
for(i=0;i<3;i++)
printf("%3d",f(i));
getch();
}
f(intx)
{inty=0;
staticintz=1;
y++,z++;
return(x+y+z);
}
4.下面程序段运行的结果是__________________。
#include
#include
main()
{inti=1,j=0,m=1,n=1;
switch(i)
{case1:
m++;n++;
case2:
switch(++j)
{case1:
m++;break;
case2:
n++;
}
case3:
m++;break;
case4:
n++;
}
printf("%d,%d\n",m,n);
getch();
}
5.下面程序段运行的结果是__________________。
#include
#include
main()
{charch[7]=“1234”;
inti,s=0;
for(i=strlen(ch)-1;i>=0;i--)
s=s*10+ch[i]-‘0’;
printf(“%d\n”,s);
getch();
}
四、完善程序题(
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 扬州 大学 语言 0606 0706 期末 试题