当前位置:文档之家› 上海高一信息技术算法与程序设计习题集

上海高一信息技术算法与程序设计习题集

信息技术算法与程序设计习题集习题:(1)1<5 and 4>3 or not -1=1 T(2)"a">"b" or 5<6 and 8>=2*4 T(3)假设变量a的值是1,变量b的值是2,变量c的值是3,计算下列表达式的值。

a^3+b*c 7c mod b +a 2int(c/b) >b-a Fa<b and (c-a)/2>0 Ta+b>c or b+c>a and c+a>b T二、算法的一些概念1.算法的定义:解决问题的确定的有限的步骤。

2.算法的描述:自然语言、流程图描述、计算机程序、伪代码。

3.常量和变量:变量的特点:取之不尽,赋值即覆盖变量的命名规则:以字母、数字、下划线组成,必须以字母开头。

变量的类型:整数型(Integer)、实数型(Single)、字符串型(String)4.算法的三种基本结构:顺序结构、分支结构、循环结构(1)顺序结构顺序结构按照自上而下的顺序把每个步骤执行一次。

(2)分支结构(选择结构)分支结构根据条件决定执行步骤1或步骤2中的算法步骤,判断框有一个入口两个出口,分支结构单分支语句格式 If <条件> Then <步骤1的语句块> End If 有一个入口,一个出口。

5.算法的特点:可行性、确定性(无二义性)、有穷性、可以没有输入,必须要有输出。

三、算法实例 (一)顺序结构练习1:输入一个圆的半径,求圆的周长和面积,并输出结果。

练习2:输入一个两位数,交换个位和十位的值,输出结果。

练习3:输入两个变量的值,将两个变量中的值互相交换并输出结果。

双分支语句格式 If <条件> Then <步骤1的语句块> Else <步骤2的语句块> End If 代码:Dim r As Singler = InputBox("输入半径") s = 3.14 * r ^ 2 c = 2 * 3.14 * r Print "周长"; c Print "面积"; s代码:x = InputBox("请输入") a = Int(x / 10) b = x Mod 10 y = 10 * b + a Print y(二)分支结构(选择结构)练习1:输入两个数,比较它们的大小,输出较大的数。

练习2:输入一个三位数,判断它是否是水仙花数(三位数各个数位上的立方和等于它本身)。

练习3:输入一个数,求它的绝对值,并输出结果。

代码:Dim a As Single, Dim b As Singlea = InputBox("第一个数")b = InputBox("第二个数")c = a a = b b = cPrint a; b代码:Dim a As Single Dim b As Singlea = InputBox("请输入")b = InputBox("请输入") If a > b Then Print a ElsePrint b End If代码:Dim n As Singlen = InputBox("输入一个三位数") a = Int(n / 100)b = Int(n / 10) - a * 10c = n Mod 10If a ^ 3 + b ^ 3 + c ^ 3 = n Then Print "是水仙花数" ElsePrint "不是水仙花数" End If练习4:阶梯电价方法一:Dim x As Singlex = InputBox("输入用电")If x < 110 Theny = 0.61 * xElseIf x <= 210 Theny = 0.61 * 110 + 0.66 * (x - 110)Elsey = 0.61 * 110 + 0.66 * 100 + 0.81 * (x - 210) End IfEnd IfPrint "电费"; y方法二:(左边嵌分支)Dim x As Singlex = InputBox("输入用电") If x >= 110 ThenIf x > 210 Theny = 0.61 * 110 + 0.66 * 100 + 0.81 * (x - 210) Elsey = 0.61 * 110 + 0.66 * (x - 110) End If Elsey = 0.61 * x End IfPrint "电费"; y练习5:购买地铁车票:乘1-4站3元/位,5-9站4元/位,9站以上5元/位,输入站数和人数,输出应付款。

练习6:长江遂桥货车通行费收费标准(载重用w 表示,收费用m 表示)代码:Dim a As Integer Dim b As Integera = InputBox("输入站数")b = InputBox("输入人数") If a <= 4 Thenm = 3 * b Else If a <= 9 Thenm = 4 * b Elsem = 5 * b End IfEnd IfPrint "应付款"; m开始输入载重w 输出费用m结束m=60m=95m=130w ≤2m=1052<w ≤55<w ≤1010<w ≤15Y Y Y Y NN NNw>15Y m=145NAA(三)循环结构(重复结构)当遇到需要重复执行的操作时,可以用循环结构,循环结构有一个入口,一个出口。

