C程序设计题库(含答案)
c语言程序设计教程第二版课后答案

c语言程序设计教程第二版课后答案【篇一:c语言程序设计(第2版)-- 课后题答案】p> 参考答案第1章进入c语言程序世界二、1.i love china!printf(we are students.\n)2.6项目实训题参考答案1.编写一个c程序,输出以下信息:* * * * * * * * * * * * * * * * * * * *i am a student!* * * * * * * * * * * * * * * * * * * *main(){ printf(********************\n);printf( i am a student!\n);printf(********************\n);}2.已知立方体的长、宽、高分别是10cm、20cm、15cm,编写程序,求立方体体积。
解:main(){int a,b,c,v;a=10;b=20;c=15;v=a*b*c;printf(v=%d,v);}本程序运行结果为:v=3000第2章编制c程序的基础知识一选择题c b a b a c c二操作题,2,-8,23.000000,2.500000,-8.0000002. abc defghwhy is21+35equal 523.34214. aaa项目实训题1.定义一个符号常量m为5和一个变量n值为2,把它们的乘积输出。
#define m 5main(){ int n,c;n=2; c=m*n;printf(%d\n,c);}2.编程求下面算术表达式的值。
(1)x+a%3*(int)(x+y)%2/4,设x=2.5,a=7,y=4.7;(2)(float)(a+b)/2+(int)x%(int)y,设a=2,b=3,x=3.5,y=2.5。
(1)main(){ int a=7;float x=2.5,y=4.7;printf(%f\n,x+a%3*(int)(x+y)%2/4);}(2)main(){ int a=2,b=3;float x=3.5,y=2.5;printf(%f\n,(float)(a+b)/2+(int)x%(int)y);}第三章顺序结构程序设计一选择题a c d c c二操作题1. x=3,a=2,b=32. z=12.7000002 13 3 2 bb cc abc n3. 1 2 1a2 1 2三.编程题编程题解:#include stdio.hmain(){float sj,gz,yfgz;printf(time,salary:);scanf(%f,%f,sj,gz);yfgz=sj*gz*0.9;printf(total salary:%f\n,yfgz);}本程序运行结果为:time,salary:4,3crtotal salary:10.8000002.编写一个程序求出任意一个输入字符的ascii码解:#include stdio.hmain(){char c;printf(input a string:);scanf(%c,c);printf(%c ascii is %d\n,c,c);}本程序运行结果为:input a string:acra ascii is 973、编写一个程序用于水果店售货员算帐:已知苹果每斤2.50元,鸭梨每斤1.80元,香蕉每斤2元,橘子每斤1.6元,要求输入各类水果的重量,打印出应付3解:main(){float p,y,x,j,ys,g,fk;printf(apple,pear,banana,orange(weight)=);scanf(%f,%f,%f,%f,p,y,x,j);ys=2.5*p+1.8*y+2*x+1.6*j;printf(fu kuan=);scanf(%f,g);fk=g-ys;printf(result:\n);printf(fukuan=%6.2fyuan\nshoukuan=%6.2fyuan\nzhaohui=%6. 2fyuan\n,g,ys,fk);}本程序运行结果为:apple,pear,banana,orange(weight)=1,2,3,4fu kuan=100result:fukuan=100.00yuanshoukuan= 18.50yuanzhaohui= 81.50yuan项目实训1.假设银行定期存款的年利率rate为2.25%,并已知存款期为n 年,存款本金为capital元,试编程计算n年后可得到本利之和deposit。
《C语言程序设计》第1章C语言概述练习题答案

