《c语言编程基础》习题答案

上传人:第*** 文档编号:31888385 上传时间:2018-02-09 格式:DOC 页数:27 大小:173KB
返回 下载 相关 举报
《c语言编程基础》习题答案_第1页
第1页 / 共27页
《c语言编程基础》习题答案_第2页
第2页 / 共27页
《c语言编程基础》习题答案_第3页
第3页 / 共27页
《c语言编程基础》习题答案_第4页
第4页 / 共27页
《c语言编程基础》习题答案_第5页
第5页 / 共27页
点击查看更多>>
资源描述

《《c语言编程基础》习题答案》由会员分享,可在线阅读,更多相关《《c语言编程基础》习题答案(27页珍藏版)》请在金锄头文库上搜索。

1、1C 语言编程基础(第 2 版) 习题答案前 言C 语言编程基础(第 2 版)每章后面都安排了一定数量的习题,这有利于读者理解、消化和掌握各单元的学习内容。习题中,除了有填空题、选择题、回答问题等适合掌握基本概念的题型外,大部分是分析程序运行结果和要求编写实用程序,这有利于读者训练编程技巧和增强编程能力。应广大读者要求,特别是一线教学老师的要求,我们给出全部习题答案,供读者参考。编程答案只是实现题目算法要求的一种,并不一定是最好的。希望读者自己多做思考,利用多种方法进行编程,用以提高自己的程序设计水平和锻炼自己的创新能力。由于作者水平所限,错误和不当之处在所难免,恳请批评指正。习题一1、填空题

2、。 C语言程序由 _函数_ 组成,其中必须有且只能有一个名为 _main_的函数。C程序的执行从_名为main的主_函数开始。 每个C语句必须以_分_号结束。 标识符只能由 _英文字母 _、_数字_和_下划线 _三类符号构成,而且标识符的第一个字符必须是_英文字母_或_下划线_。 关键字是指_C语言编译系统所固有的、具有专门意义的标识符_。 C程序中,注释的内容应放在_/*_和_*/_符号之间。2、选择题。 下面合法的C语言标识符是_ C _。 C语言中主函数的个数是_ A_。 以下有关注释的描述中,错误的是_ C _。 C程序中,main函数的位置_ D_。3、指出并改正下面程序中的错误。

