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

    2022年c语言作业答案 .pdf

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

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

    2022年c语言作业答案 .pdf

    No.: Name: 第1讲C语言概述注:本系列习题中符号表示一串字符中的空格,符号表示下划线,符号 表示换行回车,即键盘上Enter键。一、选择题1. 一个 C程序的执行是从A 。A) 本程序 main函数开始,到main函数结束B) 本程序文件第一个函数开始,到最后一个函数结束C) 本程序文件第一个函数开始,到本main函数结束D) 本程序 main函数开始,到本程序文件最后一个函数结束2. 以下叙述不正确的是D 。A) 一个 C源程序必须包含一个main函数B) 一个 C源程序可由一个或多个函数组成C) C程序的基本组成单位是函数D) 在C程序中,注释说明只能位于一条语句的后面3. 以下叙述正确的是C 。A) 在对一个 C程序进行编译的过程中,可发现注释中的拼写错误B) 在C程序中, main函数必须位于程序的最前面C) 语言本身没有输入输出语句D) C程序的每行中只能写一条语句4. 一个 C语言程序是由B 。A) 一个主程序和若干个子程序组成B) 函数组成C) 若干过程组成D) 若干子程序组成5. 以下叙述中正确的是C 。A) C 语言比其他语言高级B) C语言可以不用编译就能被计算机识别执行C) C语言以接近英语国家的自然语言和数学语言作为语言的表达形式D) C语言出现的最晚,具有其他语言的一切优点6. 下列叙述中正确的是D 。A) C 语言编译时不检查语法B) C语言的子程序有过程和函数两种C) C语言的函数可以嵌套定义D) C语言的函数可以嵌套调用7. 以下叙述中正确的是A 。A) 构成 C程序的基本单位是函数B) 可以在一个函数中定义另一个函数C) main 函数必须放在其他函数之前D) 所有被调用的函数一定要在调用之前进行定义名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 1 页,共 11 页 - - - - - - - - - 8. C语言规定,在源程序中,main函数的位置 C 。A) 必须在最开始B) 必须在系统调用的库函数的后面C) 可以仸意D) 必须在最后9. 下列选项中不是结构化程序基本结构的是B 。A) 顺序结构 B) 分支结构C) 选择结构 D) 循环结构10. 下列四组选项中,均不是C语言关键字的是A 。A) define IF type B) getc char printf C) include case scanf D) while go pow 11. 下列四组选项中,均是不合法的标识符的是B 。A) W P 0 do B) b-a goto int C) float la0 A D) -123 abc TEMP 12. 下列可用于 C语言标识符的一组是B 。A) void, define, WORD B) a3 b3, 123, Car C) For, -abc, IF Case D) 2a, DO, sizeof 13. 以面的 C程序中,错误的是D 。A) main() B) main() int x,y,z; int x,y,z; x=0;y=x-1; x=0;y=x+1; z=x+y; z=x+y; C) main() D) main() int x,z; int x,y,z; int y; x=0;y=x+1; x=0;y=x+1; z=x+y, z=x+y; 14. C语言中的标识符只能由字母,数字和下划线三种字符组成,且第一个字符C 。A) 必须为字母B) 必须为下划线C) 必须为字母或下划线D) 可以是字母,数字和下划线中仸一字符15. 下面各选项中,均是C语言标识符的选项组是B 。A) 33 we auto B) 23 me 3ew C) 43 3e else D) ER -DF 32 二、填空题1. 国际上 C语言常见的三个标准是:标准 C 、ANSI C 和ISO C 。2. C语言源程序的文件格式为*.c和*.h 。3. 请描述 C程序中 main函数的作用:接受系统调用,开始程序的执行,直至程序结束。三、程序编写题(请在本页背面作答) 1. 编写一个 C程序,输出以下信息* Very Good! 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 2 页,共 11 页 - - - - - - - - - * 2. 编写程序,实现求整数10、20和35的平均值(提示:注意给出的是三个整数,求出的平均值不是整数)1 No.: Name: 第2讲C语言基本数据类型一、选择题1. 若x、i、j、k都是 int型变量,则计算下面表达式后, x的值为 C 。x=(i=4,j=16,k=32) A) 4 B) 16 C) 32 D) 52 2. 下列四组选项中,均是合法转义字符的是A 。A) n B) 017 C) 018 f xab D) 0 101 xlf 3. 下面正确的字符常量是D 。A) c B) C) D) K4. 以下叙述不正确的是D 。A) 在C程序中,逗号运算符的优先级最低B) 在C程序中, MAX 和max是两个不同的变量C) 若a和b类型相同,在计算了赋值表达式a=b后,b中的值将放入a中, b中的值不变D) 从键盘输入数据时,对于整型变量只能输入整型数值,对于实型变量只能输入实型数值5. 以下叙述正确的是C 。A) 在C程序中,每行只能写一条语句B) 若a是实型变量,C程序中允许赋值a=10,因此实型变量中允许存放整型数C) 在C程序中, %是只能用于整数运算的运算符D) 在C程序中,无论是整数还是实数,都能被准确无误地表示6. 已知字母 A的ASCII 码为十进制数65,且 c2为字符型,则执行语句 c2A+6-3后, c2的值为 A 。A) D B) 68 C) 不确定的值 D) C 7. sizeof(float) 是B 。A) 一个双精度型表达式B) 一个整型表达式C) 一种函数表达式D) 一个不合法的表达式8. 设C语言中,一个int型数据在内存中占2个字节,则unsigned int 型数据的取值范围为C 。A) 0255 B) 032767 C) 065535 D) 02147483647 9. 设有说明: char w; int x; float y; double z;则表达式 w*x+z-y 值的数据类型D 。A) float B) char C) int D) double 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 3 页,共 11 页 - - - - - - - - - 10. 设以下变量均为int类型,则值不等于7的表达式是C 。A) (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) 11. C语言中的基本数据类型包括B 。A) 整型、实型、逻辑型B) 整型、实型、字符型C) 整型、字符型、逻辑型D) 字符型、实型、逻辑型12. 若变量已正确定义并赋值,以下符合C语言语法的表达式是 B 。A) a:=b+1 B) a=b=c+2 C) int 18.5%3 D) a=a+7=c+b 13. C语言中运算对象必须是整型的运算符是A 。A) %= B) / C) = D) = 14. 若变量 a,i已正确定义 ,且i已正确赋值,合法的语句是B 。A) a=1 B) +i; C) a=a+=5; D) a=int(i); 15. 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.000000 16. 在16位C编译系统上,若定义 long a; , 则能给a赋40000的正确语句是D 。A) a=20000+20000; B) a=4000*10; C) a=30000+10000; D) a=4000L*10L; 17. 设有 int x=11; 则表达式 (x+*1/3) 的值是 A 。A) 3 B) 4 C) 11 D) 12 18. 下列数据中,不合法的C语言实型数据的是C 。A) 0.123 B) 123e3 C) 2.1e3.5 D) 789.0 19. 若变量 a是int类型,并执行了语句:a= A +1.6;,则正确的叙述是 D 。A) a的值是字符 C B) 不允许字符型和浮点型相加C) a的值是浮点型D) a的值是字符 A的 ASCII 值加上 1 20. 设变量 n为float 类型, m为int类型,则以下能实现将n中的数值保留小数点后两位,第三位进行四舍五入运算的表达式是B 。A) n=(n*100+0.5)/100.0 B) m=n*100+0.5,n=m/100.0 C) n=n*100+0.5/100.0 D) n=(n/100+0.5)*100.0 21. 下面四个选项中,均是不正确的8进制数或 16进制数的选项是 D 。A) 016 0 x8f 018 B) 0abc 017 0 xa C) 010 -0 x11 0 x16 D) 0a12 7ff -123 22. 以下选项中,与k=n+ 完全等价的表达式是A 。名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 4 页,共 11 页 - - - - - - - - - A) k=n,n=n+1 B) n=n+1,k=n C) k=+n D) k+=n+1 23. 下面均是合法整型常量的选项是A 。A) 160 -0 xffff 011 B) -0 xcdf 01a 0 xe C) -01 986012 0668 D) -0 x48a 2e5 0 x 24. 假定 x和y为double型, 则表达式 x=2,y=x+3/2 的值是D 。A) 3.500000 B) 3 C) 2.000000 D) 3.000000 25. 以下变量 x,y,z均为 double类型且已正确赋值,不能正确表示数学式子x y z的C语言表达式是A 。A) x/y*z B) x*(1/(y*z) C) x/y*1/z D) x/y/z 26. 已知 int k,m=1; 执行语句 k=-m+; 后, k的值是 A 。A) -1 B) 0 C) 1 D) 2 27. 已知 int m;float k; 正确的语句是D 。A) (int k)%m B) int(k)%m C) int(k%m) D) (int)k%m 28. 不能进行 +和-运算的数据类型为D 。A) 指针 B) 整型 C) 长整型 D) 常量2 No.: Name: 29. putchar函数可以向终端输出一个D 。A) 整型变量表达式B) 实型变量值C) 字符串 D) 字符或字符型变量值30. printf 函数中用到格式符%5s,其中数字 5表示输出的字符串占用 5列。字符串长度大于5,则输出按方式B ;如果字符串长度小于5,则输出按方式C 。A) 从左起输出该字符串,右补空格B) 按原字符长从左向右全部输出C) 右对齐输出该字符串,左补空格D) 输出错误信息31. 阅读以下程序,当输入数据的形式为:25,13,10 ,则正确的输出结果为D 。main() int x,y,z; scanf( %d%d%d,&x,&y,&z); printf( x+y+z=%dn,x+y+z); A) x+y+z=48 B) x+y+z=35 C) x+z=35 D) 不确定32. 根据下面的程序及数据的输入和输出形式,程序中输入语句的正确形式应该为A 。main() char ch1,ch2,ch3; 输入语句printf( %c%c%c,ch1,ch2,ch3); 输入形式: A B C 输出形式: A B 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 5 页,共 11 页 - - - - - - - - - A) scanf(%c%c%c,&ch1,&ch2,&ch3); B) scanf(%c,%c,%c,&ch1,&ch2,&ch3); C) scanf(%c %c %c,&ch1,&ch2,&ch3); D) scanf(%c%c,&ch1,&ch2,&ch3); 33. 已知 ch是字符型变量,下面不正确的赋值语句是A 。A) ch= a+b ; B) ch= 0;C) ch= 7 + 9 ; D) ch=5+9; 34. 若变量已正确说明为float型,要通过语句scanf (%f%f%f ,&a,&b,&c); 给a赋予 10.0,b赋予 22.0,c赋予33.0,下列不正确的输入形式是B 。A) 10 22 33 B) 10.0,22.0,33.0 C) 10.0 22.0 33.0D) 10 22 3335. 下列程序段的输出结果是:C 。int a=1234; float b=123.456; double c=12345.54321; printf(%2d,%2.1f,%2.1f,a,b,c); A) 无输出 B) 12 ,123.5,12345.5 C) 1234,123.5,12345.5 D) 1234,123.4,1234.5 36. 已有定义 int a=-2; 和输出语句 printf(%8lx,a);以下正确的叙述是D 。A) 整型变量的输出形式只有%d一种B) %x 是格式符的一种,可适用于仸何一种类型的数据C) %x 是格式符的一种,其变量的值按十六进制输出,但%8lx 是错误的D) %8lx 不是错误的格式符,其中数字8规定了输出字段的宽度二、填空题1. 若有定义: int m=5,y=2; ,则计算表达式y+=y-=m*=y 后的 y值是 -16 。2. 在C语言中,一个int型数据在内存中占2个字节,则 int型数据的取值范围为-32768?32767 。3. 若a是int型变量,则计算表达式a=25/3%3 后a的值为 2 。4. 若x和n均是 int型变量, 且x和 n的初值均为 5, 则计算表达式x+=n+ 后x的值为 10 , n的值为 6 。5. 若有定义: char c=0108F0; 则字符串 c中包含的字符个数为5 。6. 定义 int a=5,b;, 则执行表达式b=+a*-a 之后,变量 b的值为 25 。7. 已知字母 a的ASCII 码为十进制数97,且设 ch为字符型变量,则表达式ch= a + 8- 3的值为 102或f 。8. 以下程序段的输出结果是i:dec=-4,oct=177774,hex=fffc,unsigned=65532 。main() short i; i=-4; printf( ni:dec=%d,oct=%o,hex=%x,unsigned=%un,i,i,i,i); 9. 假设变量 a和b均为整型,请填空使得以下语句可以不借助仸何变量把a、b中的值进行交换。a+= b ; b=a- b ; a-= b ; 10. 有一输入语句scanf(%d,k); 则不能使 float类型变量 k得到正确数值的原因是:(1) k应该加上取地址符号& ,成为 &k 和(2) float 型数据不能用%d格式来输入。三、程序编写题(请在本页背面作答) 1. 输入圆半径(5)和圆心角(60_C),输出圆的周长、面积和扇形周长、面积。2. 输入一个华氏温度,要求输出摄氏温度。公式为C _ 5 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 6 页,共 11 页 - - - - - - - - - 9 pF _ 32q,输出要有文字说明,取2位小数。3 No.: Name: 第3讲算法与程序基本结构一、选择题1. 如下程序的输出结果是A 。main() int x=1,a=0,b=0; switch(x) case 0: b+; case 1: a+; case 2: a+;b+; printf(a=%d,b=%dn,a,b); A) a=2,b=1 B) a=1,b=1 C) a=1,b=0 D) a=2,b=2 2. 以下程序执行后输出结果是C 。main() int i=1,j=1,k=2; if(j+|k+) &i+) printf(%d,%d,%dn,i,j,k); A) 1,1,2 B) 2,2,1 C) 2,2,2 D) 2,2,3 3. 如下程序的输出结果是C 。main() float x=2.0,y; if(x0.0) y=0.0; else if(x12?x+10:x-12; printf(%dn,y); A) 0 B) 22 C) 12 D) 10 6. 在C程序中,判逻辑值时,用” 非0” 表示逻辑值 ” 真” ,又用 ”0”表示逻辑值 ” 假” 。在求逻辑值时,逻辑表达式值为 ” 真” 和” 假” 分别用 A 表示。名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 7 页,共 11 页 - - - - - - - - - A) 1 和0 B) 0 和1 C) 非0和非 0 D) 1 和1 7. 以下 4个选项中,不能看做一条语句的是D 。A) ; B) a=5,b=2.5,c=3.6; C) if(a=10 or a=0|a=10&a=10|a=0 9. 如下程序的输出结果是C 。main() int a=2,b=-1,c=2; if(ab) if(b0) c=0; else c+; printf(%dn,c); A) 0 B) 1 C) 2 D) 3 10. 设x,y和 z都是 int型变量,且 x=3 ,y=4,z=5,则下面表达式中,值为0的表达式 D 。A) x&y B) x=y C) x|+y&y-z D) !(xb)& (n=cd) 后n的值是 B 。A) 1 B) 2 C) 3 D) 4 14. 下面程序 D 。main() int a=5,b=0,c=0; if(a=b+c) printf(*n); else printf($n); A) 有语法错不能通过编译B) 可以通过编译但不能通过连接C) 输出 * D) 输出 $ 15. 当k的值不为 0时,在下列选项中能够将k的值赋给变量m和n的是 B 。名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 8 页,共 11 页 - - - - - - - - - A) m=k=n B) (m=k)&(n=k) C) (m=k)|(n=k) D) (k=m)&(n=k) 16. 已知 int t=0; while (t=1) .则以下叙述正确的是B 。A) 循环控制表达式值为0 B) 循环控制表达式值为1 C) 循环控制表达式不合法D) 以上说法都不对17. 下面程序输出结果是B 。main() int n=9; while(n6) n-; printf(%d,n); A) 987 B) 876 C) 8765 D) 9876 18. 在下列程序段中,没有构成死循环的是D 。A) B) C) D) int i=10; for(;); int k=10; int s=36; while(1) dok+; while(s) i=i%3+1; while(k10); -s; if(i10) break; 19. 以下程序段的描述,正确的是C 。x=-1; do x=x*x; while(!x); A) 是死循环 B) 循环执行两次C) 循环执行一次D) 有语法错误4 No.: Name: 20. 在下述程序中,判断ij 共执行的次数是D 。main() int i=0,j=10, k=2, s=0; for (;) i+=k; if(ij) printf(%d,s); break; s+=i; A) 4 B) 7 C) 5 D) 6 21. 下面程序的功能是把316表示为两个加数的和,使两个加数分别能被13和11整除,请选择填空。满足题意的选项是 B 。#include main() int i=0,j,k; doi+;k=316-13*i;while( ); j=k/11; printf(316=13*%d+11*%d,i,j); A) k/11 B) k%11 C) k/11=0 D) k%11=0 22. 下面程序的运行结果是B 。#include 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 9 页,共 11 页 - - - - - - - - - main() int a=1,b=10; do b-=a;a+;while(b-0); printf(a=%d,b=%dn,a,b); A) a=3,b=11 B) a=2,b=8 C) a=1,b=-1 D) a=4,b=9 23. 执行语句 for(i=1;i+4;);后变量 i的值是 C 。A) 3 B) 4 C) 5 D) 不定24. 关于程序段 int k=10; while(k=0) k=k-1;下面描述中正确的是 C 。A) while 循环执行 10次B) 循环是无限循环C) 循环体语句一次也不执行D) 循环体语句执行一次25. 表达式 for( 表达式 1; ;表达式 3)可理解为 B 。A) for( 表达式 1;0;表达式 3) B) for( 表达式 1;1;表达式 3) C) for( 表达式 1;表达式 1;表达式 3) D) for( 表达式 1;表达式 3;表达式 3) 26. 以下程序的输出结果是B 。main() int i,j,x=0; for(i=0;i2;i+) x+; for(j=0;j3;j+) if(j%2) continue;x+; x+; printf(x=%dn,x); A) x=4 B) x=8 C) x=6 D) x=12 27. 以下描述中正确的是C 。A) 因do-while 循环中循环体语句只能是一条可执行语句,所以循环体内不能使用复合语句B) do-while 循环由 do开始,用 while 结束,在 while( 表达式)后面不能写分号C) 在do-while 循环体中,先执行一次循环,再进行判断D) do-while 循环中,根据情况可以省略while 28. 针对下列语句说法正确的是A 。int i,x; for(i=0,x=0;i=9&x!=876;i+) scanf(%d,x); A) 最多的执行 10次B) 最多执行 9次C) 是无限循环 D) 循环体一次也不执行29. C语言中 while 和do-while 循环的主要区别是A 。A) do-while 的循环体至少无条件执行一次B) while 的循环控制条件比do-while 更严格C) do-while 允许从外部转到循环体内D) do-while 的循环体不能是复合语句30. 执行程序段 int k=1; while(+k4);后k值为 A 。名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 10 页,共 11 页 - - - - - - - - - A) 4 B) 5 C) 6 D) 8 二、填空题1. 执行程序段 int a=1234; printf (%2dn,a);的输出结果是1234 。2. 以下程序的输出结果是16 。main() int a=0; a+=(a=8); printf(%dn,a); 三、程序编写题(如本页空间不够请在背面作答) 1. 编写程序求解求和公式S _ 1 1 2 1 3 1 4 . . .的前 10项。要求画出流程图(ANSI 流程图和 NS流程图)。2. 编写程序实现输入整数n,输出如下所示数字组成的菱形(如n=5)。要求画出流程图(ANSI流程图和 NS流程图)。1 1 2 1 1 2 3 2 1 1 2 3 4 3 2 1 1 2 3 4 5 4 3 2 1 1 2 3 4 3 2 1 1 2 3 2 1 1 2 1 1名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 11 页,共 11 页 - - - - - - - - -

    注意事项

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

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




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

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

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

    收起
    展开