程序设计基础在线作业
一共有十五个优先级:  1 () [] . -> 2 ! ~ -(负号) ++ -- &(取变量地址)* (type)(强制类型) sizeof  3 * / %  4 + -  5 >> <<  6 > >= < <=  7 == !=  8 &  9 ^  10 |  11 && 12 || 13 ?: 14 = += -= *= /= %= |= ^= &= >>= <<= 15 , 就着多吧 结合性:2 13 14 是从右至左 其他都是 从左至右
单项选择题:
1.在位运算中,操作数每右移一位,其结果相当于( 操作数除以2 )。
2.设有如下定义:structsk{int a;float b;}data,*p;若要使p指向data中的a域,正确的赋值语句是(p=(structsk*)&data .a)
3.以下叙述中错误的是(不可以用FILE定义指向二进制文件的文件指针。)
4.Int a=1,b=2,c=3;if(a>b)a=b;if(a>c)a=c;则a的值为(1)
5.以下选项中合法的实型常数是(0.2)A:5E2.0 B:E-3 D:1.3E
6.若有下列定义和语句,则对a数组元素的非法引用是(*(pt+1)[2]),Int a[2][3],(*pt)[3];pt=a;
7.若k为int型变量,则以下程序段的执行结果是(输出为/%06D/)。K=-8567;printf(/%06D/\n,k);
8.用户定义的函数不可以调用的函数是(main函数)。
9.Char a[]=Thisisaprogram.;输出前5个字符的语句是( printf(%5s,a)  )
10.已知函数的调用形式fread(buffer,size,count,fp);其中buffer代表的是(一个指针,指向要读入数据的存放地址)
11.下面有关for循环的正确描述是( for循环的循环体语句中,可以包含多条语句,但必须用花括号括起来。)
12.要打开A盘上user子目录下名为的文本文件进行读、写操作,下面符合此要求的函数调用是(fopen(A\,r
13.以下正确的说法是(用户可以重新定义标准库函数,若如此,该函数将失去原有含义。)
14.以下正确的说法是:在C语言中(实参和与其对应的形参各占用独立的存储单元。)
15.若使用一维数组名作函数实参,则以下正确的说法是(必须在主调函数中说明此数组的大小)
16.关于建立函数的目的,以下正确的说法是(提高程序的可读性)
17.下列程序的输出结果是(97b)。main(){char c1=97,c2=98;print(%d%c,c1,c2);}
18.以下程序的输出结果是(321)。
Main(){chars[]=123,*p;p=s;printf(“%c%c%c\n,*p++,*p++,*p++);}
19.语句while(!E);中的表达式!E等价于(E==0)
20.下列程序的输出结果为(27)。
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);}
21.已知x=43, ch=A, y=0;则表达式(x>=y&&ch<B&&!y)的值是(1)。
22.下列标识符中,不合法的C语言用户自定义标识符是(enum)
23.以下只有在使用时才为该类型变量分配内存的存储类说明是(auto和register)
24.下列程序的输出结果是(a=2,b=1)。Main(){int x=1,y=0,a=0,b=0;switch(x)……
25.该变量a是整型,f是实型,i是双精度型,则表达式10+a+i*f值的数据类型为(double)
26.以下数值中,不正确的八进制数或十六进制数是(-16)
27.若有int i=3,*p;p=&i;下列语句中输出结果为3的是(printf(%d,*p))
28.若有说明.int I,j=2,*p=&I;则能完成i=j赋值功能的语句是(*p=*&j)a<<
29.若fp是指向某文件的指针,且已读到此文件末尾,则库函数feof(fp)的返回值是(非零值)
30.凡是函数中未指定存储类别的局部变量,其隐含的存储类别为(自动auto)。
31.C语言中,定义结构体的保留字是(struct).
32.若二维数组a有m列,则在a[i][j]前的元素个数为(i*m+j).
33.C语言中要求对变量作强制定义的主要理由是(便于确定类型和分配空间)。
34.在调用函数时,如果实参是简单变量,它与对应形参之间的数据传递方式是(单向值传递)
35.以下运算符中优先级最低的是(||)。
36.函数的形式参数隐含的存储类型说明是(auto).
37.Int a[10];合法的数组元素的最小下标值为(0)A:10, B:9, C:1.
38.若有说明int a[3][4];则a数组元素的非法引用是(a[0][4]).
39.以下对C语言函数的描述中,正确的是(C程序必须由一个或一个以上的函数组成)。
40.应用缓冲文件系统对文件进行读写操作,关闭文件的函数名为(fclose())。
41.若执行函数时发生错误,则函数的返回值是(0)。
42.下列程序段的输出结果为(3)。Int x=3,y=2;printf(%d,(x-=y,x*=y+8/5))。
43.以下语句中,不能实现回车换行的是(putchar(\n)).
44.若有inta[10]={0,1,2,3,4,5,6,7,8,9},*p=a;则输出结果不为5的语句为(printf(%d,*p[5])).
45.下列程序运行的结果是(运行出现错误)。Main(){int i=1,sum=0;while(i<10)sum=sum+1;………sum.
46.下列程序段的输出结果为(0085.7%).Float k=0.8567;………k*100).
47.对以下说明语句int a[10]={}6,7,8,9,10};的正确理解是(将5个初值依次赋给a[0]至[4]).
48.设有说明.char w;int x;float y;double z;则表达式w*x+z-y值的数据类型为(double)
49.以下的选择中,正确的赋值语句是(a=b=5)
50.结构体类型的定义允许嵌套是指(成员是已经或正在定义的结构体型)
51.在C语言中,char型数据在内存中的存储形式是(ASC||码)。
52.Fgets(str,n,fp)函数从文件中读入一个字符串,以下正确叙述是(fgets函数将从文件最多读入n-1个字符)
53.若x=2,y=3则x&y的结果是(2)
54.若用数组名作为函数的实参,传递给形参的是(数组的首地址)
整型常量合法要求55.函数rewind的作用是(使位置指针重新返回文件的开头)
56.可将C源程序存在磁盘上,还可将数据按数据类型分别以(文件)的形式存在磁盘上。
57.以下叙述中不正确的是(在C程序中,赋值运算符的优先级最低)
58.变量的指针,其含义是指该变量的(地址)
59.以下选项中,与k=n++完全等价的表达式是(k=n,n=n+1)
60.设int x=1,y=1;表达式(!x||y--)的值是(1)
61.在C语言中,能代表逻辑值“真”的是(非0的数)
62.经过下列的语句int j,a[10],*p;定义后,下列语句中合法的是(p=p+2)
63.以下错误的描述是:函数调用可以(做为一个函数的形参)
64.C语言中,要求运算数必须是整型的运算符是(%)
65.执行以下程序段后,输出结果和a的值是(10和11)。Int a=10;a++)
66.C语言中的文件类型只有(ASC||文件和二进制文件两种)
67.Static struct{int a1;float a2---{1,3,5,A},---下标变量是(a[0])
68.若有int*p=(int*)mall---(int));存入整数123的语句为(scanf(%d,p)
69.在C语言中,形参的缺省存储类是(auto)
70.下列四个选项中,均是C语言关键字的选项是(switch, typedef, continue)
71.逻辑运算符两侧运算对象的数据类型(可以是任何类型的数据)
72.设C语言中,int类型数据占2个字节,则short类型数据占(2个字节)
73.若有以下的定:int t[3][2];能正确表示t数组元素地址的表达式是(t[2])
74.double x;scanf(%lf”,&x);不可以赋值给x变量的常量是(abc)
75.以下运算符中,优先级最高的运算符是(%)
76.以下标识符中,不能作为合法的C用户定义标识符的是(putchar)
77.以下叙述中正确的是(宏替换不占用运行时间,只占编译时间)
78.
多项选择题
1.以下关于数组描述错误的是(1数组--,但可以--。2数组--,但所有--。3数组--,可以有--。)
2.在定义int a[2][3];之后,对a的引用正确的有(1:a[0][2]; 2: a[1>2][!1])
3.以下选项中合法的表达式是(1: 0<=x<100, 2: i=j=0, 3: (char)(65+3))
4.下面那些为合法整型常量(1:190, 2: 0xf, 3:765
5.以下描述错误的是(1:在循环体内使用break语句--相同。2:从多重循环嵌套中退出是,
只能使用goto语句。)
6.下列选项中是C语言合法标志符的有(1:good_morning 2:main)
7.以下对C语言中的函数描述不正确的有(1:可以--,不可以2:可以--,也可以3:嵌套定义不允许)
8.以下关于typedef的叙述正确的是(1:用typedef变量。2:用typedef来代表。3:使用typedef通用)
9.关于for(表达式1,表达式2,表达式3)循环,以下正确的是(1:表达式1可以省略。2:表达式2可以省略。3:表达式3可以省略)
10.以下选项中,合法的字符常量是(1:\17 2:\t 3:\xaa
11.对do-while语句描述正确的是(1:do-while,可以使用break--.2: do-while,表达式值为零--。)
12.定义c为字符型变量,则下列语句中错误的是(1:c=97 2:c=97  3:c=a
13.以下叙述正确的是(1:预处理“#”开始。2:在程序中处理命令行。3:#defineABCD是正确的宏定义)
14.t为int类型,进入下面的循环之前,t的值为0do{}while(t==1);则以下叙述中正确的是(1:循环为0. 2:循环控制表达式合法)