2022年大庆师范学院公共课《C语言》科目期末试卷A(有答案)

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

2022年大庆师范学院公共课《C语言》科目期末试卷A(有答案)

一、填空题

1、设x为无符号整数。表达式x^(~(~0<

2、C语言的源程序必须通过【】和【】后,才能被计算机执行。

3、在C语言中,输入操作是由库函数________完成的,输出操作是由库函数

________完成的。

4、运算符%两侧运算量的数据类型必须都是_______;运算符++和一一的运算量必须是_______。

5、若x和n均是int型变量,且x和n的初值均为5,则执行表达式x+=n++后x的值为_______,n的值为_______。

6、以下程序段通过移动指针变量m,将如图9-5所示连续动态存储单元的值,从第一个元素起依次输出到终端屏幕。请填空。(假设程序段中的所有变量均已正确说明。)

for(m=q;m-q<10;m++)printf("%d,",_______);printf("\n");

7、函数swap(arr,n)可对arr数组从第1个元素到第n个元素分别进行两两元素交换。在运行调用函数中的如下语句后,a[o]和a[1]的值分别为_______,原因是_______。

a[0]=1;a[1]=2;swap(a,2);

8、假设变量a、b和c均为整型,以下语句借助中间变量t把a、b和c中的值进行交换,即把b中的值给a,把c中的值给b,把a中的值给c。例如:交换前,a=10、b=20、c=30;交换后,a=20、b=30、c=10。请填空。

_______;a=b;b=c;_______;

9、若有以下定义和语句,为使变量c1得到字符’A',变量c2得到字符’B’,正确的输入形式是_______。

char cl,c2;

scanf("%4c%4c",&cl,8&c2);

10、下面程序段将输出computer。请填空。

char c[]="It is a computer";

for(i=0;_______;i++)

{_______;printf("%c",c[j]);}

二、选择题

11、下面4个选项中,是不合法的浮点数的选项是( )。

A.160.

B.123

C.-18

D.-e3

12、下面4个选项中,是非法常量的选项是( )。

13、有输入语句:scanf("a=%d,b=%d,c=%d",&a,&b,&C.;为使变量a的值为1,b的值为3,c的值为2;从键盘输入数据的正确形式应当是()。(注:囗表示空格)

A.132<回车>

B.1,3,2<回车>

C.a=1囗b=3囗c=2<回车>

D.a=1,b=3,c=2<回车>

14、以下C程序的运行结果是。(注:口表示空格)

#include

int main()

{long y=-43456;printf("y=%-8ld\n",y);

printf("y=%-08ld\n",y);

printf("y=%08ld\n",y);

printf("y=%+8ld\n",y);

return 0;

}

A.y=囗囗-43456 y=-囗囗43456 y=-0043456 y=-43456

B.y=-43456 y=-43456 y=-0043456 y=+囗-43456

C.y=-43456 y=-43456 y=-0043456 y=囗囗-43456

D.y=囗囗-43456 y=-0043456 y=00043456 y=+43456

15、下面程序段中有错误的行号是(每行代码前面的数字表示行号)。

1 int a[3]={1};

2 int i;

3 scanf("%d".8a);

4 for(i=1;i<3;i++) a[0]=a[0]+a[i]:

5 printf("a[0]=%d\n",a[0]);

A)1 B)4 C)5 D)3

16、一个C语言程序由( )。

A.一个主程序和若干子程序组成

B.函数组成

C.若干过程组成

D.若干子程序组成

17、以下不是无限循环的语句为()。

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

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

C.while(1){x++;}

D.for(i=10;;i-一)sum+=i;

18、在一个C源程序文件中,若要定义一个只允许本源文件中所有函数使用的全局变量,则该变量需要使用的存储类别是()

A.extern

B.register

C.auto

D.static

19、若有定义:int*p[4];则标识符p。

A.是一个指向整型变量的指针

B.是一个指针数组名

C.是一个指针,它指向一个含有四个整型元素的一维数组

D.定义不合法

20、若有说明:char*language[]={"FORTRAN","BASIC","PASCAL",JAVA","C"};则以下不正确的叙述是()

nguage+2表示字符串”PASCAL”的首地址

B.*language[2]的值是字母P

nguage是一个字符型指针数组,它包含5个元素,每个元素都是一个指向字符串变量的指针

相关文档
最新文档