欢迎来到天天文库
浏览记录
ID:57913288
大小:58.00 KB
页数:3页
时间:2020-04-03
《C语言程序设计基础知识习题一及参考答案.doc》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库。
1、第一章:程序设计基础知识一、单项选择题1、以下()是面向过程的程序设计语言。A)机器语言B)汇编语言C)高级语言D)第四代语言2、程序设计一般包含以下四个步骤,其中其中首先应该完成的是()。A)设计数据结构和算法B)建立数学模型C)编写程序D)调试和运行程序3、以下常用算法中适合计算等差级数的算法是()。A)枚举法B)递推法C)分治法D)排序法4、以下不属于算法基本特征的是()。A)有穷性B)有效性C)可靠性D)有一个或多各输出5、以下描述中不正确的是()。A)程序就是软件,但软件不紧紧是程序。B)程序是指令的集合,计算机语言是编写程序的工具。C)计算机语言都是形式化的语言,
2、它有一个语法规则和定义。D)计算机语言只能编写程序而不能表示算法。6、下面描述中,正确的是()A)结构化程序设计方法是面向过程程序设计的主流。B)算法就是计算方法。C)一个正确的程序就是指程序书写正确。D)计算机语言就是编写程序的工具而不是表示算法的工具。7、下面描述中,不正确的是()。A)递归法的关键是必须有一个递归终止的条件。B)递归算法要求语言具有反复自我调用子程序的能力。C)对于同一个问题,递推算法比递归算法的执行时间要长。D)递推算法总可以转换为一个递归算法。8、N-S图与传统流程图比较,主要优点是()。A)杜绝了程序的无条件转移。B)具有顺序、选择和循环三种基本结
3、构。C)简单、只管。D)有利于编写程序。A)B)C)D)二、填空题1、在流程图符号中,判断框中应该填写的的是________。(判断条件)2、结构化程序设计是__________应遵循的方法和原则。(面向过程编程)3、结构化程序必须用__________程序设计语言来编写。(具有结构化控制语句)4、可以被连续执行的一条条指令的集合称为计算机的________。(程序)5、只描述程序应该“做什么”,而不必描述“怎样做”的语言被称为________。(面向对象)6、任何简单或复杂的算法都是由_____和_____这两个要素组成。(数据结构算法)7、算法的_______特征是指:一
4、个算法必须在执行有限个操作步骤后终止。(有穷性)8、在三种基本结构中,先执行后判断的结构被称为_________。(直到型循环结构)9、在程序设计中,把解决问题确定的方法和有限的步骤称为______。(算法)10、程序设计风格主要影响程序的________。(可读性)11、用模块组装起来的程序被成为________结构化程序。(模块化)12、采用自上而下,逐步求精的设计方法便于____________。(结构化和模块化)三、应用题1、用如何一种熟悉的方法描述求N个数中最小数的算法。k=0输入nmin=-32767当k<=n输入xx5、入数据个数n输入第一个数min计算器k=1输入一个数xx=n输出min2、用枚举法设计例1-4中百钱买百鸡问题的算法,并用流程图表示;X=1当x<20y=1当y<=33z=100-x-y5x+3y+z/3==100YN输出x,y,xy=y+1x=x+13、分别用递推和递规两种算法计算斐波那契数列:f(n+2)=f(n+1)+f(n),f(1)=f(0)=1的前30项,并用流程图表示a)递推b)递规递推公式:f(n)=f(n-1)+f(n-2)递规公式:f(n)=f(n-1)+f(n-2)f(1)=f(0)=1b)递推b)递规n=30当n6、>0p=f(n)输出pn=n-1/*f(n)*/n>1YNr=f(n-1)+f(n-2)r=1返回rf1=1,f2=1,k=0输出f1,f2f3=f2+f1f4=f3+f2f1=f3,f2=f4k=k+2直到k>154、求方程x3-x-1=0在x=1.5附近的一个根。使用迭代法设计其算法,并用流程图表示出来。解:一般迭代法:迭代公式:x1=1-x03,收敛条件:7、x0/x18、<=1e-5X0=1.5X1=x0*x0*x0-1当abs(x0/x1)>1e-5x0=x1x1=x0*x0*x0-1输出x1X0=1.5f=x03-x0-1f0=3x02-1x1=x0-f/f0当9、x110、/x0>1e-511、x0=x1f=x03-x0-1f0=2*x02-1输出x1牛顿迭代法:f(x)=x3-x-1,f’(x)=3x2-1迭代公式:x1=x0-f(x0)/f’(x0)收敛条件:12、x0/x113、<=1e-55、有分数序列如下:试用迭代法求出该数列前20项的和,用流程图表示其算法。解:分子a,分母b,下一项分子c,某项t=a/b,和s。第一项:a=2,b=1,c=a,t=a/b,s=t第i项:c=a+b,b=a,a=c,t=a/b,s=s+t输入a,b,ca>bYNt=a,a=b,b=ta>cY
5、入数据个数n输入第一个数min计算器k=1输入一个数xx=n输出min2、用枚举法设计例1-4中百钱买百鸡问题的算法,并用流程图表示;X=1当x<20y=1当y<=33z=100-x-y5x+3y+z/3==100YN输出x,y,xy=y+1x=x+13、分别用递推和递规两种算法计算斐波那契数列:f(n+2)=f(n+1)+f(n),f(1)=f(0)=1的前30项,并用流程图表示a)递推b)递规递推公式:f(n)=f(n-1)+f(n-2)递规公式:f(n)=f(n-1)+f(n-2)f(1)=f(0)=1b)递推b)递规n=30当n
6、>0p=f(n)输出pn=n-1/*f(n)*/n>1YNr=f(n-1)+f(n-2)r=1返回rf1=1,f2=1,k=0输出f1,f2f3=f2+f1f4=f3+f2f1=f3,f2=f4k=k+2直到k>154、求方程x3-x-1=0在x=1.5附近的一个根。使用迭代法设计其算法,并用流程图表示出来。解:一般迭代法:迭代公式:x1=1-x03,收敛条件:
7、x0/x1
8、<=1e-5X0=1.5X1=x0*x0*x0-1当abs(x0/x1)>1e-5x0=x1x1=x0*x0*x0-1输出x1X0=1.5f=x03-x0-1f0=3x02-1x1=x0-f/f0当
9、x1
10、/x0>1e-5
11、x0=x1f=x03-x0-1f0=2*x02-1输出x1牛顿迭代法:f(x)=x3-x-1,f’(x)=3x2-1迭代公式:x1=x0-f(x0)/f’(x0)收敛条件:
12、x0/x1
13、<=1e-55、有分数序列如下:试用迭代法求出该数列前20项的和,用流程图表示其算法。解:分子a,分母b,下一项分子c,某项t=a/b,和s。第一项:a=2,b=1,c=a,t=a/b,s=t第i项:c=a+b,b=a,a=c,t=a/b,s=s+t输入a,b,ca>bYNt=a,a=b,b=ta>cY
此文档下载收益归作者所有