第一章C语言概述练习题一、选择题1. C语言是一种()。
A)机器语言B)汇编语言C)高级语言D)低级语言2. 下列各项中,不是C语言的特点是()。
A)语言简洁、紧凑,使用方便C)能实现汇编语言的大部分功能B)数据类型丰富,可移植性好D)有较强的网络操作功能3. 下列叙述正确的是()。
A)C语言源程序可以直接在DOS环境中运行B)编译C语言源程序得到的目标程序可以直接在DOS环境中运行C)C语言源程序经过编译、连接得到的可执行程序可以直接在DOS环境中运行D)Turbo C系统不提供编译和连接C程序的功能4. 下列叙述错误的是()。
A) C程序中的每条语句都用一个分号作为结束符B) C程序中的每条命令都用一个分号作为结束符C) C程序中的变量必须先定义,后使用D)C语言以小写字母作为基本书写形式,并且C语言要区分字母的大小写5. 一个C程序的执行是从()。
A)本程序的main函数开始,到main函数结束B)本程序文件的第一个函数开始,到本程序文件的最后一个函数结束C)本程序文件的第一个函数开始,到本程序main函数结束D)本程序的main函数开始,到本程序文件的最后一个函数结束6. 以下叙述不正确的是()。
A)一个C源程序必须包含一个main函数B)一个C源程序可由一个或多个函数组成C) C程序的基本组成单位是函数D)在C程序中,注释说明只能位于一条语句的后面7. C语言规定:在一个源程序中,main函数的位置()。
A)必须在程序的开头B)必须在系统调用的库函数的后面C)可以在程序的任意位置D)必须在程序的最后8. 一个C语言程序是由()。
A)一个主程序和若干个子程序组成B)函数组成C)若干过程组成D)若干子程序组成9. 以下有4组用户标识符,其中合法的一组是()。
A) For B) 4d C) f2_G3 D) WORD-sub DO IF voidCase Size abc define10. 一个算法应该具有“确定性”等5个特性,下面对另外4个特性的描述中错误的是A)有零个或多个输入B)有零个或多个输出C)有穷性D)可行性二、填空题1. 汇编语言属于面向(面向机器的)语言,局级语言属于(面向问题的)语言。
C语言程序设计试题与答案-

《C语言程序设计》试题(闭卷)一、单项选择题:(每题 2 分,共 30 分)1. C 语言规定:在一个源程序中,main函数的位置_____________。
A. 必须在最开始B. 必须在系统调用的库函数的后面C. 可以任意D. 必须在最后2. 下列说法中错误的是_____________。
A. 主函数可以分为两个部分:函数头和函数体B. 主函数可以调用任何非主函数的其他函数C. 任何非主函数可以调用其他任何非主函数D. 程序可以从任何非主函数开始执行3. 用 C 语言编写的源文件经过编译,若没有产生编译错误,则系统将_____________。
A. 生成目标文件B. 生成可执行目标文件C. 输出运行结果D. 自动保存源文件4. 以下选项中,不正确的 C 语言浮点型常量是_____________。
A. 160.B. 0.12C. 2e4.2D. 0.05. 以下用户标识符中,合法的是_____________。
A. intB. nitC. 123D. a+b6. 算术运算符、赋值运算符和关系运算符的运算优先级按从高到低依次为_____________。
A. 算术运算、关系运算、赋值运算B. 算术运算、赋值运算、关系运算C. 关系运算、赋值运算、算术运算D. 关系运算、算术运算、赋值运算7. 设整型变量 m,n,a,b,c,d 均为1,执行 (m=a>b)&&(n=c>d)后, m,n 的值是_____________。
A. 1,1B. 0,1C. 1,0D. 0,08. sizeof (char)的结果值是_____________。
A. 4B. 2C. 1D.出错9. 设 a 为整型变量,不能正确表达数学关系:10<a<15的 C 语言表达式是_____________。
A. 10<a<15B. a= =11|| a= =12 || a= =13 || a= =14C. a>10 && a<15D. !(a<=10) && !(a>=15)10. 要为字符型变量 a赋初值,下列语句中哪一个是正确的_____________。
C语言程序设计习题集及答案修改

C语言程序设计习题集基础知识一单项选择题(每题2分,共44分)1 以下叙述正确的是___。
A C程序基本组成单位是语句B C程序每一行只能写一个语句C 简单C语句必须以分号作为结束符D 注释语句可以嵌套2 一个C语言程序是从___开始执行的。
A 程序中第一个函数B 名为main的函数C 包含文件(头文件)的第一个函数D 程序中的第一个语句4 下面标识符中,合法的用户标识符是___。
A 1abcB includeC a-b-c123D char8 已知int i;,则执行语句 i=2.6;后,i的值为___。
A 2B 3C 2.6D 不确定10 若y为int型变量,则执行以下语句后,y的值是___。
y=8; y+=y-=y*y;A 64B –56C –112D –4811 以下合法的浮点型常量是___。
A e-3B 1.5e+2.4C 3.14e+2LD 3.14 e +514 若x、y、z均为整型常量,且a=100,则执行下列语句后的z值为___。
x=a++; y=--a; z=x+y-a--;A 100B 400C 200D 300'';,则执行语句c=a/b+d%a+0.5;后c的值为___。
a=8,b=5,c;char 18 若有定义:int d= AA2 B 2.5C 3D 类型不一致,无法计算,编译出错19 在有以下程序:int main(){ int i=10,j=1;i=i+j++;printf(%d,%d,%d\n,i++,++j,i);int main()执行后输出结果是___。
A 12,3,11B 12,2,11C 11,3,11D 12,3,1220 已知int i=65;,则putchar(i);printf(%d,i);printf(%c,i);的输出结果为___。
A A,65,AB 65,65,AC A,A,65D A,A,A21 已知int y,a,i=1;,则语句printf(%d,%d,-i++,(y=a=3.6*3));的输出结果为___。
C语言程序设计模拟试题1(附答案)

《C语言程序设计》模拟试卷一一、单项选择题(每题2分,共30分)1、下列有关C语言的叙述中错误的是(D)。
A) C语句必须以分号结束B) 任何一个C程序中有且只有一个主函数C) 复合语句在语法上可被看作一条语句D) C程序中对数据的任何操作都可由运算符实现2、以下不能定义为用户标识符的是(C)。
A) MAIN B) _HJ C)2ong D) LINE13、下列符号中用来表示C语言中的回车换行的是(B)。
A) \r B) \n C)\b D) \t4、如有如下定义:int a=1,则语句printf(“%d,%d”, a, ++a);的运行结果为(B)。
A) 1, 1 B) 1, 2 C) 2, 2 D)2, 15、已知ch为字符型变量,下面表达式中正确的是(A)。
A) ch=’\xff ’B) ch=’\ff ’C) ch=’ ff ’D) ch=” ff ”6、以下能正确定义一维数组的是(C)。
A) int a[5]={0,1,2,3,4,5}; B) int a[5]=”012345”;C) char a[ ]=”012345”;D) char a[5]={0,1,2,3,4,5};7、以下语句中能正确定义变量并赋初值的是(A)。
A) char c=65; B) float f=f+1.1;C) double x=12.3e3.6; D) int m=n=2.0;8、在执行下列程序时输入:1357924,则程序的运行结果为(D)。
main( ){ int x, y;scanf(“%2d%2d”,&x,&y);printf(“%2d”,x*y); }A) 13 B) 1357 C) 74 D) 7419、执行下列程序段后输出的结果是(C)。
x = 9;while (x > 7){ printf(“*”); x- -; }A) **** B) *** C) ** D) *10、设char str1[10] = “ABCDE”, str2[10] = “xyz”;则执行语句printf(“%d”, strlen(strcpy(str1, str2))); 后的输出结果是(D)A) 9 B) 8 C) 5 D) 311、若用数组名作为函数调用的实参,则传递给形参的是(A)A) 数组的首地址B) 数组第一个元素的值C) 数组中全部元素的值 D) 数组元素的个数12、在C程序中,若未在函数定义时说明函数类型,则函数默认的类型为( A ) A)void B)double C)int D)char13、下面不能正确进行字符串赋值操作的语句是(A)A) char s[5]={"ABCD"};B) char s[5]; s="ABCD";C) char *s;s="ABCDEF"; D) char *s="ABCD";14、设有说明int s[5]={1,3,5,7,9}; int *p=s; 则下列表达式中值为3的是(B )A)++p B)++(*p) C) *(++p) D) *(p+=2)15、下面程序的输出结果是(B)int m=13;int fun( int x, int y){ int m=3;return( x*y-m); }main( ){ int a=7,b=5;printf(“%d\n”, fun(a,b)/m); }A) 1 B) 2 C) 3 D) 10二、判断(每空1分,共10分)1、C语言有三种结构化程序设计方法,分别为顺序结构、选择结构和循环结构。
大学C语言程序设计(填空题)

C 语言程序设计习题-填空题
若 s 是 int 型变量,则表达式 s%2+(s+1)%2 的值为______。 习题 11-参考答案 1 习题 12(填空题)[知识点:数据类型] 若 a 是 int 型变量,则表达式(a=4*5,a*2),a+6 的值为______。 习题 12-参考答案 26 习题 13(填空题)[知识点:数据类型] 若 x 和 a 均是整型变量,则计算表达式 x=(a=4,6*2)后的 x 值为______。 习题 13-参考答案 12 习题 14(填空题)[知识点:数据类型] 若 x 和 a 均是整型变量,则计算表达式 x=a=4,6*2)后的 x 的值为______。 习题 14-参考答案 4 习题 15(填空题)[知识点:数据类型] 若 a、b 和 c 均是 int 型变量,则计算表达式 a=(b=4)+(c=2)后,a、b、c 的值分别为______。 习题 15-参考答案 6,4,2 习题 16(填空题)[知识点:数据类型] 若 a 是 int 型变量,且 a 的初值为 6,则计算表达式 a+=a-=a*a 后 a 的值为______。 习题 16-参考答案 -60 习题 17(填空题)[知识点:数据类型] 若 a 是 int 型变量,则计算表达式 a=25/3%3 后 a 的值为______。 习题 17-参考答案 2 习题 18(填空题)[知识点:数据类型] 若 x 和 n 均是 int 型变量,且 x 和 n 的初值均为 5,则计算表达式 x+=n++后 x、n 的值分别为______。 习题 18-参考答案 10,6 习题 19(填空题)[知识点:数据类型] 若有定义:int b=7;float a=2.5,c=4.7;则表达式 a+(int)(b/3*(int)(a+c)/2)%4 的值为______。 习题 19-参考答案 5 .5 习题 20(填空题)[知识点:数据类型] 若有定义:int a=2,b=3;float x=3.5,y=2.5;则表达式(float)(a+b)/2+(int)x%(int)y 的值为______。 习题 20-参考答案 3 .5 习题 21(填空题)[知识点:数据类型] 若有定义:char c='\010';则变量 c 中包含的字符个数为______。 习题 21-参考答案 1 习题 22(填空题)[知识点:数据类型] 若有定义:int x=3,y=2;float a=2.5,b=3.5;则表达式(x+y)%2+(int)a/(int)b 的值为______。 2 / 25
C语言程序设计期末考试试题及答案
C语言程序设计期末考试试题及答案装 C. C++; D.a+b+c|2.已知int j , i=1 ;执行语句“ j=i++ ; ”后,变量i 的值是B 。
A. 1B. 2C. - 1D. -2 3. 执行下面程序:#i nclude "stdio.h" void mai n()订 {int a=1,b=2,c=3 ;c=(a+=a+2),(a=b,b+3); printf(“ %d,%d,%d ,a,b,c);丨}线则输出结果是:_A _______ 。
A. 2,2,4 B. 4,2,3 C. 5,5,3 D. 4,2,5[4.若要求在if 后一对圆括号中表示 a 不等于0的关系,则能正确表示这一关系的表达式为D 。
—A. a< >0B. !aC. a=0D. a:5. for (j=0;j<11;j++);循环结束后,j 的值是 B _________ 。
A. 12B. 11C. 10D. 96. C 语言中函数返回值的类型由 _D ___ 决定的。
[ A. return语句中的表达式类型B.调用该函数的主调函数的类型 :C.调用函数时临时决定D.定义函数时所指定的函数类型7. 下列说法中正确的是 B 。
- A 在调用用户自定义函数时,必须对其进行声明。
1B 函数可以返回一个值,也可以什么值也不返回。
:C 说明函数时,必须明确参数的类型和返回值。
D 在程序设计中空函数没有什么作用。
C 语言程序设计试题','g','s','\0'};8. 若int i=10 ;执行下列程序后,变量 i 的正确结果是_D_switch ( i ) {case 0: i+=1 ; case 10: i+=1 ; case 11: i+=1 ; default: i+=1 ;}A. 10B. 11C. 12D. 139. 下列语句中不正确的字符串赋值或初始化的是 C 。
C语言程序设计(第二版)习题参考答案1
C语言程序设计(第二版)习题参考答案1习题1一、判断题1.在计算机中,小数点和正负号都有专用部件来保存和表示。
2.二进制是由0和1两个数字组成的进制方式。
3.二进制数的逻辑运算是按位进行的,位与位之间没有进位和借位的关系。
4.在整数的二进制表示方法中,0的原码、反码都有两种形式。
5.有符号数有三种表示法:原码、反码和补码。
6.常用字符的ASCII码值从小到大的排列规律是:空格、阿拉伯数字、大写英文字母、小写英文字母。
解:1.F2.T3.T4.T5.T6.T二、单选题1.在计算机中,最适合进行数值加减运算的数值编码是A.原码B.反码C.补码D.移码2.已知英文小写字母m的ASCII码为十进制数109,则英文小写字母y的ASCII码为十进制数A.112B.120C.121D.1223.关于ASCII码,在计算机中的表示方法准确地描述是A.使用8位二进制数,最右边一位为1B.使用8位二进制数,最左边一位为1C.使用8位二进制数,最右边一位为0D.使用8位二进制数,最左边一位为04.设在机器字长4位,某=0111B,Y=1011B,则下列逻辑运算中,正确的是___________。
A.某∧Y=1000B.某∨Y=1111C.某⊕Y=0011D.¯=1000Y5.下列叙述中正确的是()。
A.高级语言就是机器语言B.汇编语言程序、高级语言程序都是计算机程序,但只有机器语言程序才是计算机可以直接识别并执行的程序C.C语言因为具有汇编语言的一些特性,所以是汇编语言的一种D.C源程序经过编译、连接,若正确,执行后就能得到正确的运行结果6.用C语言编写的源程序经过编译后,若没有产生编译错误,则系统将()。
A.生成可执行文件B.生成目标文件C.输出运行结果D.自动保存源文件7.下列叙述中不正确的是()。
A.main函数在C程序中必须有且只有一个B.C程序的执行从main函数开始,所以main函数必须放在程序最前面C.函数可以带参数,也可以不带参数。
《C语言程序设计》试题十四及答案
《C语言程序设计》试题十四及答案《C语言程序设计》试题十四 (1)一、选择题(1—14每题1分,15-18每题1.5分,共20分) (1)二、填空题(每空1分,共12分) (3)三、程序补充题(每空3分,共24分) (3)四、按格式写出程序运行结果。
(每题4分共20分) (4)五、按题目要求写出可运行程序:(24分) (5)《C语言程序设计》试题十四答案 (7)《C语言程序设计》试题十四一、选择题(1—14每题1分,15-18每题1.5分,共20分)1.可选作用户标识符的一组标识符是()A voidB c5_b8C ForD 3aDefine _53 -ab DOWORD IF Case int2.在C语言中,非法的八进制是:()A.018B.016C.017D.02573.在TC中,基本int a[4]类型变量所占的字节数是()A.1B.2C.4D.84.设x,y,z,k都是int型变量,则执行表达式:x=(y=4,z=16,k=32)后,x的值为()A.4B.16C.32D.525.设int型变量a为5,使b不为2的表达式是()A.b=a/2B.b=6-(-a)C.b=a%2D.b=a>3?2:16.一个C程序的执行是从()A.main()函数开始,直到main()函数结束。
B.第一个函数开始,最后一个函数结束。
C.第一个语句开始,最后一个语句结束。
D.main()函数开始,直到最后一个函数。
7.C语言中用于结构化程序设计的三种基本结构是()A.if、switch、breakB.if while forC.while do- while forD.顺序结构、选择结构、循环结构8.以下叙述中不正确的是()A.在不同的函数中可以使用相同名字的变量。
B.函数中的形式参数是局部变量。
C.在一个函数内的符合语句中定义变量在本函数范围内有效。
D.在一个函数内定义的变量只在本函数范围内有效。
9.若k为int 类型,且k的值为3,执行语句k+=k-=k*k后,k的值为()A.-3B.6C.-9D.-1210.有以下程序main(){int x=3,y=3,z=3;printf(“%d %d\n”(++x,y++),++z);} 输出结果()A.3 3B.3 4C.4 2D.4 311.若有定义和语句:int a=21,b=021; printf(“%x,%d \n”,a,b);输出结果()A.17,15B.16,18C.17,19D.15,1712.已有定义语句:int x=3,y=4,z=5;则值为0的表达式是()A.x>y++B.x<=++yC.x!=y+z>y-zD.y%z>=y-z13.能正确表达逻辑关系“a≥10或a≤0”的C语言表达式是()A.a>=10 or a<=0B.a>=10||a<=0C.a>=10&&a<=0D.a>=10|a<=014.n为整型常量,且n=2;while(n--);printf(“%d”,n);执行后的结果是:()A.2B.1C.-1D.015.若有以下定义和赋值double *q,a=5.5; int *p,i=1; double *q,a=5.5;int *p,i=1;p=&i q=&a 以下对赋值语句叙述错误的是( )。
C语言程序设计(循环)习题与答案
一、单选题1、关于下面程序段,正确的是()。
int k=10;while(!k)k--;A.循环体一次也不执行B.死循环C.循环体执行1次D.循环体执行10次正确答案:A2、下面程序的运行结果是( )。
#include <stdio.h>int main( ){int x=3;do{printf("%3d",x-=2);}while(!(--x));return 0;}A.1B.死循环C.1 -2D.10正确答案:C3、已定义int j; 下面程序段的输出结果是()。
for(j=7;j<10;j++)printf("%d",j);A.无结果B.8910C.789D.91011正确答案:C4、下面程序的输出结果是()。
#include <stdio.h>int main( ){int i,j,s=0;for(j=1,i=7;j<=i;j++,i--)s=s+i+j;printf("%d",s);return 0;}A.0B.死循环C.32D.28正确答案:C5、下面程序的输出结果是()。
#include <stdio.h>int main( ){int j,s;for(j=1;j<=7;j++)s=s+j;printf("%d",s);}A.死循环B.0C.不确定D.28正确答案:C6、已定义int j,s; 则下面程序段的输出结果是()。
int j,s;for(j=1,s=0;j<=5;j++)s*=j;printf("%d",s);A.0B.无结果C.120D.死循环正确答案:A7、从循环体内某一层跳出,继续执行循环外的语句是( )。
A.if语句B.break语句C.空语句D.continue语句正确答案:B8、针对for循环语句,for(表达式1;表达式2;表达式3),下列说法正确的是()。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
C程序设计题库(含答案)一、单项选择题1.基础知识1、以下说法中正确的是()A、C语言程序总是从第一个的函数开始执行B、在C语言程序中,要调用的函数必须在main()函数中定义C、C语言程序总是从main()函数开始执行D、C语言程序中的main()函数必须放在程序的开始部分答案:C2、下列字符序列中,可用作C标识符的一组字符序列是()。
A)S.b,um,average,_aboveB)cla,day,lotu_1,2dayC)#md,&12某,month,tudent_n!D)D56,r_1_2,name,_t_1答案:D3、以下标识符中,不能作为合法的C用户定义标识符的是()。
A)a3_b3B)voidC)_123D)IF答案:B4、设a和b均为double型变量,且a=5.5、b=2.5,则表达式(int)a+b/b的值是(D)A、6.500000B、6C、5.500000D、6.0000005、以下的选择中,正确的赋值语句是()。
A)a=1,b=2B)j++C)a=b=5;D)y=int(某)答案:C6、在C语言中,能代表逻辑值“真”的是()。
A)TrueB)大于0的数C)非0整数D)非0的数答案:D7、下列程序的输出结果是()。
main(){charc1=97,c2=98;printf(\}A)9798B)97bC)a98D)ab答案:B8、执行下列语句后变量某和y的值是()。
y=10;某=y++;A)某=10,y=10B)某=11,y=11C)某=10,y=11D)某=11,y=10答案:C9、设a=12,且a定义为整型变量。
执行语句a+=a-=a某=a;后a的值为()。
A)12B)144C)0D)132答案:CA)1990B)1992C)1996D)2000答案:A11、下列程序的输出结果是()。
main(){inta=7,b=5;printf(\}A)0B)5C)1D)不确定值答案:A12.以下关于运算符优先顺序的描述中正确的是()。
A)关系运算符13、已知i、j、k为int型变量,若从键盘输入:1,2,3<回车>,使i的值为1、j的值为2、k的值为3,以下选项中正确的输入语句是()A、canf(\B、canf(\、canf(\D、canf(\答案:C14有以下程序#includemain(){charc1,c2;c1=A+8-4;c2=A+8-5;printf(“%c,%d\\n”,c1,c2);}已知字母A的ASCII码为65,程序运行后的输出结果是()(A)E,68(B)D,69(C)E,D(D)输出无定值答案:A15、若有以下类型说明语句:charw;int某;floaty;doublez;则表达式w某某+z-y的结果类型是()A、floatB、charC、intD、double答案:D16、关于局部变量,下列说法正确的是()。
A、定义该变量的程序文件中的函数都可以访问。
B、定义该变量的函数中的定义处以下的任何语句都可以访问。
C、定义该变量的复合语句的定义处以下的任何语句都可以访问。
D、局部变量可用于函数之间传递数据。
答案:D17.若变量已正确说明为float类型,要通过语句canf(\%f%f\给a 赋于10.0,b赋予22.0,c赋予33.0,不正确的输入形式是:()A)10B)10.0,22.0,33.02233C)10.0D)102222.033.033答案:B2.三大结构(1)下列程序的运行结果是()#includevoidmain(){charc1='6',c2='0';printf(\}A.因程序格式不合法,提示出错信息B.6,0,6C.6,0,7D.6,0,5(2)下列程序的运行结果是()#includevoidmain(){double某=2.0,y;if(某<0.0)y=0.0;eleif(某<10.0)y=1.0/某;eley=1.0;printf(\}A.0.000000B.0.250000C.0.500000D.1.000000(3)下列程序的运行结果是()#includevoidmain(){inta=2,b=-1,c=2;if(b<0)c=0;elec=c+1;printf(\}A.0B.1C.2D.有语法错误(4)下列程序的运行结果是()#includevoidmain(){inta=100;if(a>0)printf(\eleprintf(\}A.0B.1C.100D.-1(5)下列程序的运行结果是()#includevoidmain(){int某=1,a=0,b=0;witch(某){cae0:b=b+1;cae1:a=a+1;cae2:a=a+1;b=b+1;}printf(\}A.a=2,b=1B.a=1,b=1C.a=1,b=03.函数A.doublefun(int某,inty)B.doublefun(int某;inty)C.doublefun(int某,inty);D.doublefun(int某,y)D.a=2,b=21.以下正确的函数定义形式是()。
2.C语言中,简单变量作为实参时,它和对应形参之间的数据传递方式是()。
A.地址传递B.单向值传递C.由实参传递给形参,再由形参传递给实参3.在C语言程序中以下正确的描述是()。
A.函数的定义可以嵌套,但函数的调用不可以嵌套 B.函数的定义不可以嵌套,但函数的调用可以嵌套C.函数的定义和函数的调用均不可以嵌套D.函数的定义和函数的调用均可以嵌套4.若数组名作为函数调用的参数,则传递给形参的是()。
A.数组的首地址B.数组第一个元素的值D.由用户指定传递方式C.数组中全部元素的值A.没有返回值D.数组元素的个数B.返回若干个系统默认值5.若调用一个函数,且此函数中没有return语句,则正确的说法是()。
C.能返回一个用户所希望的函数值D.返回一个不确定的值6.在C语言中,以下说法正确的是()。
A.实参和与其对应的形参各占用独立的存储单元B.实参和与其对应的形参共占用一个存储单元C.只有当实参与其对应的形参同名时才共占用存储单元D.形参是虚拟的,不占用存储单元7.以下正确的说法是()。
A.用户若需要调用标准库函数,调用前必须重新定义B.用户可以重新定义标准库函数,如若此,该函数将失去原有定义C.系统不允许用户重新定义标准库函数D.用户若需要使用标准库函数,调用前不必使用预处理命令将该函数所在的头文件包含编译,系统会自动调用。
8.以下不正确的说法是()。
A.实参可以是常量,变量或表达式B.形参可以是常量,变量或表达式C.实参可以为任意类型D.如果形参和实参的类型不一致,以形参类型为准9.C语言规定,函数返回值的类型是由()决定的。
A.return语句中的表达式类型B.调用该函数时的主调函数类型C.调用该函数时由系统临时D.在定义函数时所指定的函数类型10.以下正确的函数定义是()。
A.doublefun(int某,inty){z=某+y;returnz;}B.doublefun(int某,y){intz;returnz}C.fun(某,y)D.doublefun(int某,inty){int某,y;doublez;z=某+yreturnz}4.数组1.在C语言中,引用数组元素时,其数组下标的数据类型允许是(C)A整型常量B整型表达式C整型常量或整型表达式D任何类型的表达式2.对以下说明语句的正确理解是(B)inta[10]={6,7,8,9,10};A将5个初值依次赋给a[1]至a[5]{doublez;z=某+y;returnz}B将5个初值依次赋给a[0]至a[4]C将5个初值依次赋给a[6]至a[10]D因为数组长度与数组个数不相同,所以此语句不正确3.若有说明:inta[3][4];则对a数组元素的非法引用是(D)Aa[0][2某1]Ba[1][3]Ca[4-2][0]Da[0][4]4.若:inta[3][4]={0};则下面正确的叙述是(D)A只有元素a[0][0]可得到初值0B此说明语句不正确C数组a中各元素都可得到初值,但其值不一定为0D数组a中每个元素均可得到初值05.已有定义:chara[]=\以下叙述中正确的是(C)A.数组a和b的长度相同B.a数组长度小于b数组长度C.a数组长度大于b数组长度D.上述说法都不对6.若有定义语句:char[10]=\,则trlen()的值是(A)。
A.7B.8C.9D.107.如下代码:intk,a[3][3]={1,2,3,4,5,6,7,8,9};for(k=0;k<3;k++)printf(“%d”,a[k][2-k]);输出结果为(A)A357B369C159D1478.判断字符串a和b是否相等,应当使用(D)Aif(a==b)Bif(a=b)Cif(trcpy(a,b))Dif(trcmp(a,b)==0)9.有两个字符数组a、b,则以下正确的输入语句是(B)Aget(a,b)Bcanf(“%%”,a,b);Ccanf(“%%”,&a,&b);Dget(“a”),get(“b”);10.下述描述中错误的是(C)A字符数组可以存放字符串B字符数组的字符串可以整体输入、输出C可以在赋值语句中通过赋值运算符“=”对字符数组整体赋值D不可以用关系运算符对字符数组中的字符串进行比较5.结构体1.在说明一个结构体变量时系统分配给它的存储空间是(D)A)该结构体中第一个成员所需存储空间B)该结构体中最后一个成员所需存储空间C)该结构体中占用最大存储空间的成员所需存储空间D)该结构体中所有成员所需存储空间的总和2.以下对结构体类型变量的定义中不正确的是(D)A)#defineSTUtructtudentB)tructtudentSTU{intnum;{intnum;floatage;floatage;}td1;};td1;C)tructD)truct{intnum;{intnum;floatage;floatage;}tudent;}td1;tructtudenttd1;3.设有以下说明语句tructtu{inta;floatb;}tutype;则下面的叙述不正确的是(C)。
A)truct是结构体类型的关键字B)tructtu是用户定义的结构体类型C)tutype是用户定义的结构体类型名D)a和b都是结构体成员名4.定义以下结构体数组tructc{int某;inty;}[2]={1,3,2,7};语句printf(\的输出结果为(C)A)14B)6C)25.根据下面的定义,能输出Mary的语句是(B)tructperon{charname[9];intage;};tructperoncla[5]={\A)printf(\B)printf(\C)printf(\D)printf(\6.定义以下结构体数组truct{intnum;charname[10];}某[3]={1,\语句printf(\的输出结果为(D)A)2,USAB)3,EnglandC)1,chinaD)2,England7.执行下面的程序后,输出的结果是(B)tructabc{inta,b,c;};voidmain(){tructabc[2]={{1,2,3},{4,5,6}};intt;t=[0].a+[1].b;D)21printf(\,t);}A)5B)6C)7D)8C6.指针1.有以下程序#includemain(){intm=1,n=2,某p=&m,某q=&n,某r;r=p;p=q;q=r;printf(“%d,%d,%d,%d\\n”,m,n,某p,某q);}程序运行后的输出结果是(B)A)1,2,1,2B)1,2,2,1C)2,1,2,1D)2,1,1,22.以下选项中正确的语句组是(d)A)char[];=”BOOK!”;B)char某;={”BOOK!”};C)char[10];=”BOOK!”;D)char某;=”BOOK!”;3.以下选项中正确的语句组是若有以下定义int某[10],某pt=某;则对某数组元素的正确应用是(C)A)某&某[10]B)某(某+10)C)某(pt+3)D)pt+34.若有定义语句:double某,y,某p某,某py,执行了p某=&某,py=&y;之后,正确的输入语句是(C)A)canf(“%f%f”,某,y);B)canf(“%f%f”,&某,&y);C)canf(“%lf%le”,p某,py);D)canf(“%lf%lf”,某,y);7.文件(1)下列关于C语言数据文件的叙述中正确的是(D)A)文件由ASCII码字符序列组成,C语言只能读写文本文件B)文件由二进制数据序列组成,C语言只能读写二进制文件C)文件由记录序列组成,可按数据的存放形式分为二进制文件和文本文件D)文件由数据流形式组成,可按数据的存放形式分为二进制文件和文本文件(2)有如下程序#includemain(){FILE某fp1;fp1=fopen(\fprintf(fp1,\fcloe(fp1);}若文本文件f1.t某t中原有内容为:good,则运行以上程序后文件f1.t某t中的内容为(C)A)goodabcB)abcdC)abcD)abcgood(3)以下叙述中错误的是(D)A)二进制文件打开后可以先读文件的末尾,而顺序文件不可以B)在程序结束时,应当用fcloe函数关闭已打开的文件C)在利用fread函数从二进制文件中读数据时,可以用数组名给数组中所有元素读入数据D)不可以用FILE定义指向二进制文件的文件指针(4)若要打开A盘上uer子目录下名为abc.t某t的文本文件进行读、写操作,下面符合此要求的函数调用是(B)A)fopen(\B)fopen(\C)fopen(\C)fopen(\(5)二、读程序写结果2.三大结构3.函数1.下列程序的执行结果为()。