精心打造东北大学近四C语言理论考试试题及答案.doc
《精心打造东北大学近四C语言理论考试试题及答案.doc》由会员分享,可在线阅读,更多相关《精心打造东北大学近四C语言理论考试试题及答案.doc(23页珍藏版)》请在三一办公上搜索。
1、精心打造东北大学近四年C语言理论考试试题及答案!会有用的。东北大学C语言期末考试题及答案(1)1、构成C语言的基本单位是_B_。过程函数语句命令2、设x为整型变量,不能正确表达数学关系:5<x<10的c语言表达式是_B_。 5x>5&&x<10x=6|x=7|x=8|x=9!(x<=5)&&(x<10)3、在C语言中,逻辑运算符的优先级从高到低的排列顺序为_D_。&&、|、!|、&&、!&&、!、|!、&&、|4、下面语句中,正确的是_D_。printf(&quo
2、t;%cn","student");printf("%cn","c");printf("%sn",&a);printf("%sn","hello");5、对于for(表达式1;表达式3)可以理解为_B_。for(表达式1;0;表达式3)for(表达式1;1;表达式3)for(表达式1;表达式1;表达式3)for(表达式1;表达式3;表达式3)6、执行下面程序段的结果是_B_。 main() int x=1,a=0,b=0; switch(x) case 0:
3、b+; case 1:a+; case 2:a+;b+; printf("a=%d,b=%d",a,b); a=1,b=1a=2,b=1a=1,b=0a=2,b=27、执行下面程序段的结果是_D_。 int x=0; do printf(“-”,x-); while(x);打印出321打印出23不打印任何结果陷入死循环8、设x=10,y=5;z=15,执行下面一段程序后z的结果是_C_。 If(x>y) if(y>z)x=y; else z=y;76549、如果一个函数被说明为static,那么_B_。该函数只能被main函数调用该函数能被当前文件的函数调用,但
4、不能被其他文件的函数调用 该函数不能被当前文件的函数调用,可以被其他文件的函数调用 任何文件的函数都可以调用该函数10、下面关于局部变量的描述中,错误的是_D_。函数的局部变量的有效范围只能在本函数函数的形式参数也是局部变量局部变量的名称不能和函数同名称不同的函数中不能定义相同名称的局部变量11、下列初始化字符数组的语句中,错误的是_A_。char str5="hello"char str=h,e,l,l,o,0;char str5="hi"char str100=""12、引用数组元素时,数组下标可以是_D_。整型常量整型变量整型表
5、达式以上均可13、 已知:char str10,*p=str; 下面的语句中正确的是_B_。 str="ABC"p="ABC"*str="ABC"*p="ABC"14、下面语句中,错误的是_D_。int i;int *p;p=&i;int i,*p;p=&a;int i,*p=&a;int i,*p;*p=i;15、下面对于结构体类型的描述正确的是_A_。结构体类型的大小为各成员变量所占结构体类型的大小为其最后一个成员中所占内存空间的大小16、C语言规定:在一个源程序中,main函数的位置_
6、C_。 必须在最开始必须在系统调用的库函数的后面可以任意必须在最后17、表达式18/4*sqrt(4.0)/8值的数据类型是 _C_。intfloatdouble不确定18、在c语言中,char型数据在内存中的存储形式是 _D_。补码反码原码ASCII码19、阅读以下程序,当输入的数据形式为:25,13,10<CR>时,正确的输出结果为_D_。 main() int x,y,z; scanf("%d%d%d",&x,&y,&z); printf("x+y+z=%dn",x+y+z); x+y+z=48x+y+z=35x
7、+z=35不能确定20、有如下程序 void main() float x=2.0,y; if(x<0.0) y=0.0; else if(x<10.0) y=1.0/x; else y=1.0; printf(“%fn”,y); 该程序的输出结果是( C )。 0.0000000.2500000.5000001.00000021、判断char型变量s是否为小写字母的正确表达式是_C_。a<=s<=z(s>=a)&(s<=z)(s>=a)&&(s<=z)(a<=s)and(z>=s)22、执行以下语句后,y 的
8、值为_A_。 int x,y,z; x=y=z=0; +x | +y && +z; 012不确定值23、有如下程序段: int number=0; while(number+<=3) printf(“%dn”,number+); 则正确的执行结果是_C_。2 3 40 1 21 32 424、有如下程序 void main() int n=9; while(n>6) n-; printf(“%d”,n); 该程序段的输出结果是_B_。9878768765987625、要使以下程序段输出10个整数,请在空格中填入一个整数。for(i=0;i<=_B_;print
9、f("%dn",i+=2);1518201026、设函数fun的定义形式为: fun(char ch,float x) 则以下对函数fun的调用语句中正确的是_B_。fun(“abc”,3)t=fun(D,5)fun(ab,3)fun(78,1)27、函数求sum(int n)的功能是计算自然数1到n的和,即1+2+n。 Main() printf("The sum=%dn",sum (10); int sum(int n) int s=0,i; for(i=0;i<=n;i+) _B_ 请从备选答案中选择一答案,补全程序。s=s+n;return
10、 s;s=s+i;return s;return s;return s+=I;28、设函数fun的定义形式为 int fun(int a,int n) int s=0,i=0;for(i=0;i<n;i+)s+=ai; return s; main() int a10=1,2,3,4,5;printf("sum=%d", fun(&a2,2); 则程序的运行结果为_C_。357929、若有说明:int a10;则对数组元素的正确引用是_D_。a10a3,5a(5)a10-1030、以下不正确的定义语句是_B_。double x5=2.0,4,0,6,0,8,0
11、,10.0;int y5=0,1,3,5,7,9;char c1=1,2,3,4,5;char c2=x10,xa,x8;31、下面程序的运行结果是_B_。 #include "stdio.h" main() char str="SWLIA",c; int k; for(k=0;(c=strk)!=0;k+) switch(c) case I:+k;break; c SWASW*SW*ASW32、以下能正确进行字符串赋值操作的是_D_。char s5="12345"char s5=1,2,3,4,5,6;char *s;*s=&quo
12、t;12345"char *s="12345"33、以下程序段的运行结果是_C_。 Char a ="program", *p; p=a; while (*p!=g) printf("%c", *p-32); p+; PROgramPROGRAMPROproGRAM34、若有说明:char *pc ="aaa", "bbb", "ccc", "ddd",则以下叙述正确的是_C_。 *pc0代表的是字符串"aaa"的首地址*pc
13、0代表的是字符a的首地址pc0代表的是字符串"aaa"的首地址pc0代表的是字符a的首地址35、下列程序的运行结果是_B_。 #include <stdio.h> #include <string.h> void f (char *s, int n) char a,*q1,*q2; q1=s;q2=s+n-1; while(q1<q2) a=*q1+; *q1=*q2-; *q2=a; main() char b="ABCDEFG" f(b, sGAGGAGAAGAAGAGGFEDCBAAGADAGA36、定义如下的结构体描
14、述同学信息 struct Student unsigned long id; char name30; char class30; s; 假设此同学的序号为1002,姓名为黎明,班级为冶金班,则描述正确的为_C_。id=1002; name=黎明; class=冶金班;id=1002; name=”黎明”; class=”冶金班”;s.id=1002; s.name=“黎明”; s.class=”冶金班”;s.id=1002; s.name=黎明; s.class=冶金班;37、用来描述C程序中注释的是_C_。/ *38、下列变量中合法的定义是_A_。short _a=2-1long if=0
15、xabcLdouble 1_d=1.5e2float a=1.5e2.739、当c的值不为0时,能够将c的值赋给变量a和b的是_C_c=b=a(a=c)|(b=c)(a=c)&&(b=c)a=c=b40、设有以下程序段,执行后的输出结果是_B_ int x=100,y=200; printf("%d",(x,y);100200100,200编译出错东北大学C语言期末考试题及答案(2)1、若执行下面的程序时从键盘输入10,则输出是_B_ main( ) int a; scanf(“%d”,&a); if(a+>10) printf(“%dn”,+
16、a); else printf("%dn",a-); 12111092、执行下面程序段的结果是_D_ int x=0; do printf(“%2d”,x-);(x);打印出321打印出23不打印任何结果陷入死循环3、执行与句:for(n=0;n+<4; ); 后,变量n的值是_C_。345不定4、以下关于循环的描述中,错误的是_D_。可以用for语句实现的循环一定可以用while语句实现可以用while语句实现的循环一定可以用for语句实现可以用dowhile语句实现的循环一定可以用while语句实现dowhile语句与while语句的区别仅仅是关键字while的位
17、置不同5、下面的描述错误的是_C_。函数可以有多个形式参数函数可以没有返回值函数 while8、定义了int型二维数组a67后,数组元素a34前的数组元素个数为_B_。 242518179、下面语句中,错误的是_D_。int i; int *p; p=&i;int i,*p; p=&a;int i,*p=&a;int i,*p; *p=i;10、 已知int型二维数组a34,数组元素a12的地址不能表达为_C_。 &a12a1+2*a1+2*(a+1)+211、C语言中,5种基本数据类型的存储空间长度的排列顺序为_A_。charchar=intcharchar=
18、int=long int<=float12、假设所有变量均为整型,则表达式(a=2,b=5,b+,a+b)的值是 _B_。786213、若有说明语句:char c=72;则变量c _A_。包含1个字符包含2个字符包含3个字符说明不合法,c的值不确定14、若x,y均定义为整型,z定义为double型,以下不合法的scanf函数调用语句是_C_。 scanf("%d%lx,%le",&x,&y,&z);scanf("%2d * %d%lf",&x,&y,&z);scanf("%x%*d%o&qu
19、ot;,&x,&y,&z);scanf("%x%o%6.2f",&x,&y,&z);15、若输入字符串:abcde<回车>,则以下while循环体将执行_A_次。while(ch=getchar()=e) printf("*");1次死循环0次5次16、执行下面的程序段后,k的值是_C_。 k=1;n=263; dok*=n%10;n/=10;while(n); 36336217、下面程序段中循环的执行次数是_B_。 a=10;b=0; dob+=2;a-=2+b;while(a>=0);
20、 1035418、下面程序段的运行结果是_D_。 x=2; doprintf("*");x-;while(!x=0); *没有输出*19、下面程序段的运行结果是_B_。 i=1;s=1;a=0;doa=a+s*i;s=-s;i+;while(i<=10); printf("%d",a);2-23 20、有如下程序 void main() int a=2,b=-1,c=2; if(a) if(b<0) c=0; else c+; printf("%dn",c); 该程序的输出结果是_A_。 12321、程序中对fun函数有如
21、下说明 void fun(); 下面说明是错误的是_B_。 fun函数无返回值fun函数的返回值可以是任意的数据类型fun函数没有形式参数void 可以省略22、函数求sum(int n)的功能是计算自然数1到n的和,即1+2+n。 main() printf("The sum=%dn",sum (10); int sum(int n) int s=0,i; for(i=0;i<=n;i+) _B_ 请从备选答案中选择一答案,补全程序。s=s+n; return s;s=s+i; return s;return s;return s+=i;23、 有以下程序 int
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 精心 打造 东北大学 语言 理论 考试 试题 答案
链接地址:https://www.31ppt.com/p-4117887.html