《C语言基础》专升本各章节主观题练习汇总
C语言基础专升本各章节主观题练习汇总第二章 数据类型和运算符二、填空题1C源程序的基本单位是_。2一个C源程序中至少应包括一个_。3在一个C源程序中,注释部分两侧的分界符分别为_和_。4若x、i、j、和k都是int型变量,则计算下面表达式后,x的值为_。x=(i=4,j=16,k=32)5在C语言中(以16位PC机为例),一个float型数据在内存中所占的字节数为_;一个double型数据在内存中所占的字节数为_。6若有以下定义,则计算表达式y+ =y - =m*=y后的y 值是_。 int m=5,y=2;7设C语言中,一个int型数据在内存中占2个字节,则int型数据的取值范围为_。8在C语言中的实型变量分为两种类型,它们是_和_。9C语言所提供的基本数据类型包括:单精度型、双精度型、_、_、和_。10若s是int型变量,则下面表达式的值为_。s%2+(s+1)%211若a是int型变量,则下面表达式的值为_。(a= 4*5,a*2),a+612若x和a均是int型变量,则计算表达式(1)后的x值为_,计算表达式(2)后的x值为_。(1)x=(a=4,6*2)(2)x=a=4,6*213若a是int型变量,且a的初值为6,则计算表达式后a的值为_。 a+=a-=a*a14若a是int型变量,则计算表达式后a的值为_。a=25/3%315若x和n均是int型变量,且x和n的初值均为5,则计算表达式后x的值为_,n的值为_。x+=n+16若有定义:int b=7;float a=2.5,c=4.7;则下面表达式的值为_。a+(int) (b/3*(int)(a+c)/2)%417若有定义:int a=2,b=3;float x=3.5,y=2.5;则下面表达式的值为_。(float)(a+b)/2+(int)x % (int)y18若有定义:char c=010;则变量c中包含的字符个数为_。19若有定义:int x=3,y=2;float a=2.5,b=3.5;则下面表达式的值为_。(x+y)%2+(int)a/(int)b20若x和n均是int型变量,且x的初值为12,n的初值为5,则计算表达式后x的值为_。x%=(n%=2)21假设所有变量均为整型,则表达式(a=2,b=5,a+,b+,a+b)的值为_。22C语言中的标识符只能由三种字符组成,它们是_,_和_。三、写出程序的运行结果1、有以下程序main() int m=12,n=34;printf("%d%d",m+,+n);printf("%d%dn",n+,+m);程序运行后的输出结果是2、以下程序运行后的输出结果是main() int m=3,n=4,x;x=-m+;x=x+8/+n;printf("%dn",x);第三章顺序结构程序设计二、填空题1、假设变量a和b均为整型,以下语句可以不借助任何变量把a、b中的值进行变换。请填空。a+=_;b=a-_;a-=_;2、若a和b均为int型变量,则以下语句的功能是_。a+=b;b=a-b;a-=b;3、有一输入函数scanf(%d,k);则不能使float类型变量k得到正确数值的原因是_和_。4、已有定义int i, j;float x;为将-10赋给i,12赋给j,410.34赋给x;则对应以下scanf函数调用语句的数据输入形式是_。scanf(%o%x%e,&i,&j ,&x);5、以下程序运行时若从键盘输入:10 20 30<回车>。输出结果是 。#include <stdio.h>main() int i=0,j=0,k=0; scanf("%d%*d%d",&i,&j,&k); printf("%d%d%dn",i,j,k);6、有以下语句段int n1=10,n2=20;printf(“ ”,n1.n2);要求按以下格式输出n1和n2的值,每个输出行从第一列开始,请填空。n1=10n2=207、以下程序段的输出结果是 。int i=9;printf("%on",i);8、若有语句int i=-19,j=i%4;printf("%dn",j);则输出结果是 。9、若有程序main()inti,j;scanf("i=%d,j=%d",&i,&j);printf("i=%d,j=%dn",i,j);要求给i赋10,给j赋20,则应该从键盘输入 。10、以下程序的输出结果是 。main() int a=177;printf("%on",a);三、写出程序的运行结果1、有以下程序执行后输出结果是main( )int x=102,y=012; printf(“%2d,%2dn”,x,y); 2、有以下程序main() int m=0256,n=256; printf("%o %on",mn,n);运行后的输出结果是3、以下程序运行后的输出结果是 main() int x=0210; printf("%xn",x); 4、以下程序运行后的输出结果是 。main() int a,b,c; a=25; b=025; c=0x25; printf("%d %d %dn",a,b,c);5、以下程序的输出结果是 。 main() int a=0;a+=(a=8);printf("%dn",a);6以下程序的输出结果为_。main()printf(*%f,%4.3f*n,3.14,3.1415);7以下程序的输出结果为_。main() char c=x; printf(c:dec=%d,oct=%o,hex=%x,ASCII=%cn,c,c,c,c);8以下程序的输出结果是_。main() int x=1,y=2; printf (x=%d y=%d*sum*=%dn,x,y,x+y); pringf(10 Squared is:%dn,10*10);第四章 选择结构程序设计二、填空题1当a=3,b=2,c=1时,表达式f=a>b>c的值是_。2当a=5,b=4,c=2时,表达式a>b! =c的值是_。3在C语言中,表示逻辑“真”值用_。4设y为int型变量,请写出描述“y是奇数”的表达式_。5C语言提供的三种逻辑运算符是_、_、_。6设x,y,z均为int型变量,请写出描述“x或y中有一个小于z”的表达式_。7设x,y,z均为int型变量,请写出描述“x,y和z中有两个为负数”的表达式_。8已知A=7.5,B=2,C=3.6,表达式 A>B && C>A | | A<B && ! C>B的值是_。9若a=6,b=4,c=2,则表达式 ! (a-b)+c-1 && b+c/2的值是_。10若a=2,b=4,则表达式 !(x=a)| |(y=b)&& 0的值是_。11若a=1,b=4,c=3,则表达式 !(a<b)| | ! c&& 1的值是_。12若a=6,b=4 ,c=3,则表达式 a && b+c | | b-c的值是_。13若a=5,b=2,c=1,则表达式 a-b<c | | b= =c的值是_。14设a=3,b=4,c=5,则表达式 a | | b+c && b= =c的值是_。15条件“2<x<3或x<-10”的C语言表达式是_。16当m=2,n=1,a=1,b=2,c=3时,执行完d=(m=a ! =b)&& (n=b>c)后;n的值为_,m的值为_。17有int x,y,z;且x=3,y=-4,z=5,则表达式(x && y)= =(x | | z)的值为_。18有int x,y,z;且x=3,y=-4,z=5,则以下表达式的值_。!(x>y)+(y! =z)| | (x+y)&&(y-z)19有int x,y,z;且x=3,y=-4,z=5,则表达式x + + - y +( + + z)的值为_。20有int a=3,b=4,c=5;则表达式a | | b + c&&b = = c的值为_。21有int a=3,b=4,c=5,x,y;则以下表达式的值为_。 !(x=a)&& (y=b)&& 022有int a=3,b=4,c=5;则以下表达式的值为_。!(a+b)+ c-1 && b+c/223设有变量定义:int a=5,c=4;则(- - a = = + + c)? - -a:c + +的值是_,此时c的存储单元的值为_。24设有int x=1,y=0;则以下表达式的值为_。 x- - >(y+x)? 10 :12.5> y + + ? A:Z25.若整型变量a、b、c、d中的值依次为:1、4、3、2。则条件表达式a<b?a:c<d?c:d的值 1 26.以下程序运行后的输出结果是 main()int a,b,c; a=10;b=20;c=(a%b<1)|(a/b>1); printf("%d %d %dn",a,b,c);27.以下程序运行后的输出结果是 。main() int p=30;printf (“%dn”,(p/3>0 ? p/10 : p%3);28. 以下程序运行后的输出结果是 。main() int a=1, b=3, c=5;if (c=a+b) printf("yesn");else printf("non");29、以下程序输出的结果是 。main() int a=5,b=4,c=3,d;d=(a>b>c);printf("%dn",d);三、写出程序的运行结果1、以下程序运行