[在线作业] 西交16年5月清考《程序设计基础》作业考核

[复制链接]
发表于 2016-5-24 08:28:50 | 显示全部楼层 |阅读模式
西交16年5月清考《程序设计基础》作业考核试题
一、单选题:【30道,总分:60分】
无忧答案网
1.若有int a[][]={{1,2},{3,4}};则*(a+1),*(*a+1)的含义分别为(    )。          (满分:2)
    A. 非法,2
    B. &a[1][0],2
    C. &a[0][1],3
    D. a[0][0],4
2.变量的指针,其含义是指该变量的(    )。          (满分:2)
    A. 值
    B. 地址
    C. 名
    D. 一个标志
3.以下叙述不正确的是(    )。          (满分:2)
    A. 一个C源程序可由一个或多个函数组成
    B. 一个C源程序必须包含一个main函数
    C. C程序的基本组成单位是函数
    D. 在C程序中,注释说明只能位于一条语句的后面
4.函数的形式参数隐含的存储类型说明是(    )。          (满分:2)
    A. extern
    B. static
    C. register
    D. auto
5.可将C源程序存在磁盘上,还可将数据按数据类型分别以(    )的形式存在磁盘上。          (满分:2)
    A. 内存
    B. 缓冲区
    C. 文件
    D. 寄存器
6.以下只有在使用时才为该类型变量分配内存的存储类说明是(    )。          (满分:2)
    A. auto和static
    B. auto和register
    C. register和static
    D. extern和register
7.以下数值中,不正确的八进制数或十六进制数是(    )。          (满分:2)
    A. 0x16
    B. 016
    C. -1
    D. 0xaaaa
8.若有inta[10]={0,1,2,3,4,5,6,7,8,9},*p=a;则输出结果不为5的语句为(    )。          (满分:2)
    A. printf("%d",*(a+5));
    B. printf("%d",p[5]);
    C. printf("%d",*(p+5));
    D. printf("%d",*p[5]);
9.以下正确的说法是:在C语言中( 无忧答案网   )。          (满分:2)
    A. 实参和与其对应的形参各占用独立的存储单元
    B. 实参和与其对应的形参共占用一个存储单元
    C. 只有当实参和与其对应的形参同名时才共占用存储单元
    D. 形参是虚拟的,不占用存储单元
10.在位运算中,操作数每右移一位,其结果相当于(    )。          (满分:2)
    A. 操作数乘以2
    B. 操作数除以2
    C. 操作数乘以16
    D. 操作数除以16
11.设变量a是整型,f是实型,i是双精度型,则表达式10+'a'+i*f值的数据类型为(    )。          (满分:2)
    A. int
    B. float
    C. double
    D. 不确定
12.结构体类型的定义允许嵌套是指(    )。          (满分:2)
    A. 成员是已经或正在定义的结构体型
    B. 成员可以重名
    C. 结构体型可以派生
    D. 定义多个结构体型
13.以下对C语言函数的描述中,正确的是(    )。          (满分:2)
    A. C程序必须由一个或一个以上的函数组成
    B. C函数既可以嵌套定义又可以递归调用
    C. 函数必须有返回值,否则不能使用函数
    D. C程序中有调用关系的所有函数必须放在同一个程序文件中
14.已知函数的调用形式fread(buffer,size,count,fp);其中buffer代表的是(    )。          (满分:2)
    A. 一个整数,代表要读入的数据项总数
    B. 一个文件指针,指向要读的文件
    C. 一个指针,指向要读入数据的存放地址
    D. 一个存储区,存放要读的数据项
15.C语言中的文件类型只有(    )。          (满分:2)无忧答案网
    A. 索引文件和文本文件两种
    B. ASCII文件和二进制文件两种
    C. 文本文件一种
    D. 二进制文件一种
16.逻辑运算符两侧运算对象的数据类型(    )。          (满分:2)
    A. 只能是0或1
    B. 只能是0或非0正数
    C. 只能是整型或字符型数据
    D. 可以是任何类型的数据
17.语句while(!E);中的表达式!E等价于(    )。          (满分:2)
    A. E==0
    B. E!=1
    C. E!=0
    D. E==1
18.double x;scanf("%lf",&x);不可以赋值给x变量的常量是(    )。          (满分:2)
    A. 123
    B. 100000
    C. A'
    D. "abc"
19.以下叙述正确的是(    )。          (满分:2)
    A. 在C程序中,main函数必须位于程序的最前面
    B. C程序的每行中只能写一条语句
    C. C语言本身没有输入输出语句
    D. 在对一个C程序进行编译的过程中,可发现注释中的拼写错误
