沈阳大学计算机C语言练习
本试卷为沈阳大学计算机C语言练习,题目包括:单项选择题。
覆盖的内容包括:理论题,基础知识,控制结构,循环结构,指针,数组/指针数组,字符串/字符串指针,函数/函数指针,程序题,结构体,文件。
本卷包括如下题型:
计算机C语言练习
一、单项选择题 (共50题,每题2分,共计100分)
( D )
1、若已定义:int a[]={0,1,2,3,4,5,6,7,8,9},*p=a,i;其中0≤i≤9,则对a数组元素的引用不正确的是________。
( C )
2、下列描述中不正确的是________。
( C )
3、以下程序段________. x=-1; do { x=x*x; } while(!x);
( C )
4、以下选项中可作为c语言合法整数的是________。
( C )
5、以下叙述正确的是________。
( C )
6、以下选项中,能用作用户标识符的是________。
( A )
7、阅读以下程序 #include <stdio.h> main() { int case; float printf; printf("请输入2个数:"); scanf("%d %f",&case,&printf); printf("%d %f\n",case,printf); } 该程序在编译时产生错误,其出错原因是________。
( D )
8、程序段如下:则以下说法中不正确的是: 。 #include <stdio.h> main() { int k=2,; while(k<7) { if(k%2) { k=k+3; printf( " k=%d\n " ,k); continue; } k=k+1; printf( " k=%d\n " ,k); } }
( C )
9、设有说明 int (*ptr)[m]; 其中 ptr 是______。
( B )
10、下面程序输出数组中的最大值,由 s 指针指向该元素 . void main () { int a[10]={6 , 7 , 2 , 9 , 1 , 10 , 5 , 8 , 4 , 3 , } , *p , *s ; for ( p=a , s=a ; p-a<10 ; p++ ) if (________) s=p ; printf ( "the max : %d" , *s ): } 则在 if 语句中的判断表达式应该是______。
( A )
11、若 x 和 y 都是 int 型变量 ,x=100,y=200, 且有下面的程序片段 : printf("%d",(x,y)); 上面程序片段的输出结果是 _________.
( A )
12、在c语言中,以下说法不正确的是________。
( D )
13、下列函数原型声明中错误的是________。
( B )
14、二维数组m[i,j]的元素是4个字符(每个字符占一个存储单元)组成的串,行下标i范围从0到4,列下标,i的范围从0到5。m按行存储时元素m[3,5]的起始地址与m按列存储时元素( )的起始地址相同。
( D )
15、设a为int型变量,执行下列赋值语句后,a的取值分别为 ( ) a=125.534; a=20.0/3; a=20%3; a=(int)125%521%4; a=5<<2;
( C )
16、变量a所占的内存字节数是______。 union u{ char st[4]; int i; long l; }; struct A { int c; union u; } a;
( D )
17、表达式a+=a-=a=9的值是________。
( B )
18、下列选项中,值为1的表达式是________。
( B )
19、有以下程序段: int j; float y; char name[50]; scanf("%2d%f%s",&j,&y,name); 当执行上述程序段,从键盘上输入55566 7777abc后,y的值为
( B )
20、请读程序段:char str[]="abcd",*p=str; printf("%d\n",*(p+4)); 程序段的输出结果是 ______。
( A )
21、以下程序: #include<stdio.h> main() { char str[10]; scanf("%s",&str); printf("%s\n",str); } 运行上面的程序,输入字符串how are you,则程序的执行结果是________。
( D )
22、数字字符0的ascii值为48,若有以下程序 main() { char a=’1’,b=’2’; printf("%c,b++); printf("%d\n",b-a); } 程序运行后的输出结果是______。
( C )
23、若有如下定义并赋值: char ch='a', a; 则执行语句"printf("%d",a=ch+2.6); "后的输出结果是________。
( C )
24、有以下程序 #include<stdio.h> main () { int i, j, x = 0; for (i = 0; i < 2; i++) x++; for (j = 0; j <= 3; j++) { if (j % 2) continue; x++; x++; } printf ("x=%d\n", x); } 程序执行后的输出结果是______。
( C )
25、若有定义:float x=1.5; int a=1,b=3,c=2; 则正确的switch语句是________。
( D )
26、以下与函数fseek(fp,0l,seek_set)有相同作用的是______。
( B )
27、已知英文字母m的ascii码值为6dh,那么,码值为4dh的字母是______。
( D )
28、下面关于数组的初始化正确的是________。
( A )
29、若已有定义语句:inta,b, c; 且变量已正确赋初值,则以下选项中正确的赋值语句是________。
( B )
30、设ch是char型变量,其值为c,且有下面的表达式ch=(ch>='a'&&ch<='z')?(ch+32):ch上面表达式的值是______。
( C )
31、设 float f[10]; 则f数组中下标最大的元素的正确表示为________。
( B )
32、阅读下列程序: main( ) { int n[3],i,j,k; for(i=0;i<3;i++)n[i]=0; k=2; for(i=0;i<k;i++)for(j=0;j<k;j++)n[j]=n[i]+1; for(i=0;i<3;i++)printf(''%d'',n[i]); printf(''\n''); } 运行该程序,其输出结果是________。
( D )
33、下面定义结构变量的语句中错误的是________。
( B )
34、在c语言中,不允许有常量的数据类型是________。
( D )
35、以下叙述中正确的是________。
( A )
36、以下关于逻辑运算符两侧运算对象的叙述中正确的是________。
( C )
37、以下for语句构成的循环执行了______次。 #include <stdio.h> #define N 2 #define M N+1 #define NUM (M+1)*M/2 main() { int i,n=0; for(i=1;i<=NUM;i++) { N++; printf("%d",n); } printf("\n"); }
( C )
38、调试程序是指对程序进行
( C )
39、在c语言的函数中,下列正确的说法是________。
( A )
40、下列字符序列中,是c语言保留字的是________。
( B )
41、下列数据中属于"字符串常量"的是________。
( A )
42、若有 int a[10], *p=a; ,且 a 数组已赋值,则与 a[4]不等价的表达式为________。
( B )
43、下列程序的输出结果是________。 int b=2; int func(int *a) { b += *a; return(b); } main() { int a=2, res=2; res += func(&a); printf("%d \n",res); }
( A )
44、c风格的注释* c 风格的注释,也称块注释或多行注释,以 ▁▁▁ 开始,以 ▁▁▁ 结束。
( D )
45、若有代数式|x3+lgx|,则正确的c 语言表达式是________。
( D )
46、若有说明: int a[3][4]={0};则下面正确的叙述是()。
( C )
47、当顺利执行了文件关闭操作时,fclose 函数的返回值是()。
( B )
48、以下程序段的输出结果为()。 for(i=4;i>1;i--) for(j=1;j
( C )
49、以下叙述中错误的是________。
( C )
50、以下叙述中正确的是 ()。
相关标签:
- C语言
- 沈阳大学
- 练习