当前位置:文档之家› 西安交通大学16年9月课程考试作业考核试题程序设计基础(高起专)

西安交通大学16年9月课程考试作业考核试题程序设计基础(高起专)

一、单选题(共 30 道试题,共 60 分。

)1. 要打开A盘上user子目录下名为abc.txt的文本文件进行读、写操作,下面符合此要求的函数调用是()。

A. fopen("A.\user\abc.txt","r")B. fopen("A.\\user\\abc.txt","r+")C. fopen("A.\user\abc.txt","rb")D. fopen("A.\\user\\abc.txt","w")2. 若使用一维数组名作函数实参,则以下正确的说法是()。

A. 必须在主调函数中说明此数组的大小B. 实参数组类型与形参数组类型可以不匹配C. 在被调用函数中,不需要考虑形参数组的大小D. 实参数组名与形参数组名必须一致3. fgets(str,n,fp)函数从文件中读入一个字符串,以下正确的叙述是()。

A. 字符串读入后不会自动加入'\0'B. fp是file类型的指针C. fgets函数将从文件中最多读入n-1个字符D. fgets函数将从文件中最多读入n个字符4. 设C语言中,int类型数据占2个字节,则short类型数据占()。

A. 1个字节B. 2个字节C. 4个字节D. 8个字节5. 若有int i=3,*p;p=&i;下列语句中输出结果为3的是()。

A. printf("%d",&p);B. printf("%d",*i);C. printf("%d",*p);D. printf("%d",p);6. 下列标识符中,不合法的C语言用户自定义标识符是()。

A. printfB. enumC. _D. sin7. 以下只有在使用时才为该类型变量分配内存的存储类说明是()。

A. auto和staticB. auto和registerC. register和staticD. extern和register8. 若k为int型变量,则以下程序段的执行结果是()。

k=-8567;printf("|%06D|\n",k);A. 格式描述符不合法,输出无定值B. 输出为|%06D|C. 输出为|0-8567|D. 输出为|-8567|9. 已知x=43,ch='A',y=0;则表达式(x>=y&&ch<'B'&&!y)的值是()。

A. 0B. 语法错C. 1D. "假"10. C语言中,要求运算数必须是整型的运算符是()。

A. ^B. %C. !D. >11. 设变量a是整型,f是实型,i是双精度型,则表达式10+'a'+i*f值的数据类型为()。

A. intB. floatC. doubleD. 不确定12. 以下叙述中不正确的是()。

A. 一个好的程序应该有详尽的注释B. 在C程序中,赋值运算符的优先级最低C. 在C程序中,j++;是一条赋值语句D. C程序中的#include和#define均不是C语句13. 以下运算符中,优先级最高的运算符是()。

A. =B. !=C. *(乘号)D. ()14. C语言中的文件类型只有()。

A. 索引文件和文本文件两种B. ASCII文件和二进制文件两种C. 文本文件一种D. 二进制文件一种15. 下列程序段的输出结果为()。

Float k=0.8567;printf("%06.1d%%",k*100);A. 0085.6%%B. 0085.7%%C. 0085.6%D. .85716. 以下对C语言函数的描述中,正确的是()。

A. C程序必须由一个或一个以上的函数组成B. C函数既可以嵌套定义又可以递归调用C. 函数必须有返回值,否则不能使用函数D. C程序中有调用关系的所有函数必须放在同一个程序文件中17. 若有下列定义和语句,则对a数组元素的非法引用是()。

Int a[2][3],(*pt)[3];pt=a;A. pt[0][0]B. *(pt+1)[2]C. *(pt[1]+2)D. *(a[0]+218. static struct {int a1;float a2;char a3;}a[10]={1,3.5,'A'};说明数组a是地址常量,它有10个结构体型的下标变量,采用静态存储方式,其中被初始化的下标变量是()。

A. a[1]B. a[-1]C. a[0]D. a[10]19. 以下标识符中,不能作为合法的C用户定义标识符的是()。

A. putcharB. _doubleC. _123D. INT20. 以下选项中,与k=n++完全等价的表达式是()。

A. k=n,n=n+1B. n=n+1,k=nC. k=++nD. k+=n+121. 下列程序的输出结果是()。

main(){intx=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);}A. a=1,b=0B. a=2,b=1C. a=1,b=1D. a=2,b=222. 对以下说明语句int a[10]={6,7,8,9,10};的正确理解是()。

