C语言上机考试填空题

2019-06-02 16:59

二,填空题(10道小题,共20分)

1、一个C源程序中至少应包含一个[main] 函数。

2、a是整型变量,则执行表达式a=25/3%3后a的值为。[2]

3、int m=5,y=2;则表达式y+=y- =m*=y的值为。[-16] 4、执行下列语句: int a=1, b=2; a=a+b; b=a-b; 是 。[4字节]

12、已有定义 :int x=3 ;则表达式 :x=x+1.78 的值是 。【4】

13、int a=24; printf(\输出结果是 。【30】

14、当a=3,b=2,c=1时,表达式f=a>b>c的值是 。【0】

15、下面程序的运行结果是 。【x=1,y=20】 #include a=a-b; printf(\的输出结果分别是[2,1] 5、条件表达式的格式为表达式1?表达式2:表达式3,若表达式2和表达式3的类型不同,此时条件表达式的值的类型为二者中较[高]的类型

6、当运行以下程序时,从键盘键入right?(代表回车),则下面程序的运行结果是。 #include main( ) { char c;

while((c=getchar())! ='?') putchar(++c) }

[sjhiu?]

7、C语言中的数组必须先[定义],然后使用。 8、如果需要从被调用函数返回一个函数值,被调用函数必须包含【return】语句。

9、已知:float f1=3.2,f2,*pf1=&f1;f2=f1,则*f2的值为。[3.2]

10、以下程序

void fun(char *a, char *b) { a=b; (*a)++; } main ()

{ char c1=\p1=&c1; p2=&c2; fun(p1,p2); printf(“&c&c\\n”,c1,c2); }

运行后的输出结果是 。[&c&c]

11、字符串常量“123”在内存中的字节数

