资源描述:
《C语言题解(1-3)》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、第1章1.1请根据自己的认识,写出C语言的主要特点。P21.2C语言的主要用途是什么?它和其他高级语言有什么异同?主要用于开发底层软件、系统软件和实用程序软件。既有一般高级语言的功能,又具有许多低级语言的功能。所以其功能更强大,目标代码质量更高,执行效率更高。但也存在着语法限制不太严格,容易出现错误,难度较大的问题。1.3写出一个C程序的构成。预编译指令主程序函数{…子程序调用…}子程序函数…1.4C语言以函数为程序的基本单位,有什么好处?容易实现程序的模块化。可以提高程序设计的效率,提高程序的可靠性,便于移植,可读性好,易维护。1.5请参照本章例题,编写一个C程序,输出以下信息:****
2、*****************************************************Verygood!*********************************************************#includevoidmain(){printf("****************************************************");printf("Verygood!");printf("****************************************************")
3、;}1.6编写一个C程序,输入a、b、c三个值,输出其中最大者。#includevoidmain(){intmax(intx,inty,intz);inta,b,c,d;printf("请输入三个整数a、b、c,中间用逗号隔开:");scanf("%d,%d,%d",&a,&b,&c);d=max(a,b,c);printf("最大数为%d",d);}intmax(intx,inty,intz){if(x>y){if(x>z)returnx;elsereturnz;}else{if(y>z)returny;elsereturnz;}}第2章2.1什么是算法?试从日常生
4、活中找3个例子,描述它们的算法。算法是对特定问题求解步骤的一种描述,它是指令的有限序列。简单地说,是解题方法。2.2什么叫结构化的算法?为什么要提倡结构化的算法?一个结构化的算法是由一些基本结构(顺序结构、分支结构、循环结构)顺序组成的。在基本结构之间不存在向前或向后的跳转,流程的转移只存在于一个基本结构范围之内。2.3试述3种基本结构的特点,你能否自己另外设计两种基本结构?顺序结构即是按顺序从上至下执行的语句。流程不按照语句在程序中出现的先后顺序逐条执行,而是根据判断项的值有条件地选择部分语句执行,这样的程序结构称为选择结构。根据需要反复执行程序中的某些语句,这样的程序结构称为循环结构。
5、它们共同的特点是:(1)只有一个入口。(2)只有一个出口。(3)结构内的每一部分都有机会被执行到。(4)结构内不存在死循环。2.4用传统流程图表示求解以下问题的算法。(1)有两个瓶子A和B,分别盛放醋和酱油,要求将它们互换。(2)依次将10个数输入,要求将其中最大的数输出。(3)有3个数a,b,c,要求按大小顺序把它们输入。(4)求1+2+3+…+100。(5)判断一个数n能否同时被3和5整除。(6)将100~200之间的素数输出。(7)求两个数m和n的最大公约数。(8)求方程ax2+bx+c=0的根。分别考虑:①有两个不等的实根;②有两个相等的实根。(1)(2)(3)(4)(5)(6)(
6、7)(8)2.5用N-S图表示2.4题中各题的算法。(1)(2)(3)(4)(5)(6)(7)(8)2.6用伪代码表示2.4题中各题的算法。(1)c=aa=bb=c(2)n=1inputmaxwhilen<10doinputaifa>maxthenmax=an=n+1enddoprintmax(3)inputa,b,cifabthenprinta,c,belseprinta,b,cendifendif(4)sum=0n=1whilen<=100dosum=sum+nn=n+1enddopri
7、ntsum(5)inputnflag=0ifmod(n,3)!=0thenflag=-1(mod代表求余)ifmod(n,5)!=0thenflag=-1ifflag=0thenprintn“能被3和5整除”elseprintn“不能被3和5整除”endif(6)n=100whilen>200doi=2whilei<=sqrt(n)do(sqrt为求平方根)ifmod(n,1)theni=nelsei=i+1endife