20.若有下列定义和语句,则对a数组元素的非法引用是(    )。Int a[2][3],(*pt)[3];pt=a;          (满分:2)
    A. pt[0][0]
    B. *(pt+1)[2]
    C. *(pt[1]+2)
    D. *(a[0]+2
21.若fp是指向某文件的指针,且已读到此文件末尾,则库函数feof(fp)的返回值是(    )。          (满分:2)
    A. EOF
    B. 0
    C. 非零值
    D. NULL
22.设int x=1,y=1;表达式(!x(    )y--)的值是(    )。          (满分:2)
    A. 0
    B. 1
    C. 2
    D. -1
23.执行以下程序段后,输出结果和a的值是(    )。Int a=10;printf("%d",a++);          (满分:2)
    A. 10和10
    B. 10和11
    C. 11和10
    D. 11和11
24.C语言中,定义结构体的保留字是(    )。          (满分:2)
    A. union
    B. struct
    C. enum
    D. typedef
25.以下运算符中,优先级最高的运算符是(    )。          (满分:2)
    A. =
    B. !=
    C. *(乘号)
    D.(    )
26.下列程序的输出结果是(    )。main(    ){int x=1,y=0,a=0,b=0;switch(x){case1.switch(y){case0.a++;break;case1.b++;break;}case2.a++;b++;break;case3.a++;b++;break;}printf("a=%d,b=%d\n",a,b);}          (满分:2)
    A. a=1,b=0
    B. a=2,b=1
    C. a=1,b=1
    D. a=2,b=2
27.应用缓冲文件系统对文件进行读写操作,关闭文件的函数名为(    )。          (满分:2)
    A. fclose(    )
    B. close(    )
    C. fread(    )
    D. fwrite
28.下列程序的输出结果为(    )。main(    ){int m=7,n=4;floata=38.4,b=6.4,x;x=m/2+n*a/b+1/2;printf("%f\n",x);}          (满分:2)
    A. 27.000000
    B. 27.500000
    C. 28.000000
    D. 28.500000
29.已知x=43,ch='A',y=0;则表达式(x>=y&&ch<'B'&&!y)的值是(    )。          (满分:2)
    A. 0
    B. 语法错
    C. 1
    D. "假"
30.在C语言中,能代表逻辑值“真”的是(    )。          (满分:2)
    A. True
    B. 大于0的数
    C. 非0整数
    D. 非0的数
二、多选题:【10道,总分:20分】

1.以下用户标识符,其中合法的是(    )。          (满分:2)
    A. return
    B. f2G3
    C. A3-3
    D. abc
2.下列对逻辑运算符两侧的运算对象的数据类型描述不正确的是(    )。          (满分:2)
    A. 只能是0或1
    B. 只能是0或非0正数
    C. 可以是整型或字符型数据
    D. 可以是任何类型的数据
3.以下选项中合法的表达式是(    )。          (满分:2)
    A. 0<=x<100
    B. i=j==0
    C.(char)(65+3)
    D. x+1=x+1
4.在定义int a[2][3];之后,对a的引用正确的有(    )。          (满分:2)
    A. a[0][2]
    B. a[1,3]
    C. a[1>2][!1]
    D. a[2][0]
5.以下叙述正确的是(    )。          (满分:2)
    A. C语言严格区分大小写英文字母
    B. C语言用";"作为语句分隔符
    C. C程序书写格式自由,一行内可以写几个语句,一个语句也可以写在几行上.
    D. 可以使用/*…*/对C程序中的任何部分作注释
6.若a,b,c,d都是int型变量且初值为0,以下选项中正确的赋值语句是(    )。          (满分:2)
    A. a=b=c=d=100;
    B. d++;
    C. c+b;
    D. d=(c=22)-(b++);
7.以下不符合C语言语法的实型常量是(    )。          (满分:2)
    A. 1.2E0.5
    B. 3.14.159E
    C. .5E-3
    D. E15
8.以下4个选项中,可以看作是一条语句的有(    )。          (满分:2)
    A. {;}
    B. a=0,b=0,c=0;
    C. if(a>0);
    D. if(b==0)m=1;n=2;
9.定义语句:int x,y;若要通过scanf("%d,%d",&x,&y);语句使变量x得到数值11,变量y得到数值12,下面四组输入形式中,正确的有(    )。          (满分:2)
    A. 1112<回车>
    B. 11,<空格>12<回车>
    C. 11,12<回车>
    D. 11,<回车>12<回车>
10.对do-while语句描述正确的是(无忧答案网    )。          (满分:2)
    A. do-while语句构成的循环可以使用break语句退出循环
    B. do-while语句构成的循环必须使用break语句退出循环
    C. do-while语句构成的循环,当while中的表达式值为非零时结束循环
    D. do-while语句构成的循环,当while中的表达式值为零时结束循环
三、判断题:【10道,总分:20分】

1.C语言既可以用来写系统软件,也可以用来写应用软件。(    )          (满分:2)
    A. 错误
    B. 正确
2.若a=7,b=5;则执行a&&b++后,b为6。(    )          (满分:2)
    A. 错误
    B. 正确
3.若有int a[10]={1,2,3,4,5,6,7,8,9,10};a=a+1;则这时a代表元素2的位元元址。(    )          (满分:2)
    A. 错误
    B. 正确
4.若有static int a[10];则a数组的10个元素的值都是0。(    )          (满分:2)
    A. 错误
    B. 正确
5.若定义char *str;则str="BOOK";是正确的。(    )          (满分:2)
    A. 错误
    B. 正确无忧答案网
6.C语言中,feof函数用来判断即将读入的是否是文件结束标志,它可用于二进制文件,但不能用于文本文件。(    )          (满分:2)
    A. 错误
    B. 正确
7.表达式 ’a’ 和 “a” 是不同的,前者长度为1,后者长度为2。(    )          (满分:2)
    A. 错误
    B. 正确无忧答案网
8.若有说明:int n=2,*p=&n,*q=p;,则以下非法的赋值语句是p=n;。(    )          (满分:2)
    A. 错误
    B. 正确
9.C语言中rewind函数使位置指针回到文件的开头位置,而fseek函数使位置指针移到指定的位置。(    )          (满分:2)
    A. 错误
    B. 正确
10.在C的if语句中,用作判断的表达式只能是关系表达式或逻辑表达式。(    )          (满分:2)
    A. 错误
    B. 正确
无忧答案网

游客,如果您要查看本帖隐藏内容请回复
快速回复 返回顶部 返回列表