3、main 应为 main() 应在本程序最后加上大括号 。 语句结束应有分号。如:int a,b;a=1;b=2;printf(%d,a+b);4、分析下列程序,写出运行结果。2 该程序是计算两个整数a和b的乘积并赋值给c,运行结果为:c=30 该程序输出一个字符串和一排星号,运行结果为:Hello!*5、编程题。 按题目要求,编写输出固定信息的程序如下:main()pt();printf( Welcome!);pt();pt()printf(*); 按题目要求,编写输入数据输出其表达式的程序如下: main()int a,b,c;scanf(%d, scanf(%d, c=a*b+10;pr

4、intf(c=%d,c);习题二1、单项选择题。 C语言中的变量名只能由字母、数字和下划线组成,且第一个字符_ C _。 合法的常量是_ D _。 C语言中的基本数据类型所占存储空间长度的顺序是_ D_。 下列符号串中与123.0相同的合法常量是_ C_。2、填空。 C语言中的基本数据类型包括_整型(int)_、_浮点型(flot)_ 和_字符型(char)_三种。 整型常数有_十进制整数_、_八进制整数_和_十六进制整数_三种表示形3式; 整型变量可分为四类: _一般整型(int)_、_短整型(short)_、_长整型(long)_、_无符号型_。其中_无符号型_又可分为_无符号整型(uns

5、igned int) 、_无符号短整型(unsigned short)和_无符号长整型(unsigned long)_3种。 有10个用指数形式表示的符点常数:请指出合法的有_。 在C中,没有专为存贮字符串的变量,但可以用_字符型数组_ 或_字符型指针变量_存贮字符串。其定义格式为_ char str6;_和_ char *a;_。 数据类型混合运算时, 要进行同型转换, 转换方式分为_自动转换(隐式转换)_和_强制转换(显式转换)_两种。3、写出下列程序运行结果。 215/9=238 97 b 4.0000004、编写程序。 按题目要求编写求三个已知数的乘积,程序如下:main()int a

6、,b,c;a=19;b=22;c=650;printf(a*b*c=%dn,a*b*c); 按题目要求,编写将值整数化后赋值的程序如下:main()int a1,a2;float b,c;b=35.425;c=52.954;a1=(int)(b*c);a2=(int)c%(int)b;printf(a1=%d;a2=%dn,a1,a2); 按题目要求,编写计算圆周长、面积和圆柱体积的程序如下:main()int r,h,c,s,v;r=15;h=3;4c=2*3.14*15; s=3.14*r*r; v=s*h;printf(c=%d, s=%d , v=%dn,c,s,v);习题三1、填空题

7、。 设有 int x=11;则表达式(x+*1/3)的值是_3_。 已知数学表达式 y=x-2x+5,写出对应的 C 语言表达式_y=x*x-2*x+5_。 已知 a10,则表达式 x=(a=a+b,a-b)的值为_x=10_。2、选择题。 在 C 语言中,下列运算符的操作数必须是 int 类型的运算符是( D ) 。 假设所有变量均为整型,则表达式(a=2,b=5,a+,b+,a+b)的值为( A ) 。 已定义 int m=6,n=5;,则执行 m%=n-1;之后,m 的值是( B ) 。 已有 int a=1,b=1;则执行 b=(a=2*3,a*5),a+7 之后,a,b 的值是( B

8、 ) 。 已有 int x=2,y=1;则执行 x+=y-;的结果是( D ) 。3、求下面算术表达式的值。 2.500000 3.5000004、分析下列程序,写出运行结果。 注意,在 C 语言中,因为函数调用中参数按从右到左的顺序求值,因此该程序执行打印输出的结果为:3 1 1 该程序在计算条件表达式的值赋给 a 时,其 x 值已为 6,y 值已为 7,因此运行结果为:a=7,b=0,c=6 该程序利用运算符与结合性的优先级不同,而取得 a 与 b 的值。 (因为该题使用了逻辑运算符,可在学了第 5 章以后再详细分析)运行结果如下: a=2,b=1 该程序应用复合的赋值运算符和从右至左结合

9、性的运算规则,求取 n 的值,运行结果如下:5n=28 该程序在执行语句“y=x+-1;”时,y 为 0 而 x 在执行后变为 2;在执行语句“z=-y+1;”时,z 为 0 而 y 便成了-1。运行结果如下:x=2,y=-1,z=05、编程题。 用符号常量编写简单计算程序如下(复杂应用应在第 9 章学习后再做):#define N 12#define M 25main()float c;printf(N+M=%dn,N+M);printf(N-M=%dn,N-M);printf(N*M=%dn,N*M);c=(float)N/M;printf(N/M=%fn,c); 查看 i+与+j 运算结

10、果差异的程序,编写如下:main()int i=20,j=20;printf(i+:%dn+j:%dn,i+,+j); 查看 m-与-n 运算结果差异的程序,编写如下:main()int m=20,n=20;printf(m-:%dn-n:%dn,m-,-n);习题四1、单项选择题。 下列叙述不正确的是_B_。6 当输入数据为 12345678 时,下面程序运行的结果是_C_。 putchar 函数可以向终端输出一个_D_。 按格式输出的格式符_ C_。2、回答问题。 在键盘上输入数据格式如下:12,24,Aa2.58-2.58168.5(代表空格,其中数据 1 是为了对付%*f 占位,代表回

11、车) 该题是求输入任意两个整数 a 与 b 的和。若读入 a=b=5,其运行结果为:type a number please!a=?5type another please!b=?5a sum b is 103、写出下列程序的执行结果。 执行结果:32767,-327682147483647,-214748364865535,0 执行结果:yes,I am computer. 执行结果:abtw123 执行结果:58.887299,555.67797958.887299,555.67797958.887, 555.678,58.887,555.678,58.887299,555.6779795

12、.88873e+01, 5.6e+02B,66,102,427567890,34675022,7a1211232,25740,2be0,11232COMPUTER, ABC4、编写程序。 对输入的大写字母改用小写输出的程序,编写如下:#include main()7char c;printf(输入一个大写字母:n);c=getchar();putchar(c+32); 计算三门课总成绩等数据的程序,编写如下:#include main()float a,b,c,sum,ave,mod;printf(输入三门课程的成绩:n);scanf(%f%f%f,sum=a+b+c;ave=(a+b+c)/

13、3;mod=fmod(sum,3);printf(总成绩=%5.1f,平均成绩=%5.1f,总成绩除 3 的余值=%3.1fn,sum,ave,mod); 已知数据,按输出结果的要求编写输出程序如下:main()int a=1,b=2,c=3,g=12345;float d=7.2,e=-5.5,f=1.56;long h=123456;char i=o,j=p;printf(a=%d b=%d c=%dn,a,b,c);printf(d=%f,e=%f,f=%fn,d,e,f);printf(d+e=%4.2f e+f=%4.2f d+f=%5.3fn,d+e,e+f,d+f);printf

14、(g=%7d h=%ldn,g,h);printf(i=%c or %dnj=%c or %dn,i,i,j,j);习题五1、单项选择题。8 C语言用_C_表示逻辑量为“假” 要求当A的值为奇数时,表达式的值为“真” ;A的值为偶数时,表达式的值为“假” 。以下不满足要求的表达式是_D_。 在if语句的嵌套中,else总是与_C_配对。 下面对for循环概念描述正确的是_D_。2、填空题。 switch后面的“表达式” ,通常为_整_型或_字符_型表达式;每个case的常量表达式的值_不能相同_。 如果不算goto语句构成的循环结构,那么C语言可以构建循环的语句一共有_3_种,分别是_for循

15、环、while循环、do-while循环_。 continue语句与break语句在使用时,有两点主要的不同:它不适用于_switch_语句;它跳转时是_跳过循环体中下面的语句从下一次循环开始_。 把下面的两条if分支语句合并成一条if分支语句应该写成:if(x=y) printf(”m=%dn”, m=2);else printf(”n=%dn”, n=1);3、指出以下程序的打印结果。该程序运行结果如下:x=11 y=10x=55 y=10x=8 y=10 z=10x=2 y=2x=3 y=3x=4 y=4x=5 y=5x=6 y=6x=7 y=7x=8 y=8x=9 y=9x=2 y=2x=1 y=1000x=2 y=100x=3 y=

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 行业资料 > 工业设计

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号