A. 将5个初值依次赋给a[1]至a[5]B. 将5个初值依次赋给a[0]至a[4]C. 将5个初值依次赋给a[6]至a[10]D. 因为数组长度与初值的个数不相同,所以此语句不正确23. 函数rewind的作用是()。

A. 使位置指针重新返回文件的开头B. 将位置指针指向文件中所要求的特定位置C. 使位置指针指向文件的末尾D. 使位置指针自动移至下一个字符位置24. 若用数组名作为函数的实参,传递给形参的是()。

A. 数组的首地址B. 数组第一个元素的值C. 数组中全部元素的值D. 数组元素的个数25. 下列程序的输出结果为()。

main(){intm=7,n=4;floata=38.4,b=6.4,x;x=m/2+n*a/b+1/2;printf("%f\n",x);}A. 27.000000B. 27.500000C. 28.000000D. 28.50000026. 若二维数组a有m列,则在a[i][j]前的元素个数为()。

A. j*m+IB. i*m+jC. i*m+j-1D. i*m+j+127. 若有说明int a[3][4];则a数组元素的非法引用是()。

A. a[0][2*1]C. a[4-2][0]D. a[0][4]28. 以下叙述中错误的是()。

A. 二进制文件打开后可以先读文件的末尾,而顺序文件不可以B. 在程序结束时,应当用fclose函数关闭已打开的文件C. 在利用fread函数从二进制文件中读数据时,可以用数组名给数组中所有元素读入数据D. 不可以用FILE定义指向二进制文件的文件指针29. 下列四个选项中,均是C语言关键字的选项是()。

A. auto、enum、includeB. switch、typedef、continueC. signed、union、scanfD. if、struct、type30. 以下叙述正确的是()。

A. 在C程序中,main函数必须位于程序的最前面B. C程序的每行中只能写一条语句C. C语言本身没有输入输出语句D. 在对一个C程序进行编译的过程中,可发现注释中的拼写错误二、多选题(共 10 道试题,共 20 分。

)1. 下列为c语言的关键字是()A. ifB. structC. unionD. Int2. 在定义int a[2][3];之后,对a的引用正确的有()。

A. a[0][2]B. a[1,3]C. a[1>2][!1]D. a[2][0]3. 下面那些为合法整型常量()A. 190B. 0xfC. 0765D. 0xk4. 以下合法的十六进制数是()。

B. 0XabcC. 0x01D. 0X9X5. 以下4个选项中,可以看作是一条语句的有()。

A. {;}B. a=0,b=0,c=0;C. if(a>0);D. if(b==0)m=1;n=2;6. 以下关于数组描述错误的是()。

A. 数组的大小是固定的,但可以有不同的类型的数组元素B. 数组的大小是可变的,但所有数组元素的类型必须相同C. 数组的大小是固定的,所有数组元素的类型必须相同D. 数组的大小是可变的,可以有不同的类型的数组元素7. 正确的if语句形式是()。

A. if(x>y&&x!=y);B. if(x==y)x+=y;C. if(x!=y)scanf("%d",&x)elsescanf("%d",&y);D. if(x<y){x++;y++;}8. 有定义语句.int x,y;若要通过scanf("%d,%d",&x,&y);语句使变量x得到数值11,变量y得到数值12,下面四组输入形式中,正确的有()。

A. 1112<回车>B. 11,<空格>12<回车>C. 11,12<回车>D. 11,<回车>12<回车>9. 以下不正确的叙述是A. 在C程序中,每行只能写一条语句B. 若a是实型变量,C程序中允许赋值A=10,因此实型变量中允许存放整型C. 在C程序中,无论是整数还是实数,都能被准确无误地表示D. 在C程序中,%是只能用于整数运算的运算符10. 关于while语句与do-while语句,以下正确的是()。

A. while是当型结构B. do-while是直到型结构C. 两者有区别D. 两者无区别三、判断题(共 10 道试题,共 20 分。

)1. continue语句可用于switch语句,也可用于for、while和do循环语句中。

()A. 错误B. 正确2. #define命令是在编译之前处理的。

()A. 错误B. 正确3. C语言中,feof函数用来判断即将读入的是否是文件结束标志,它可用于二进制文件,但不能用于文本文件。

相关主题