当循环和直到循环的区别:当循环的循环体可能一次也不执行,直到循环的循环体至少执行一次。

1.输出系列问题 练习1:输出5个*Dim w As Singlew = InputBox("输入载重") If w <= 2 Thenm = 60 End IfIf w > 2 And w <= 5 Thenm = 95 End IfIf w > 5 And w <= 10 Thenm = 105 End IfIf w > 10 And w <= 15 Thenm = 130 End IfIf w > 15 Thenm = 145 End IfPrint "应付款", mDo while 条件 循环体语句 Loop当循环的一般形式 循环体条件Y N初始值Do循环体语句Loop Until 条件直到循环的一般形式循环体条件初始值YNn = 0 Do While n < 5 Print "*" n = n + 1 Loop开始输出”*”n ←n+1n<5n=0Y N方法一:用次数来控制循环方法二:用输出的数字来控制循环12345方法一:把a 当成整个数方法二:把a 当指数2.求和系列问题开始输出a a=a+1a<=5a=1Y N结束输出aa=a+1开始结束n<5YNn=n+1 a=1n=0a = 1Do While a < =5Print a a = a + 1 Loop输出a 开始结束a<=32Y N a=2*aa=2输出2^a 开始结束a<=5Y Na=a+1a=1练习1:求1+2+3+4+5的和练习2:求1+3+5+7+9的和练习3:求21+22+23+24+25的和练习4: 求1×2+2×3+3×4+4×5+5×6的和。

练习5:求1+2+3+……+k 的和,其中k 由键盘输入。

练习6:求1*2*3*4*5的积开始结束n<=5Ns=s+n n=n+1s=0n=1输出sY开始结束n<=9Ns=s+n n=n+2s=0 n=1输出s Y 开始结束n<=5Ns=s+2*n-1n=n+1s=0 n=1输出s Y 开始结束n<=5Ns=s+2^n n=n+1s=0 n=1输出s Y 开始结束n<=32Ns=s+n n=n*2s=0 n=2输出s Y 开始结束n<=5Ns=s+n*(n+1)n=n+1s=0 n=1输出s Y 开始结束n<=k Ns=s+n n=n+1s=0 n=1输出s Y 输入k 开始结束n<=5Ns=s*n n=n+1 s=1 n=1输出s Y练习7:求1+2+3+……加到第几项和超过5? 方法一:用i 来计算项数方法二练习8:求输入的5个数的平均值(如70,60,80,50,90) 方法一:不用数组方法二:用数组练习9:输入若干个数的和,输入-1时结束。

(如输入60,50,40,-1)输入a 开始结束n<5Ns=s+a n=n+1s=0 n=0输出s/5Y 输入a(n)开始结束n<=5Ns=s+a(n)n=n+1s=0 n=1输出s/5Y 开始结束s<=5Y Ns=s+n n=n+1 i=i+1 s=0 n=1 i=0输出i 开始结束s<=5Y Ns=s+n n=n+1 s=0 n=1输出n-1Dim a As Single s = 0 n = 0Do While n < 5a = InputBox("输入数据") s = s + a n = n + 1 LoopPrint s / 5开始 a<>-1s=0N Y 输入as=s+a 输入a3.循环结构中嵌套分支结构 练习1:统计I 级天数4.直到循环n = 1 c = 0Do While n <= 5If a(n) <= 50 Then c = c + 1 End If n = n + 1 LoopPrint "I 级天数"; c练习1:输出5个* 练习2:求1+2+4+7+11的和开始结束n>5 s=s+a a=a+n n=n+1s=0 a=1 n=1NY 输出sn = 0DoPrint "*" n = n + 1 Loop Until n >= 5s = 0 a = 1 n = 1 Dos = s + a a = a + n n = n + 1 Loop Until n > 5 Print s输出"*"开始结束n>=5n=n+1n=0Y N5.数组:数组是一种特殊的变量,它在内存中的位置是连续的,用于存储一批类型、作用相同的数据。

相关主题