1 假设所有变量均为整型
- 格式:doc
- 大小:27.50 KB
- 文档页数:4
测验题(一)一、 选择题1. 一个C 程序的执行是从 。
A) 本程序的main 函数开始,到main 函数结束B) 本程序文件的第一个函数开始,到本程序文件的最后一个函数结束C) 本程序的main 函数开始,到本程序文件的最后一个函数结束D) 本程序的第一个函数开始,到本程序main 函数结束2. C 语言中的标识符只能由字母、数字和下划线三种字符组成,且第一个字符 。
A )必须为字母B )必须为下划线C )必须为字母或下划线D )可以是字母、数字和下划线中任一种字符3. 设有程序段int k=10;while(k=0) k=k-1;则下面描述正确的是A)while 循环执行十次 B)循环是无限循环C)循环体语句一次也不执行 D)循环体语句执行一次A )a/b/c*e*3 B) 3*a*e/b/cC) 3*a*e/b*c D) a*e/c/b*35. 逻辑运算符两侧运算对象的数据类型:A) 只能是0或非0正数 B )可以是任何类型的数据。
C )只能是整型或字符型数据。
D )只能是0或16.以下关于运算符优先顺序的描述中正确的是:A) 关系运算符<算术运算符<赋值运算符<逻辑与运算符B)逻辑与运算符<关系运算符<算术运算符<赋值运算符C)赋值运算符<逻辑与运算符<关系运算符<算术运算符D) 算术运算符<关系运算符<赋值运算符<逻辑与运算符7. 能正确表示“当x 的取值在[1,10]和[200,210]范围内为真,否则为假” 的 表达式是:A) (x>=1)&&(x<=10)&&(x>=200)&&(x<=210)B) (x>=1)||(x<=10)||(x>=200)||(x<=210)C) (x>=1)&&(x<=10)||(x>=200)&&(x<=210)E) (x>=1)||(x<=10)&&(x>=200)||(x<=210)8.判断char 型变量ch 是否为大写字母的正确表达式是:A) ’A’<=ch<=’Z’ B)(ch>=’A’)&(ch<=’Z’)C) (ch>=’A’)&&(ch<=’Z’) D) (’A’<=ch)AND(’Z’>=ch)9.以下程序的输出结果是:main(){printf(”\n*s1=%15s*”,”chinabeijing”);printf(”\n*s2=%-5s*”,”chi”);}A) *s1=chinabeijing_ _ _* B) *s2=_ _ _chinabeijing**s2=**chi* *s2=chi_ _*C) *s1=*_ _chinabeijing* D) *s2=chinabeijing_ _ _**s2=_ _chi* *s2=chi_ _*43.,()若有代数则不正确的语言表达式是。
C语言程序设计模拟试题11一、填空题(每空1分,共10分)1. C语言程序的三种基本结构是顺序结构,选择结构,循环结构。
2. 有定义:int a[3][4]={{1,2},{0},{4,6,8,10}};则初始化后,a[1][2]=0,a[2][1]=6。
3. 设x,y,z均为int 型变量,C语言描述”x或y中有一个小于z”的表达式是x<z||y<z。
4. 若for循环用以下形式表示:for(表达式1;表达式2;表达式3) 循环体语句则执行语句for(i=0;i<3;i++) printf(“*”);时,表达式1执行1次,表达式3执行3次。
5. 在C语言中,十进制数30的八进制表示形式是036 ,十六进制表示形式是0x1e 。
二、阅读填空(每空2分,共12分)。
1.以下函数求x的y次方。
duble fun(double x,int y){int i;double z=1.0;for(i=1;i <=y ;i++)z=z*x ;return(z);}2.下列程序段是从键盘输入的字符中统计数字字符的个数,用换行结束循环。
int n=0; char c;c=getchar();while(c!=‘\n’){ if(c>=‘0’&& c<=‘9’) n++;c=getchar(); }3.下面程序中可求出矩阵a的两条对角线上的元素之和。
#include“stdio.h”main(){int a[3][3]={1,3,6,7,9,11,14,15,17}, sum1=0,sum2=0,i,j;for(i=0;i<3;i++)for(j=0;j<3;j++)if(i==j) sum1=sum1+a[i][j];for(i=0;i<3;i++)for(j=2;j>=0;j--)if((i+j)==2) sum2=sum2+a[i][j];printf(“sum1=%d,sum2=%d\n”,sum1,sum2);}三、单项选择题(每小题2分,共78分)1.一个C语言的执行是从 A 。
C语言_分章节练习_带答案_第二章_数据类型[单选题]1.C 语言中(以16 位PC 机为例),各数据类型的存储空间长度的排列顺序为。
A)char<int<long<=float<doubleB)char=int<long<=float<doubleC)char<int<long=float=doubleD)char=int=long<=float<double答案:A解析:2.若x、i、j 和k 都是int 型变量,则计算下面表达式后,x 的值为。
x=(i=4,j=16,k=32)A)4B)16C)32D)52答案:C解析:3.假设所有变量均为整型,则表达式(a=2,b=5,a+b++,a+b) 的值是。
A)7B)8C)5D)2答案:B解析:4.语言中的标识符只能由字母、数字和下划线三种字符组成,且第一个字符。
A)必须为字母B)必须为下划线C)必须为字母或下划线D)可以是字母、数字和下划线中的任一种字符答案:C解析:5.下面正确的字符常量是。
A)"c"B)'\\''C)'W'D)""答案:C解析:6.下面不正确的字符串常量是。
A)'abc'B)"12'12"C)"0"D)" "答案:A解析:7.若有代数式3ae/bc,则不正确的C 语言表达式是。
A)a/b/c*e*3B)3*a*e/b/cC)3*a*e/b*cD)a*e/c/b*3答案:C解析:8.已知各变量的类型说明如下,则不符合C 语言语法规定的表达式是。
int k,a,b;unsigned long w=5;double x=1.42;A)x%(-3)B)w+=-2C)k=(a=2,b=3,a+b)D)a+=a-=(b=4)*(a=3)答案:A解析:9.已知各变量说明如下,则符合C 语言语法规定的表达式是。
习题答案第1章1.1 填空题1.1.1 应用程序ONEFUNC.C中只有一个函数,这个函数的名称是__main 。
1.1.2 一个函数由__函数头__和__函数体__两部分组成。
1.1.3 在C语言中,输入操作是由库函数__scanf 完成的,输出操作是由库函数_printf_完成的。
1.1.4 通过文字编辑建立的源程序文件的扩展名是_.c__;编译后生成目标程序文件,扩展名是__.obj__;连接后生成可执行程序文件,扩展名是_.exe_;运行得到结果。
1.1.5 C语言程序的基本单位或者模块是__函数__。
1.1.6 C语言程序的语句结束符是_;___。
1.1.7 编写一个C程序,上机运行要经过的步骤:______________________________。
1.1.8 在一个C语言源程序中,注释部分两侧的分界符分别为_/*__和__*/__。
1.1.9 C语言中的标识符只能由三种字符组成,它们是字母、数字和下划线。
且第一个字符必须为字母或下划线。
1.1.10 C语言中的标识符可分为关键字、预定义标识符和用户标识符3类。
1.2 选择题1.2.1 一个C程序的执行是从( A )。
A)本程序的main函数开始,到main函数结束B)本程序文件的第一个函数开始,到本程序文件的最后一个函数结束C)本程序的main函数开始,到本程序文件的最后一个函数结束D)本程序文件的第一个函数开始,到本程序main函数结束1.2.2 以下叙述不正确的是(C)。
A)一个C源程序可由一个或多个函数组成B)一个C源程序必须包含一个main函数C) 在C程序中,注释说明只能位于一条语句的后面D) C程序的基本组成单位是函数1.2.3 C语言规定:在一个源程序中,main函数的位置( C )。
A)必须在程序的开头B)必须在系统调用的库函数的后面C)可以在程序的任意位置D)必须在程序的最后1.2.4 C编译程序是(A)。
A)将C源程序编译成目标程序的程序B)一组机器语言指令C) 将C源程序编译成应用软件D) C程序的机器语言版本1.2.5 要把高级语言编写的源程序转换为目标程序,需要使用(D)。
C 语言一.填空题1. 在C 语言中(VC++ 6.0 环境下),一个char 型数据在内存中所占字节数为________,一个int型数据在内存中所占字节数为________,一个long 型数据在内存中所占字节数为________,一个float 型数据在内存中所占字节数为________,一个double 型数据在内存中所占字节数位________。
2. 设x,i,j,k 都是int 型变量,表达式x=(i=4,j=16,k=32)计算后,x 的值为 。
3. 设有以下变量定义,并已赋确定值char w; int x; float y; double z; 则表达式:w*x+z-y 所求得的数据类型为 。
4. C 语言的标识符只能由大小写字母,数字和下划线三种字符组成,而且第一个字符必须为 。
5. C 语言中不带任何修饰符的浮点数(例如3.5)都是按照 类型数据存储的。
6. 在C 语言的源程序中若出现常量“1L ”,则该常量的类型是_________。
7. C 语言中,一个int 型数据在内存中占4个字节,则unsigned int 型数据的取值范围为 。
8. 设有int x=11,则表达式(x++*1/3)的值是 。
9. 若有定义:char c=‘\010’;则变量c 中包含的字符个数为 。
10. 假设所有变量均为整型,则表达式(a=2,b=5,a++,b++,a+b)的值为 。
11. 已知a,b,c 是一个十进制数的百位,十位,个位,则该数的表达式是 。
12. 若a 是int 变量,则执行表达式a=25/3%3后,a 的值是 。
13. C 语句可以分为 , , , 和 _____________等5种类型。
14. 若有定义:int b=17; float a=4.5,c=6.5;则表达式a+(int)(b/3*(int)(a+c)/2)%4的值 。
15. 表达式“4/5*(float)3+(float)3*4/5”的值是 。
第二章数据类型运算符和表达式一、单项选择1.若有定义语句:int k1=10,k2=20;,执行表达式(k1=k1>k2)&&(k2=k2>k1)后,k1和k2的值分别为( B )2.下面四个选项中,均是不合法的用户标识符的选项是( B )。
3.判断字符型变量c1是否为数字字符的正确表达式为( A )4.在C语言中,要求运算数必须是整型的运算符是( A )5.下面四个选项中,均是合法的用户标识符的选项是(A)。
6.假设所有变量均为整型,则表达式(a=2,b=5,b++,a+b)的值是(B)。
7.若x,i,j和k都是int型变量,则计算表达式x=(i=4,j=16,k=32)后,x的值为(B)。
8.表达式18/4*sqrt(4.0)/8值的数据类型为(B)。
9.若a是数值类型,则逻辑表达式(a==1)||(a!=1)的值是( D )10.判断字符型变量c1是否为小写字母的正确表达式为(B)。
11.在C语言中,char型数据在内存中的存储形式是(C)。
12.以下选项中关于C语言常量的叙述错误的是:( D )13.下面正确的字符常量是(B)14.C语言中的标识符只能由字母、数字和下划线三种字符组成,且第一个字符( D)15.以下选项中,能表示逻辑值"假"的是( B )16.设变量a是整型,f是实型,i是双精度型,则表达式10+'a'+i*f值的数据类型为(C)17.以下选项中非法的字符常量是( B )18.以下关于C语言数据类型使用的叙述中错误的是(B )19.设:int a=1,b=2,c=3,d=4,m=2,n=2;执行(m=a>b) && (n=c>d)后n的值为(C)。
20.若有数学式3aebc,则不正确的C语言表达式是(A)21.下列表达式中,不满足"当x的值为偶数时值为真,为奇数时值为假"的要求的是(C)二、填空1.若s是int型变量,s=6;则表达式s%2+(s+1)%2的值为___1__2.假设所有变量均为整型,则表达式(a=2,b=5,a++,b++,a+b)的值为___9__3.C语言中的标识符只能由三种字符组成,它们是__字母___,_数字____和____下划线_4.若a.b和c均是int型变量,则计算表达式a=(b=4)+(c=2)后,a值为 6,b值为_4,c值为_2_5.在C语言中,不带任何修饰符的浮点常量,是按___double__类型数据存储的。
c语言第3章练习题--运算符、表达式、输入输出1. 下面四个选项中,均是不合法的标识符的选项是(C)A)A, P_0, doB)float, 1a0, _AC)b-a, goto, intD)_123, temp, INT2. c语言中的标识符只能由字母、数字和下划线三种字符组成,且第一个字符(C)A)必须为字母;B)必须为下划线;C)必须为字母或下划线;D)可以是字母、数字和下划线中任一种字符.3. 已知字母A的ASCII码为十进制的65,下面程序的输出是(A)main(){ char ch1,ch2;ch1='A'+'5'-'3';ch2='A'+'6'-'3';printf("%d,%c\n",ch1,ch2);}A)67, D B)B, C C)C, D D)不确定的值4. 假设所有变量均为整型,则表达式(B)(a=2, b=5,b++,a+b) 的值是A)7 B)8 C)6 D)25. 设以下变量均为int类型,则值不等于7的表达式是,CA) (x=y=6,x+y,x+1) B) (x=y=6,x+y,y+1)C) (x=6,x+1,y=6,x+y) D) (y=6,y+1,x=y,x+1)6. 若有说明语句:char c=‘\72’;则变量c(A)A)包含1个字符B)包含2个字符C)包含3个字符D)说明不合法,c的值不确定7. 若以下变量均是整型,且num = sum =7;则计算表达式.Bsum=num++,sum++,++num 后sum的值为(B)A)7 B)8 C)9 D)108. 若有定义:int a=7;float x=2.5,y=4.7;则表达式x十a%3*(int)(x十y)%2 /4的值是(A)A) 2.500000 B) 2.750000 C) 3.500000 D)0.0000009、下面不正确的字符串常量是(A)A)'abc' B)"1212" C)"0" D)" "10、数字字符0的ASCII值为48,若有以下程序(A) void main(){ char a='1',b='2';b = b + 1;printf("%c,",b);printf("%d\n", b-a);}程序运行后的输出结果是(A)A)3,2 B)50,2 C)2,2 D)2,5011、在C语言中,要求运算数必须是int型的运算符是 DA. /B. ++C.!=D. %12、设有如下程序段:int x=2002, y=2003;printf("%d\n",(x,y));则以下叙述中正确的是(D)A) 输出语句中格式说明符的个数少于输出项的个数,不能正确输出B) 运行时产生出错信息C) 输出值为2002D) 输出值为200313、有如下程序void main(){ int y=3,x=3,z=1;printf("%d %d\n",(++x,y++),z+2);}运行该程序的输出结果是DA) 3 4 B) 4 2 C) 4 3 D) 3 314 下列程序的输出结果是Cvoid main(){ double d=3.2; int x,y;x=1.2;y=(x+3.8)/5.0;printf("%d \n", d*y);}A) 3 B) 3.2 C) 0 D) 3.0715、假定x和y为double型,则表达式x=2,y=x+3/2的值是DA) 3.500000 B) 3 C) 2.000000 D)3.00000016、若有以下程序段,Aint c1=1,c2=2,c3;c3=1.0/c2*c1;则执行后,c3中的值是A) 0 B) 0.5 C) 1 D) 217、已知字母A的ASCII编码为10进制数65,且c2为字符型,则执行语句c2='A'+'6'-'3'后,c2中的值为___A___。
1 假设所有变量均为整型,则表达式为(X=2,Y=5,Y++,X+Y)的值是(8)
2 设a=5,b=6.c=7,d=8,m=2,n=2,则执行(M=a>b),&&(n=c>d)后n的值为(2)。
3 执行下列的程序后,变量K中的值为(不定值)
Int k=3,s[2],s[0]=k,k=s[1]*10;
4 有如下程序:main {char s[]”ABCD”,*p,for (p=s+q,p<s+4;p++)printf(“%ds\n”,p);},则程序的输出结果是(BCD,CD,D)
5 设定义int i=8;表达式(i<<2)*i/(i>>2)的值是(128)
6 设变量说明int k=7,x=12;则能使值为3的表达式是[(x%=k-(k%=5))
7 对C语言的文件存取方式中,文件(可以是文件方式存取,也可以是二进制形式存取)
8 以下关于SWITCH语句和BREAK语句的表达式中,正确的是(在switch语句中,可以根据需要或者不使用break语句)
9 以下程序的输出结果是; main() { int y=9,for(y>0,y--) if(y%3= = 0){printf(“%d”,- -y); (825)
10 以下函数还回a所指数组中最大值所在的下2值是(p=i)
Fun(int *a,int n) { int,I,j=0,p;for (i=j;i<n;i++) if(a[i]>a[p],return(p);
11 下列程序中,判断语句i>j共执行的次数是(6)
Main() {int i=0,j=10,k=2,s=0,for(i,j)
{i++=k,if(i>j) {printf(“%d”,s);break;}s+=I;}}12 在以下语句。
则对a数组元素的引用不正确的是((0<=i)(*(*(a+i))
Int a[10]={0123456789},*p=a
13 执行语句”printf(“%d\n”,12&012);”的输出结果是(8)
14 在C语言中,int char和short三种类型数据在内存中所占用的字节数(由所用机器的机器字长决定)
15 以下程序的输出结果是(1)
Long fun(int n) { lomg s; if(n= =111n= =2)s=2; else s=n-fun(n-1); return s;} main()
{ printf(“%d\n”,fun(3);)
16 已知各变量的类型如下:int i=8,k,a.b;uncigned long w=5;double x=1.42.y=5) 则以下符号c语言表达式的是:a+=a-=(b=4)*(a=3)
17 以下不正确的if语句是:if(x!=9)scanf(“%d”,&x)else sanf (“%d”,&y);
18 c语言中提供关键字有(default)
19 设整型变量abc均为2,表达式a++b++c++的值是(6)二多项选着
1 下列选项中对数组描述正确的是:1 给某一维数组所
有元素赋初值,数组的长度可以省略2一个数据定义语句中不可以定义数据类型不同的多个数组
2 以下叙述不正确的是:1欲处理命令都必须以#开始2替换不占用运行时间,只占用编译时间3在程序中凡是以#号开始的语句都是预处理命令行
3 c语言规定,在一个源程序中,main函数位置说法错误的是:1必须在最开始,2不能写在其他函数的内部3可以任意4必须在系统调用的库函数后面
4 以下有4组用启标中合法的是:INT_stu a3 f2_G3 IFabc
5 下列字不是用来表达转义字符的是(\n n)
6 关于函数中的reture语句,下列说法不正确的是:1 必须在没个函数中出现2可以在同一该函数中出现 3 只能在除了主函数之外的函数中出现一次
三简答题
1 do—while循环和while循环的区别
答:do—while循环执行循环中的语句,然后在判断表达式是否为真,如果为真则继续循环,反之,则停止,而while 先判断表达式是否为真,因此do—while循环至少要执行一次循环语句
2 常量与变量的区别
答:在其过程中不发生改变的的量为常量,反之为变量
3从程序的结构来看,程序可以分为那些结构
答:顺序分支循环
4变量指针和指向变量的指针变量之间有什么关系
答:变量的指针就是变量的地址,存放变量地址的变量是指针变量,即在c语言中,允许用一个变量来存放指针,因此指针的变量的指针为某变量的指针
5 MS—DOC基本组成包括那些?
答:引导程序BOOT 2 输入输出管理摸快IO,SYS 3文件管理模块MSDOS,SYS 4键盘命令处理程序
6continuc语句的功能是什么?
答:结束本轮循环,即跳过循环提中下面语句,然后判断是否进行下一轮循环
7什么是字符数组?
答:字符数组是用于存放字符数据,每个数组元素只能存放一个字符,存放的是字符ASCII代码
8 结构体类型和共用体类型有什么不同?
答:结构体类型由多个成员组成,没个数组成员不同的存储空间,结构体变量的长度是所有成员的长度和。
共用体类型由多个成员组成,但是它们共享同一段存储空间,同一时间,只能有一个成员使用,存储单元空间大小取决于存储单元最大的成员数据类型。