main() { int i,x,y; i=x=y=0; do {++i;

if(i%2!=0) {x=x+i;i++;} y=y+i++;

} while (i<=7);

printf(\}

16、以下语句char str[10]={\printf(\的输出结果是 。[5] 17、为了便于区别全局变量和局部变量,通常将全局变量的首字母 。[用大写字母表示] 18、已知:int b=5,*p=&b;并且b的地址为4000,则“printf(\”的输出结果是 。【4000,5】 19、程序main()

{ int a[2][3]={{1,2,3},{4,5,6}}; int m,*ptr; ptr=&a[0][0];

m=(*ptr)*(*(ptr+2))*(*(ptr+4)); printf(\}

的运行结果是 。【15】

20、引用C语言标准库函数,一般要用【文件包含】 预处理命令将其头文件包含进来。 21、在C语言程序中,符号常量的定义要使用【宏定义】 预处理命令。

22、逻辑运算符!是[自右至左] 结合性。 23、下面的程序的运行结果是 。【s=254】 #include main( )

{int a,s,n,count;

a=2;s=0;n=1;count=1;

1

while(count<=7) {n=n*a; s=s+n; ++count;}

printf(\}

24[strcat] (字符数组名1,字符数组名2)把字符数组2中的字符串连接到字符数组1 中字符串的后面,并删去字符串1后的串标志“\\0”。

25、C语言允许函数值类型缺省定义,此时该函数值隐含的类型是[整形] 。

26、数组在内存中占用一段连续的存储空间,它的首地址由 【数组名】表示

27若有定义:int a[2][3]={2,4,6,8,10,12};则*(&a[0][0]+2*2+1)的值是 【12】 28、在一个C源程序中,注释部分二侧的分界符为 。【/*和*/】

29、在C语言程序中,转义字符“\\n”的功能是 [换行] 。

30、当a=5,b=4,c=2时,表达式a>b!=c的值是 。【1】 32、在C语言程序中,用关键字 char定义字符型变量。

33若m是一个三位数,则百位数字为

m/100 34、执行下列语句:float a; int b; a = b =24.5/5; printf(“%f,%d” , a, b); 输出结果是 【4.000000,4】

35、若x和n均是int型变量,且x和n的初值均为5,则计算表达式x+=n++后x的值为10,n的值为6 36、若a=6,b=4,c=2,则表达式!(a-b)+c-1&&b+c/2的值是 。[1]

37、当运行以下程序时,从键盘输入-1 0(表示回车),则下面程序的运行结果是 。[m=4,n=2] #include main()

{ int a,b,m,n; m=n=1;

scanf(\

do{ if(a>0) {m=2*n; b++;} else{n=m+n; a+=2; b++;} }while(a==b); printf(\}

38、C语言规定了以字符[‘\\0’] 作为字符串结束标志。 39、如果一函数只允许同一程序文件中的函数调用,则应在该函数定义前加上[static] 修饰。

40、对数组元素的引用方法有下标法和[指针法] 两种。

41、对于“int a[4];”可理解为数组a有4个元素,每个元素都是整型数据,那么,对于“int *a[4];”的理解就是数组a有4个元素,每个元素都是[指针变量] 。 42、在C语言中,八进制整型常量以【0】 作为前缀。

43、已有定义 :int x=0,y=0;, 则计算表达式 :(x+=2,y=x+3/2,y+5) 后 , 表达式的值是 。【8】

44、下面程序段的运行结果是 【a=-5】。 int i=1,a=0,s=1;

do{a=a+s*i; s=-s; i++;} while (i<=10); printf(\

45、要使指针变量与变量之间建立联系,可以用运算符[*] 来定义一个指针变量 46、设int a[10],*p=a;则对a[3]的引用可以是p[3]或 [*(p+3)]。

47、C语言程序是由[函数] 构成的。

48、在C语言程序中,用关键字 【float】定义单精度实型变量。

49、若m是一个三位数,则十位数字为 [m/10-m/100*10]。

50、int a=24; printf(\输出结果是 。[18]

51、设x,y,z均为int型变量,请写出描述“x或y中有一个小于z”的表达式 。 [x

52、下面程序的运行结果是 。[x=1,y=20] #include main() { int i,x,y;

2

i=x=y=0; do {++i;

if(i%2!=0) {x=x+i;i++;} y=y+i++;

} while (i<=7);

printf(\}

53、形式参数也是【局部】变量。 54、以下程序 #include

fun(int x, int y, int *cp, int *dp) {

*cp=x+y; *dp=x-y; }

main( ) {

int a,b,c,d; a=30; b=50;

fun(a, b, &c, &d); printf(\return 0; }

输出结果是 。 【80,-20】 55、程序main()

{ int a[2][3]={{1,2,3},{4,5,6}}; int m,*ptr; ptr=&a[0][0];

m=(*ptr)*(*(ptr+2))*(*(ptr+4)); printf(\}

的运行结果是【15】

56、运算符%、*=、||、==中,优先级最低的是 。【*=】

57、在C语言中,\在内存中占【2】字节。 58、设y为int型变量,请写出描述“y是偶数”的表达式 。【y%2==0】

59、下面程序段中循环体的执行次数是[3次]。 a=10; b=0;

do{b+=2;a-=2+b; }while (a>=0); 60、程序的输出值是 。 [10] #include

void f(int *p) { *p=10; }

int *p; void main( ) { f(p);

printf(\} 61、在C语言的赋值表达式中,赋值号左边必须是[变量]。

62、当a=3,b=2,c=1时,表达式f=a>b>c的值是 。【0】

63、以下程序的输出结果是 。 [5,2,3] #include

int sub(int x, int y, int *z) { *z=x-y; } main( ) {

int a,b,c;

sub(10,5,&a); sub(7,a,&b); sub(a,b,&c);

printf(\return 0; }

64、下面程序的输出是 。 [k=2 a=3 b=2] #include

main(int argc, char argv[ ]) {

char *s=\int k=0, a=0, b=0; do { k++;

if(k%2==0) {

a=a+s[k]-'0'; continue; }

b=b+s[k]-'0'; a=a+s[k]-'0';

3

}while (s[k+1]); printf(\return 0; }

65、运算符的结合性有[2]种。

66、己有定义 :float f=13.8;, 则表达式 :(int)f% 3 的值是 [1]。

67、判断char型变量ch是否为大写字母的正确表达式是[ch>=’A’&&ch<=’Z’]。 68、下面程序段的运行结果是 [a=-5] 。 int i=1,a=0,s=1;

do{a=a+s*i; s=-s; i++;} while (i<=10); printf(\

69、C语言中的字符数组中的一个元素存放[1]个字符。

70、已知:int a[5],*p=a;则p指向数组元素a[0],那么p+1指向 [a[1]]。 71、设有如下定义:

int a[5]={0,1,2,3,4},*p1=&a[1],*p2=&a[4];则p2-p1的值为 。[3]

72、己有定义 :float f=13.8;, 则表达式 :(int)f% 3 的值是 。[1]

73、下面程序段的运行结果是 [a=-5]。 int i=1,a=0,s=1;

do{a=a+s*i; s=-s; i++;} while (i<=10); printf(\

74、已知:int a[5],*p=a;则p指向数组元素a[0],那么p+1指向[a[1]] 。

75、引用C语言标准库函数,一般要用 [文件包含]预处理命令将其头文件包含进来。 76、在C语言中,运算符++和—的运算量必须是 【变量】。

77、逻辑运算符!是【自右至左】结合性。 78、下面的程序的运行结果是 。【s=25】 #include main( )

{int a,s,n,count;

a=2;s=0;n=1;count=1;

while(count<=7) {n=n*a; s=s+n; ++count;}

printf(\}

79、局部变量只在该[函数]有效。

80、设char *s=”\\ta\\017bc”; 则指针变量s

指向的字符串所占的字节数是 【6】个 81、以下程序的输出结果是 。【10】 main()

{ int arr[ ]={30,25,20,15,10,5}, *p=arr; p++;

printf(“%d\\n”,*(p+3));

} 82、在C语言中,八进制整型常量以【0】 作为前缀。 83、表达式3.6/6+1/2+55的值是 。【5.6】 85、C语言的三种逻辑运算符中优先级最高的为【逻辑非!】 。 86、[全局变量] 可以被本文件中的其他函数所共用。 87、以下程序 #include

fun(int x, int y, int *cp, int *dp) {

*cp=x+y; *dp=x-y; }

main( ) {

int a,b,c,d; a=30; b=50;

fun(a, b, &c, &d); printf(\return 0; }

输出结果是 。【80,-20】

88、int a=2,b=3;float x=3.5,y=2.5;则表达式(float)(a+b)/2+(int)x%(int)y的值为 。【3.5】 89、下面程序的运行结果是 。[1,-2] y=2;a=1; while(y--!=-1)

{do{a*=y; a++;}while(y--);} printf(\

90、用数组元素作为函数的实参时,与用变量做实参一样,是[值]传递。 91、以下程序的输出结果是 。【5,2,3】 #include

int sub(int x, int y, int *z) { *z=x-y; }

4

main( ) {

int a,b,c;

sub(10,5,&a); sub(7,a,&b); sub(a,b,&c);

printf(\return 0; }

92、程序main() { int a[3][4]={1,3,5,7,9,11,13,15,17,19,21,13}; int (*ptr)[4]; int sum=0,i,j; ptr=a;

for (i=0;i<3;i++) for (j=0;j<2;j++)

sum+=*(*(ptr+i)+j); printf(\}

的运行结果是 。【60】

93、字符串常量“123”在内存中的字节数是 。【4】

94、当a=3,b=2,c=1时,表达式f=a>b>c的值是 。【0】

95、按序排列的同类型变量的集合称为【数组】

96、C语言中按函数在程序中出现的位置来分,函数的调用有函数语句、函数参数和【函数表达式】 三种方式。 97、请定义一个指向字符类型数据的指针变量p, 。【char *p ;】 98、请定义一个指向指针数据的指针变量p,其基类型是字符型 。[char**p]

100、下面的程序的运行结果是 。[s=254] #include main( )

{int a,s,n,count;

a=2;s=0;n=1;count=1;

while(count<=7) {n=n*a; s=s+n; ++count;}

printf(\

}

101、如果被调用函数的实参列表包含多个实参,则各参数间用[逗号] 隔开。(使用汉字填

102、下列程序段的输出结果是 。【1,23 4】 void fun(int *x, int *y) { printf(“%d ,%d”, *x, *y); *x=3; *y=4; }

main()

{ int x=1,y=2; fun(&x,&y);

printf(“%d %d”,x, y); }

103、设int a[10],*p=a;则对a[3]的引用可以是p[3]或【*(p+3)】 。

104、double d1=1.2,d2=2.4;将表达式d1+2*d2强制转换为整型值的语句是 。[(int)(d1+2*d2);]

105、定义一个整型数组a[10],则下标最大的数组元素为[a[9]] 。

106、要使指针变量与变量之间建立联系,用运算符[*] 来建立指针变量与变量之间的联系。

107、下列程序的输出结果是 [0]。 void fun(int *n) { while( (*n)--);

printf(“%d”,++(*n)); }

main()

{ int a=100; fun(&a);

}

108、char c=’\\010’;则变量c中包含字符的个数为[1] 。

109、int m=5,y=2;则表达式y+=y- =m*=y的值为 。[-16] 110、以下程序 #include

fun(int x, int y, int *cp, int *dp) {

*cp=x+y;

5


C语言上机考试填空题.doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:防汛演练流程

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: