欢迎来到淘文阁 - 分享文档赚钱的网站! | 帮助中心 好文档才是您的得力助手!
淘文阁 - 分享文档赚钱的网站
全部分类
  • 研究报告>
  • 管理文献>
  • 标准材料>
  • 技术资料>
  • 教育专区>
  • 应用文书>
  • 生活休闲>
  • 考试试题>
  • pptx模板>
  • 工商注册>
  • 期刊短文>
  • 图片设计>
  • ImageVerifierCode 换一换

    大一c语言习题练习及答案.pdf

    • 资源ID:88032845       资源大小:21.89MB        全文页数:137页
    • 资源格式: PDF        下载积分:12金币
    快捷下载 游客一键下载
    会员登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录   QQ登录  
    二维码
    微信扫一扫登录
    下载资源需要12金币
    邮箱/手机:
    温馨提示:
    快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝    微信支付   
    验证码:   换一换

     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    大一c语言习题练习及答案.pdf

    第一章程序设计与C语言1.1选择题考点:标识符的命名规则(1)只能由字母、数字、下划线构成(2)数字不能作为标识符的开头(3)关键字不能作为标识符选项A 中的“,选 项 B 中 与 不 满 足(1);选项D 中的int为关键字,不满足(3)1.下列正确的标识符是(C)。A.-al B.ai C.a2_i D.int t2.下列C 语言用户标识符中合法的是(B)oA)3ax B)x C)case D)-e2 E)union选项A 中的标识符以数字开头不满足(2);选项C,E 均为为关键字,不 满 足(3);选项 D 中 的 不 满 足(1);3.下列四组选项中,正确的C 语言标识符是(CA)%x B)a+b C)al23 D)123选项A 中的 ,选 项 B 中+”不满足(1);选项D 中的标识符以数字开头不满足(2)4.下列四组字符串中都可以用作C 语言程序中的标识符的是(A)。A、print _3d db8 a Be B、lam one_half start$it 3paiC、str_l Cpp pow while D、Pxq My-book line#His.age选项B 中的,选项D 中 不满足(1);选项C 中的while为关键字,不 满 足(3)知识点:简单C 语言程序的构成和格式5.在一个C 程序中一 B。A、main函数必须出现在所有函数之前 B、main函数可以在任何地方出现C、main函数必须出现在所有函数之后 D、main函数必须出现在固定位置6.以下说法中正确的是_ D。A、#define和 printf都是C 语句 B、#define是 C 语句,而 printf不是C、printf是 C 语句,但#define不是 D、#define和 printf都不是C 语句7.一个C 程序的执行是从(A)。A 本程序的main函数开始,到 main函数结束B 本程序文件的第一个函数开始,到本程序文件的最后一个函数结束C 本程序的main函数开始,到本程序文件的最后一个函数结束D 本程序文件的第一个函数开始,到本程序main函数结束8.在 C 语言中,每个语句必须以(D)结束。A.回车符 B,冒号 C.逗号D.分号9.C 语言规定:在一个源程序中,main函数的位置(C)。A,必须在最开始C.可以任意B.必须在系统调用的库函数的后面D.必须在最后10.一个C 语言程序是由(B)。A.一个主程序和若干子程序组成C.若干过程组成B.函数组成D.若干子程序组成11.下列说法中错误的是(D)。A.主函数可以分为两个部分:主函数说明部分和主函数体B.主函数可以调用任何非主函数的其他函数C.任何非主函数可以调用其他任何非主函数D.程序可以从任何非主函数开始执行12.用 C 语言编写的源文件经过编译,若没有产生编译错误,则系统将(C)。A.生成可执行目标文件B.生成目标文件C.输出运行结果D.自动保存源文件1.2填空题2、C 语言只有卫个关键字和2种控制语句。2、每个源程序有且只有一个m ain函数,系统总是从该函数开始执行C 语言程序。3、C 语言程序的注释可以出现在程序中的任何地方,它总是以上符号作为开始标记,以U符号作为结束标记。4、C 语言中,输入操作是由库函数包 完成的,输 出 操 作 是 由 库 函 数 皿 完 成的。5、系统默认的C 语言源程序文件的扩展名是上,经过编译后生成的目标文件的扩展名是.obi,经过连接后生成的可执行文件的扩展名是.exe。6、C 语言的标识符只能由字母、数字和下划线三种字符组成。第 二 章C H 2数据的存储与运算2.1选择题1.C语言中的简单数据类型包括(D)oA、整型、实型、逻辑型 B、整型、实型、逻辑型、字符型C、整型、字符型、逻辑型 D、整型、实型、字符型2.在C 语言程序中,表达式5%2的 结 果 是 C。A)2.5 B)2 C)1 D)3%为求余运算符,该运算符只能对整型数据进行运算。且符号与被模数相同。5%2=1;5%(-2)=1;(-5)%2=-1;(-5)%(-2)=-1;/为求商运算符,该运算符能够对整型、字符、浮点等类型的数据进行运算,5/2=23.设int a=1 2.则执行完语句a+=a-=a*a后,a 的值是_D。A、552 B、264 C、144 D、-2644.以下变量x、y、z 均为double类型且已正确赋值,不能正确表示数字式子x/(y*z)的 C 语言表达式是 A。A、x/y*z B、x*(l/(y*z)C、x/y*l/z D、x/y/z5.若有定义:int a=8,b=5,c;,执行语句c=a/b+0.4;后,c的值是_BA、1.4 B、1 C、2.0 D、26.以下选项中,不能作为合法常量的是_B.A、1.234e04 B、1.234e0.4 C、_O1.234e+4D、1.234e07.以下符合C 语言语法的实型常量是 C_A、1.2E0.5 B、3.14159E C、O.5E-3D、E158.表达式 3.6-5/2+1.2+5%2 的值是_ D _。A、4.3 B、4.8 C、3.3D、3.89,下列定义变量的语句中错误的是_ D oA、int _int B、double int _ C、char For D、float US$10.以下不合法的用户标识符是_ C oA、j2_KEY B、Double C、4d D、_8_11.以下4 组用户定义标识符中,全部合法的一组是_A.A、_main enclude sinB、If-max turboC、txt REAL 3C0MD、int k_2 _001?12.以下定义语句中正确的是_ C。A char a=A b=B;B、float a=b=10。(正解 a=10.0 b=10.0)C int a=10,*b=&a;D、float*a,b=&a;?13.以下不能定义为用户标识符的是_ D。A、scanf B、Void C、_3com_ D、int14.以下有4 组用户标识符,其中合法的一组是 CoA For-sub Case 4d DO Size C、f2_G3 IF abcD、WORD Void define15.C语言中最简单的数据类型包括_B oA、整型、实型、逻辑型 B、整型、实型、字符型C、整型、字符型、逻辑型 D、整型、实型、逻辑型、字符型16,下列选项中,合法的C 语言关键字是_ D oA、VAR B、cher C、integer D、default17.以下不能定义为用户标识符的是_ D oA、Main B、_0 C、J nt D、sizeof18下列叙述中正确的是_D oA、C 语言中既有逻辑类型也有集合类型 B、C 语言中没有逻辑类型但有集合类型C、C 语言中有逻辑类型但没有集合类型 D、C 语言中既没有逻辑类型也没有集合类型19.设inta=12,则执行完语句a+=a-=a*a后,a 的值是_D 0A、552 B、264 C、144 D、-26420.以下变量x、y、z 均为double类型且己正确赋值,不能正确表示数字式子x/(y*z)的 C 语言表达式是_ _ A_ oA、x/y*z B、x*(l/(y*z)C x/y*l/z D、x/y/z21.若有定义:int a=8,b=5,c;,执行语句c=a/b+0.4;后,c的值是_B。A、1.4 B、1 C、2.0 D、222.设有定义:fl。ata=2,b=4,h=3;,以下C 语言表达式与代数式 l/2(a+b)h)计算结果不相符的是_ _ _ B_oA、(a+b)*h/2 B、(l/2)*(a+b)*h C、(a+b)*h*l/2 D、h/2*(a+b)23.假定x 和 y 为 double型,表达式x=2,y=x+3/2的值是_ D_。A、3.500000B、3C、2.000000D、3.00000024.若已定义x 和 y 为 double类型,则表达式x=l/y=x+3/2的值是_ C_。A 1 B、2 C、2.000000 D、2.50000025.若有以下程序段int cl=l,c2=2,c3;c3=1.0/c2*cl;则执行后,c3 中的值是 AoA、0 B、0.5 C、1 D、226.设有intx=ll;则表达式(x+*l/3)的值是 A。?A、3B、4C、11D、1227.下列程序的输出结果是 Comain()(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.0728.请读程序片段:int i=65536;printf(%dnJ);上面程序片段的输出结果是 B oA、65536 B、0 C、有语法错误,无输出结果 D、29.若有以下定义和语句:int u=010zv=0 xl0,w=10;printf(,%d/%d/%dn,u/vzw);则输出结果是:_ A oA、8,16,10 B、10,10,10 C、8,8,10 D、8,10,1030.在C 语言中,不正确的int类型的常数是 AoA、32768 B、0 C、037 D、OxAF31.以下程序的输出结果是_ D omain()int k=17;printf(%d,%o,%x n”,k,k,k);)A、17,021,0 x11 B、17,17,17 C、17,0 x11,021 D、17,21,1132.下面程序的输出是_C omain()(unsigned a=32768;printf(a=%dn,a);)A、a=32768 B、a=32767C a=-32768 D、a=-l33.在C 语言中,合法的长整型常数是 AoA、0L B、4962710 C、324562&D、216D34.C语言中运算对象必须是整型的运算符是_ A oA、%=B、/C=D 5)printf(%drT,x);else printf(drT,x);)则输出是_ B oA、7 B、6 C、5 D、438.有以下程序main()(char al=M,a2=m;printf(%cn,(al,a2);)以下叙述中正确的是 B。A、程序输出大写字母M B、程序输出小写字母mC、格式说明符不足,编译出错 D、程序运行时产生出错信息39.以下程序的输出结果是_ B。main()(int a;printf(%dn,(a=3*5,a*4,a+5);A、65 B、20 C、15 D、1040.设有如下程序段int x=2002/y=2003;printf(%dn,(x/y);则以下叙述中正确的是_ D oA、输出语句中格式说明符的个数少于输出项的个数,不能正确输出B、运行时产生错误信息C、输出值为2002D、输出值为200341有以下程序main()(int x,y,z;x=y=l;z=x+,y+,+y;printf(%d,%d,%dn”,x,y,z);)程序运行后的输出结果是 COA、2,3,3 B、2,3,2 C、2,3,1 D、2,2,142.设有以下定义int a=0;double b=1.25;char c=A;#define d 2则下面语句中错误的是_D oA、a+;B、b+;C、C+;D、d+;43.以下程序的输出结果是 D omain()(int x=10,y=10;printf(%d%dn,x-,-y);A、1010 B、99 C、910 D、10 944.若X 和 y 都是int型变量,x=100、y=200,且有下面的程序片段printf(%d,(x,y);上面程序片段的输出结果是 A-。A、200 B、100 C,100 200 D、输则格式符不够,输出不确定的值45.设有如下定义:int x=10,y=3zz;则语句printf(%dn,z=(x%y/x/y);的输出结果是_ D_。A、1 B、0 C、4 D、346.两次运行下面的程序,如果从键盘上分别输入6 和 4,则输出结果是 A。main()(int x;scanf(%d,&x);if(x+5)printf(%d,x);elseprintf(%dn,x-);)A、7 和 5 B、6 和 3 C、7 和 D、6 和 447.若t 为 double类型,表达式t=l,t+5,t+的值是_ D_。A、1 B、6.0 C、2.0 D、1.048.以下程序的输出结果是_ A o#includemain()int i=10,j=10;printf(”%d,%drT,+i,j-);A、11,10 B、9,10 C、010,9 D、10,949.有以下程序main()(int y=10;while(y-);printf(y=%dn,y);)程序执行后的输出结果是_ B _。A、y=0 B、y=-l C、y=l D、while 构成无限循环50.下列程序的输出结果是(B)。main()int a=7,b=5;printf(%dn,b=b/a);)A、5 B、1 C、0 D、不确定值51.以下选项中,不正确的C 语言浮点型常量是(C)。A.160 B.0.12 C.2e4.2 D.0.052.以下选项中,(D)是不正确的C 语言字符型常量。A.a B.x41 C.101 D.a53.在 C 语言中,字符型数据在计算机内存中,以字符的(C)形式存储。A,原码 B,反码 C.ASCII码 D.BCD码54.若X、i、j 和 k 都是int型变量,则计算下面表达式后,x 的 值 是(C)。x=(i=4,j=16,k=32)A.4 B.16 C.32 D.5255.算术运算符、赋值运算符和关系运算符的运算优先级按从高到低依次为(B)。A.算术运算、赋值运算、关系运算B.算术运算、关系运算、赋值运算C.关系运算、赋值运算、算术运算D.关系运算、算术运算、赋值运算56.若有代数式,则不正确的C 语言表达式是(C)。A.a/b/c*e*3 B.3*a*e/b/cC.3*a*e/b*c D.a*e/c/b*357.表达式!x11a=二 b 等效于(D)。A.!(x|a)=b)B.!(x|y)=bC.!(x|(a=b)D.(!x)|(a=b)58.设整型变量 m,n,a,b,c,d 均为 1,执 行(m=ab)&(n=cd)后,m,n 的 值 是(A)。A.0,0 B.0,1 C.1,0 D.1,159.设有语句int a=3;,则执行了语句a+=a=a*=a;后,变 量 a 的值是(B)。A.3 B.O C.9 D.-1260.在以下一组运算符中,优先级最低的运算符是(D)。A.*B.!=C.+D.=61.设整型变量i 值为2,表达式(+i)+(+i)+(+i)的结果是(B)。A.6 B.12 C.15 D.表达式出错62.若已定义x 和 y 为 double类型,则表达式x=l,y=x+3/2的值是(C)。A.1 B.2 C.2.0 D.2.563.sizeof(double)的结果值是(A)。A.8 B.4 C.2 D.出错64.设 a=l,b=2,c=3,d=4,则表达式:ab?a:cd?a:d 的结果为(D)。A.4 B.3 C.2 D.165.设a 为整型变量,不能正确表达数学关系:10a15的 C 语言表达式是(A)。A.10a10&a15 D.!(a=15)66.设f 是实型变量,下列表达式中不是逗号表达式的是(D)。A.f=3.2,1.0 B.f0,f0 D.f=(3.2,1.0)67.表达式18/4*sqrt(4.0)/8值的数据类型是(C 6A.int B.float C.double D.不确定68.已知字母A 的 ASCII码为十进制数6 5,且 c2为字符型,则执行语句C2=A+6-3 ;后 c2 中的值是(A)。A.DB.68C.不确定的值D.C69.以下用户标识符中,合法的是(B)。A.int B.nit C.123 D.a+b70.C 语言中,要求运算对象只能为整数的运算符是(A)oA.%B./C.D.*71.若有说明语句:charc=72,;则变量c在内存占用的字节数是(A)A.1 B.2 C.3 D.472.字符串ABC在内存占用的字节数是(B)。A.3 B.4 C.6 D.873.要为字符型变量a 赋初值,下列语句中哪一个是正确的(B)。A.char a=3;B.chara=3;C.char a=%;D.char a=*;74.下列不正确的转义字符是(C)。A.B.C.074 D.02.2 填空题1、c 语言中的逻辑值“真”是用工表示的,逻辑值“假”是用口表示的。2、若 x 和 n 都是int型变量,且 x 的初值为12,n 的初值为5,则计算表达式x%=(n%=2)后x 的值为0。3、设 c=w,a=l,b=2,d=-5,则表达式x+lc,y!=c+2,-a-5*b=d+l,b=a=2 的值分别为_、2_、工、1 o4、设 float x=2.5,y=4.7;int a=7;,表达式 x+a%3*(int)(x+v)%2/4 的值为 2.5。5、判断变量a、b 的值均不为旦的逻辑表达式为a!=0&b!=0。6、求解赋值表达式a=(b=10)%(c=6),表达式值、a、b、c 的值依次为4,4,10,6。7、求解逗号表达式x=a=3,6*a后,表达式值、x、a 的值依次为18,3,3。8、数学式a/(b*c)的 C 语言表达式a/b/c。9、若有语句int i=-19,j=i%4;printf(%dn,j);则 输 出 结 果 是。答案:-310、设 y 是 in t型变量,请写出判断v 为奇数的关系表达式v%2第 三 章C H 3顺序程序设计3.1选择题1.如果int a=3,b=4;则条件表达式ab?a:b的值是 A。A)3 B)4 C)0 D)1表达式1?表达式2:表达式3先计算表达式1,若表达式1成立,则选择计算表达式2,并表达式2的值作为整个大表达式的值;若表达式1不成立,则选择计算表达式3,并将表达式3的值作为整个大表达式的值此题中的ab相当于表达式1,a相当于表达式2,b相当于表达式3.a为3,b为4。ab表达式1成立,因此计算表达式2,并将表达式2的值即a中的值,并作为整个表达式的值,因此整个表达式的值为32.若int x=2,y=3,z=4则表达式x4 B)3 C)2 D)0 E)13.C语言中,关系表达式和逻辑表达式的值是(B)oA)0 B)0 或 1 Q I D)T或F4.下面(D)表达式的值为4.A)11/3 B)11.0/3C)(float)ll/3 D)(int)(11.0/3+0.5)(1)相同数据类型的元素进行数学运算(+、-、*、/)得到结果还保持原数据类型。(2)不同数据类型的元素进行数学运算,先要统一数据类型,统一的标准是低精度类型转换为高精度的数据类型。选项A,11与3为两个整数,11/3结果的数据类型也应为整数,因此将3.666666的小数部分全部舍掉,仅保留整数,因 此11/3=3.选 项B,11.0为实数,3为整数,因此首先要统一数据类型,将整型数据3转换为3.0,转换后数据类型统一为实型数据,选 项B变 为11.0/3.0,结果的数据类型也应为实型数据,因此选项 B 11.0/3=3.666666选项C,先将整数11强制类型转换,转换为实型1 1.0,因此选项C变 为11.0/3,其后计算过程、结果与选项B同选 项D,首 先 计 算1 1.0/3,其计算过程、结 果 与 选 项B同,得 到3.666666;再计算3.666666+0.5=4.166666,最后将4.166666强制类型转换为整型,即将其小数部分全部舍掉,结果为45,设整型变量a=2,则执行下列语句后,浮点型变量b的值不为0.5的 是(B)A.b=1.0/a B.b=(float)(l/a)C.b=l/(float)a D.b=l/(a*1.0)6.若“int n;float f=13.8;,则执行n=(int)f%3后,n 的 值 是(A)A.l B.4 C.4.333333 D.4.6(int)f表示将f 中的值强制类型转换为整型,即将13.8的小数部分舍掉,转换为13;然后计算13%3,结果为1,再将结果赋给变量n,因此n 的值为17.有如下程序main()int a;char c=10;float f=100.0;double x;a=f/=c*=(x=6.5);printf(%d%d%3.1f%3.1fn,a,c,f,x);)程序运行后输出结果是 B。A、1 65 1 6.5 B、1 65 1.5 6.5 C、165 1.0 6.5 D、2 65 1.5 6.58.若变量a、i 已正确定义,且 i 已正确赋值,合法的语句是 B。A、a=l B、+i;C a=a+=5;D a=int(i);9.若变量已正确定义并赋值,下面符合C 语言语法的表达式是_ B。A、a:=b+l B、a=b=c+2 C、int 18.5%3 D、a=a+7=c+b10.设变量x 为 float型且已赋值,则以下语句中能将x 中的数值保留到小数点后两位,并将第三位四舍五入的是_ C。A,x=x*100+0.5/100.0 B、x=(x*100+0.5)/100.0C、x=(int)(x*100+0.5)/100.0?D、x=(x/100+0.5)*100.0.若 k 是 int型变量,且有下面的程序片段k=-3if(k if(a0);D、if(b=O)m=l;n=2;?13.有以下程序main()int a=0,b=0;a=10;/*给 a 赋值*/b=20;/*给b赋 值7printf(a+b=%dn,a+b);程序运行后的输出结果是B。A、a+b=10 B、a+b=30 C、30 D、出错14.当c的值不为0时,在下列选项中能正确将c的值赋给变量a、b的是 C_oA、c=b=a;B、(a=c)II(b=c);C、(a=c)&(b=c);D a=c=b;15.以下选项中非法的表达式是D oA、0=x x+l=x+l16.以下程序的输出结果是B o/include 7main()(int a,b,d=241;a=d/100%9;b=(-l)&(-l);printf(%d,%dn,a,b);?)A、6,1 B、2,1 C、6,0 D、2,017.以下循环体的执行次数是_ C。main()(int i,j;for(i=0,j=l;i a=7+b,b+za+7 D a=7+bzc=a+7;22.请选出合法的C 语言赋值语句 B。A、a=b=58 B、i+;C、a=58,b=58 D、k=int(a+b);23.下面程序的输出是 Comain()int x=10,y=3;printf(n%dnzy=x/y);)A、0 B、1 C、3 D、不确定的值24.已知字母A 的 ASCII码为十进制的6 5,下面程序的输出是_ A _ _。main()(char chl/ch2;chl=7V+5-3;ch2=A+6-3;printf(d,%crT,chl,ch2);)A、67,D B、B,C C、C,D D、不确定的值25.下列程序的运行结果是 B-。include main()int a=2,c=5;printf(a=%dzb=%d nzazc);)A、a=%2,b=%5 B、a=2zb=5 C a=d,b=d D a=%dzb=5d26.以下程序的输出结果是 D。include main()int a=2,c=5;printf(a=%d/b=%dn,a/c);)A、a=%2,b=%5 B、a=2,b=5 C、a=%d,b=%d D、a=%dzb=%d27.有以下程序main()int x=102,y=012;printf(,%2d/%2dnzx,y);)执行后输出结果是 CoA、10,01 B、02,12 C、102,10 D、02,1028.有以下程序main()int a=666,b=888;printf(%dn,a,b);)程序运行后的输出结果是 B。A、错误信息 B、666 C、888 D、666,88829.有以下程序/include stdio.hmain()char cl=l,c2=2,;cl=getchar();c2=getchar();putchar(cl);putchar(c2);当运行时输入:a 回车后,以下叙述正确的是 A_。A、变量C 1 被赋予字符a,c2被赋予回车符B、程序将等待用户输入第2 个字符C、变量c l 被赋予字符a,c2中仍是原有字符2D、变量c l 被赋予字符a,c2中将无确定值30.执行下列程序时输入:123 空格 456 空格 789 回车,输出结果是 Dmain()char s100;int cj;scanf(%c,&c);scanf(%d,&i);scanf(%s,s);printf(”c,%d,%sA、123,456,789 B、1,456,789 C、1,23,456,789 D、1,23,45631.有定义语句:intb;charc10;,则正确的输入语句是_B cA、scanf(%d%s,&bz&c);scanf(%d%s,&b,c);C scanf(%d%s,/b/c);D scanf(%d%s,b,&c);32.若要求从键盘读入含有空格字符的字符串,应使用函数_ B_。A、getc()B、gets()C、getchar()D、scanf()33.有以下程序include main()char cl,c2,c3,c4,c5,c6;scanf(%c%c%c%c,&cl,&c2,&c3,&c4);c5=getchar();c6=getchar();putchar(cl);putchar(c2);printf(%c%cn,c5,c6);程序运行后,若从键盘输入(从第1 列开始)D。123 回车45678V 回车则输出结果是A、1267 B、1256 C、1278 D、124534.有以下程序main()(int m,n,p;scanf(m=%dn=%dp=%d,/&mz&n,&p);printf(%d%d%dn,m,n,p);)若想从键盘上输入数据,使 变 量 m 中的值为123,n 中的数值为456,p 中的值为789,则正确的输入是 AoA、m=123n=456p=789 B、m=123 n456 p=789C、m=123,n=456zp=789 D、123 456 78935.有以下程序段int m=O,n=O;char c=a;scanf(%d%c%dH,&m,&c/&n);printf(d,%c%dn”,m,c,n);若从键盘上输入:10A10 回车,则输出结果是 A oA、10;A,10 B、10,a,10 C、10,a,0 D、10,A,036.有定义语句:int x,y;,若要通过$2(1,%口&无&丫);语句使变量*得到数据1 1,变量y得到数值1 2,下面四组输入形式中,错误的是一 A-。A、1112 回车 B、回车C、11,12 回车 D、11,回车 12 回车37.若有以下定义和语句charcl=b,c2=e;printf(d,%cn”,c2-cl,c2-a+A);则输出结果是:_ B oA、2,M B、3,E C、2,E D、输出项与对应的格式控制不一致,输出结果不确定38.己定义c为字符型变量,则下列语句中正确的是C。A、c=97;B、c=97;C、c=97;D、c=a;39.数字字符0 的 ASCII值为4 8,若有以下程序一C。main()(chara=,l,/b=2,;printf(%c/,b+);printf(%dn,b-a);程序运行后的输出结果是A、3,2 B、50,2 C、2,2 D、2,5040.以下程序的输出结果是 A。main()char c=z;printf(%cnzc-25);)A a B、Z C z-25 D、y41.若变量a 是 int类型,并执行了语句:a=A+1.6;,则 正 确 的 叙 述 是。A、a 的值是字符C B、a 的值是浮点型C、不允许字符型和浮点型相加 D、a 的值是字符K 的 ASCII值加上142.下列程序执行后的输出结果是_ A_omain()(int x=f;printf(%c XnVA+fx-a+l);A、GB、HC、ID、J43.以下程序的输出结果是 B。main()inti;for(i=A;il;i+,i+)printf(%c,i+32);printf(n);)A,编译不通过,无输出 B、aceg C acegi D,abcdefghi44.有如下程序/include main()printf(%dn,NULL);)程序运行后的输出结果是_ A。A、0 B、1 C、-1 D、NULL 没定义,出错45.设有说明语句:char a=72;则变量a_ A_。A,包含1 个字符 B,包含2 个字符 C、包含3 个字符 D、说明不合法46.当把以下四个表达式用作i f 语句的控制表达式时,有一个选项含义不同,这个选项是A、K%2 B、K%2=1 C、(K%2)!=0 D、!K%2=147.以下叙述中错误的是 C。A、C 语句必须以分号结束 B、复合语句在语法上被看作一条语句C、空语句出现在任何位置都不会影响程序运行D、赋值表达式末尾加分号就构成赋值语句48.若变量x、y 已正确定义并赋值,以下符合C 语言语法的表达式是 A。A、+x,y=x-B、x+l=y C、x=x+10=x+y D、double(x)/1049.以下叙述中正确的是_ A _ _。A、C 程序中注释部分可以出现在程序中任意合适的地方B、花括号“”和“”只能作为函数体的定界符C、构成C 程序的基本单位是函数,所有函数名都可以由用户命名D、分号是C 语言之间的分隔符,不是语句的一部分50.假设变量a,b均为整型,表达式(a=5,b=2,ab?a+:b+,a+b)的 值 是()A7B8C9D251.设a 为 int型变量,执行下列赋值语句后,a 的取值分别是()。a=125,534;a=(int)125.521%4;a=52;A 125,31,1 B 125,1,20 C 125,31,20 D 125.534,2,2052似 下程序的输出结果为()o#define ADD(x)x*xmain()int a=4,b=6/c=7,d=ADD(a+b)*c;printf(d=%d,d);)Ad=70 Bd=80 C d=140 D d=7003.2读程序读程序写出结果,或者在程序的空白处填入正确代码。1.有如下程序#include stdio.hmain()char c;c=getchar();while(c!=?)putchar(c);c=getchar();)如果从键盘输入abcde?fgh(回车)运行结果为:abcde2.有如下程序#include main()char c;while(c=getchar()!=,$,)if(Av=c&cv=Z)putchar(c);else if(av=c&cv=z)putchar(c-32);当输入为ab*AB%cd#CD$时,运行结果为:ABABCDCD3.以下 程 序 的 输 出 结 果 是。main()int a=0;a+=(a=8);printf(%dn,a);?答案:164.若有定义:inta=10,b=9,c=8;接着顺序执行下列语句后,变量b 中的值是c=(a-=(b-5);c=(a%ll)+(b=3);答案:35.以 下 程 序 段 的 输 出 结 果 是.int i=9;printf(%on,i);答案:116.有以下程序#include main()char chl,ch2;int nl,n2;chl=getchar();ch2=getchar();nl=chl-O;n2=nl*10+(ch2-0);printf(%dn,n2);程序运行时输入:12回车,执 行 后 输 出 结 果 是。答案:127.以下程序运行后的输出结果是 omain()char m;m=B+32;printf(%cn,m);答案:b8.已知字母A 的 ASCII码 为 65.以下程序运行后的输出结果是main()char a,b;a=A+5-、3;b=a+6-、2;printf(%d%cnz/,a,b);答案:67G9.若有以下程序main()char a;a=H-A+O;printf(%cn,a);执 行 后 输 出 结 果 是。答案:710.以 下 程 序 运 行 后 的 输 出 结 果 是。main()int a=012,b=0 xl2,k=12;char c=102,d=r;printf(a=%dtb=%dtk=%dn”,a,b,k);printf(c=%c,d=%c%on,c,d,a);a=A;c=49;printf(a=%dtc=%cn,a,c);?11.以 下 程 序 运 行 后 的 输 出 结 果 是。main()int i=29,j=6,k=2,s;s=i+i/j%k-9;printf(s=%dn,s);?12.以下 程 序 运 行 后 的 输 出 结 果 是。main()char*s2=I love China!”,*sl=&s2;char*s3,c,*s4=w;s3=&c;*s3=H;s2=s2+2;printf(%st%ct%st%cnzs2z*s3zs4z*s l);3.3程序改错画横线的代码有误,请写出正确的代码1.从键盘输入整数x的值,并输出v的值main()float x,y:scanf(%d,&x);y=3.5+x;Drintf(v=%d);正确的:int x;float y;printf(y=%r,y);第 四 章CH4选择结构程序设计4.1读程序1.有如下代码:#includem ain()char ch;ch=getchar();switch(ch)case A:printf(、c/A);c a s e、B:printf(%c,7B,);break;default:printf(%sn,7,otherz,);)当从键盘输入字母A时,运行结果为:AB详见switch语句switch(表达式)case常 量1:语 句1case常量2:语 句2 a a a a case常量n:语句ndefault:语 句 n+1其中表达式,常 量1,常量n都为整型或字符型case相当于给出执行程序的入口和起始位置,若找到匹配的常量,则从此处开始往下执行程序,不再匹配常量,直至遇到break或switch结束本题过程:首先从键盘接收一个字符欠并将其放在变量ch中。执行switch语句。Switch后面的条件表达式为ch,因此表达式的值即为字符冗 用字符官依次与下面的case中的常量匹配。与 第1个case后的常量匹配,则从其后的语句开始往下执行程序(在执行过程中不再进行匹配。)因此先执行printf(%c,7V),屏幕上输出A;再往下继续执行printf(%c,E),屏幕上输出B:再继续执行break,此时跳出switch语句。2.有如下代码:#include main()int a=l,b=O;scanf(%dz,&a);switch(a)case 1:b=l;break;case 2:b=2;break;default:b=10;printf(%d,b);?若键盘输入5,运行结果为:10本题过程:首先用scanf函数为变量a 赋值为5。执行switch语句。switch后面的条件表达式为a,因此表达式的值即为5.用 5 依次与下面 case中的常量匹配。没有找到匹配的常量,因此两个case后的语句都不执行。执行default后面的语句b=10;将 10赋给变量b。输出变量b,结果为103.有如下代码:#include main()_ char grade=,C/;switch(grade)case A:printf(90-100n,z);case B:printf(,80-90nM);case C:printfC70-80nz,);case D:printf

    注意事项

    本文(大一c语言习题练习及答案.pdf)为本站会员(文***)主动上传,淘文阁 - 分享文档赚钱的网站仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知淘文阁 - 分享文档赚钱的网站(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    关于淘文阁 - 版权申诉 - 用户使用规则 - 积分规则 - 联系我们

    本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

    工信部备案号:黑ICP备15003705号 © 2020-2023 www.taowenge.com 淘文阁 

    收起
    展开