当前位置:文档之家› 程序设计题

程序设计题

程序设计题
程序设计题

程序设计题1.求1-100之间所有的质数。

Private Sub Command1_Click()

Dim n%, i%, flag%, k%

For n = 1 To 100 Step 2

k = Int(Sqr(n))

i = 2

flag = 0

Do While i <= k

If n Mod i = 0 Then

flag = 1

End If

i = i + 1

Loop

If flag = 0 Then

Print n

End If

Next n

End Sub

2.计算1-100之间所有整数的和。

Private Sub Command1_Click()

Dim a As Integer

n = 0

For a = 1 To 100

n = n + a

Next a

Print n

End Sub

3.计算1-100之间所有奇数的和。

Private Sub Command1_Click()

Dim i, s1%

s1 = 0

For i = 1 To 100 Step 2

s1 = s1 + i

Next i

Print s1

End Sub

4.计算1-100之间所有偶数的和。

Private Sub Command1_Click()

Dim i, s1%

s1 = 0

For i = 0 To 100 Step 2

s1 = s1 + i

Next i

Print s1

End Sub

5.利用循环语句编程求25的阶乘。

Function j(n#) As Double

Dim i#

j = 1

For i = 1 To n

j = j * i

Next

End Function

Private Sub Command1_Click()

Dim s#, p#

p = 0

For m = 1 To 25

s = 1

For n = 1 To m

s = s * n

Next

Next

Print s

End Sub

6.编程求两个数m和n的最大公约数。

Private Sub Command1_Click()

Dim m%, n%, a%, b%, r%

m = InputBox("请输入第1个正整数:")

n = InputBox("请输入第2个正整数:")

a = m

b = n

r = 1

Do Until r = 0

r = a Mod b

a = b

b = r

Loop

Print "最大公约数是:"; a

End Sub

7.已知坐标点(x,y),判断其落在哪个象限。Private Sub Command1_Click()

Dim m As String, n As String

m = InputBox("请输入X:")

n = InputBox("请输入Y:")

If m > 0 And n > 0 Then

Print "第一象限"

ElseIf m < 0 And n > 0 Then

Print "第二象限"

ElseIf m < 0 And n < 0 Then

Print "第三象限"

ElseIf m > 0 And n < 0 Then

Print "第四象限"

End If

End Sub

8.输入一串字符,统计各字母出现的次数(大小写不区分)。

9.从键盘输入5个整数,输出所有输入的数据和其中的最大数。

Private Sub Command1_Click()

Dim num(5) As Integer

Dim i%, max%

For i = 1 To 5

num(i) = InputBox("请输入第" & i & "个整数")

If max < num(i) Then max = num(i)

Next

Print "输入的5个数是:"

For i = 1 To 5

Print num(i):

Next

Print

Print "最大整数是:"; max

End Sub

10.利用文本框的常用属性,把Text1中选定的文本复制到Text2中去。

11.编程实现1-200内6或5的倍数。

12.随机产生10个递增的100-400的随机数,存放到数组中,并显示结果。

13.已知x,y,z三个变量中存放了3个不同的数,比较它们的大小并进行调整,使得x

<y <z。

14.已知x,y,z三个变量中存放了3个不同的数,比较它们的大小并进行调整,使得x>y

>z。

15.假设我国有16亿人口,按人口年增长率r=0.9%计算,多少年后我国人口超过32亿,利

用log()函数来计算。

Private Sub Form_Click()

x = 16

n = 0

Do While x < 32

n = n + 1

Loop

Print n & "年后我国人口超过32亿"

Print "此时国家人口为" & x

End Sub

16.假设窗体中有一标签Label1,通过Move方法编程实现该图在窗体中的左右移动,移动

幅度为20单位。

17.编制程序,要求输入两个操作数和一个操作符(+、-、×、/),根据操作符进行两

个操作数的简单运算,并显示结果。

Private Sub Command1_Click(Index As Integer)

Dim num1!, num2!, result!

num1 = Val(Text1.Text)

num2 = Val(Text2.Text)

Select Case Index

Case 0: result = num1 + num2: Text3.Text = result

Case 1: result = num1 - num2: Text3.Text = result

Case 2: result = num1 * num2: Text3.Text = result

Case 3:

If num2 = 0 Then

Text2.Text = ""

Text3.Text = ""

Text2.SetFocus

Else

Text3.Text = num1 / num2

End If

Case 4:

If num2 = 0 Then

Text2.Text = ""

Text2.SetFocus

Else

Text3.Text = num1 \ num2

End If

End Select

End Sub

Private Sub Command2_Click()

End Sub

Private Sub Command3_Click(Index As Integer)

End Sub

18.已知List1中显示了若干课程名,要求用户用鼠标在该列表框中选择一个或多个选修课

时,单击“显示”按扭可以在list2中显示用户选中的所有课程。

19.已知输入某课程的百分制成绩mark,要求显示对应五级制的评定,评定条件如下:等

级优秀(90-100)、良好(80-90)、中等(70-80)、及格(60-70)和不及格(<60分)。Private Sub Command1_Click()

value = InputBox("请输入成绩:")

If value <> "" Then

Select Case Val(value)

Case 0 To 59

MsgBox "你的成绩不及格"

Case 60 To 69

MsgBox "你的成绩及格"

Case 70 To 79

MsgBox "你的成绩中等"

Case 80 To 89

MsgBox "你的成绩良好"

Case 90 To 100

MsgBox "你的成绩优秀"

Case Else

MsgBox "输入的数值不合法,请重新输入"

End Select

End If

End Sub

20.在购买某物品时,若所花的钱x在下述范围内,所付钱y=x(x<1000);y=0.9x(1000<x

<2000);y=0.8x(2000<x<3000);y=0.7x(3000<x<4000);按对应折扣支付。编程求y值。Private Sub Form_click()

Dim x As Integer, y As Integer

x = InputBox("请输入所花的钱数:")

If x < 1000 Then

y = x

End If

If x > 1000 And x < 2000 Then

y = 0.9 * x

End If

If x > 2000 And x < 3000 Then

y = 0.8 * x

End If

If x > 3000 And x < 4000 Then

y = 0.7 * x

End If

Print y

End Sub

21.将输入的字符串,以反序显示。例如:输入“ASDFGHJKL”,显示“LKJHGFDSA”。Private Sub Command1_Click()

a = "ASDFGHJKL"

ReDim p(Len(a) - 1)

For i = Len(a) - 1 To 0 Step -1

b = b & Mid(a, i + 1, 1)

Next i

Print b

End Sub

22.已知三角形三条边的边长a,b,c,编程判断该三角形的类型(等腰,等边,直角三角

形)。

Private Sub Form_click()

Dim a As Integer, b As Integer, c As Integer

a = InputBox("请输入第一条边:")

b = InputBox("请输入第二条边:")

c = InputBox("请输入第三条边:")

If a + b > c And a + c > b And b + c > a And a = b Or a = c Or b = c Then

Print "等腰三角形"

End If

If a + b > c And a + c > b And b + c > a And a ^ 2 + b ^ 2 = c ^ 2 Or a ^ 2 + c ^ 2 = b ^ 2 Or b ^ 2 + c ^ 2 = a ^ 2 Then

Print "直角三角形"

End If

If a + b > c And a + c > b And b + c > a And a = b = c Then

Print "等边三角形"

End If

End Sub

23.试编写一个程序,允许用户输入数字,判断其是否大于或等于60分,如果大于等于60

分,则输出“及格,否则输出“不及格”。要求:(1)用inputbox输入数字(2)用Msgbox 输出“及格”或“不及格”的结果。

Private Sub Form_click()

Dim a As Integer

a = InputBox("请输入数字:")

If a >= 60 Then

MsgBox "及格"

End If

If a < 60 Then

MsgBox "不及格"

End If

End Sub

24.随机产生15个不重复的A-Z(包括A,Z)的大写字母,存放在字符数组中。

Private Sub Form_Click()

Dim s(1 To 15) As String, c As String

s(1) = Chr(Int(Rnd * 26 + 65))

For n = 2 To 15

re: c = Chr(Int(Rnd * 26 + 65))

For j = 1 To n - 1

If c = s(j) Then GoTo re

Next j

s(n) = c

Next n

For i = 1 To 15

Print s(i);

Next i

End Sub

25.利用数组编写一个n*m的矩阵,其各元素的值由随机函数生成(范围为50-150)。

26.假设Text1中有一字符串,利用文本框的常用属性,把Text1中第一个字符至第八个字

符之间的内容复制到Text2中去。

Private Sub Form_Click()

Text1.SelStart = 0

Text1.SelLength = 8

Text2.Text = Text1.SelText

End Sub

27.从键盘上输入10整数,并放入一个一维数组中,然后将其前5个元素与后5个元素对换,

即第一个元素与第10个元素互换,第2个元素与第9个元素互换……。输出对换后各元素的值。

28.输入一个数字(1-7),用英文显示对应的星期一至星期日。

Private Sub Form_Click()

a = Val(InputBox("请输入一个数字1-7"))

Select Case Val(a)

Case 1

Print "monday"

Case 2

Print "tuesday"

Case 3

Print "wendsday"

Case 4

Print "thursday"

Case 5

Print "friday"

Case 6

Print "satursay"

Case 7

Print "sunday"

Case Else

Print "必须输入1-7中的一个数字!"

End Select

End Sub

29.编程产生一个12-75范围内的正整数。

Private Sub command1_Click()

Dim s(12 To 75) As Integer

a = Int(Rnd * 64 + 12)

Print a

End Sub

30.建立一个数组,输出1-100之间的所有偶数。

Private Sub Command1_Click()

Dim m(1 to 100) as Integer ,i as Integer

For i =1 to 100

If i mod 2 =0 then

Print i

End if

Next i

End sub

31.假设文本框Text1中有一字符串,要求编程实现对其字号进行放大和缩小,倍数通过随

机函数产生,范围在7-10倍。

Private Sub Command1_Click()

x = Int(4 * Rnd + 7)

Text1.FontSize = x * 36

End Sub

Private Sub Command2_Click()

y = Int(4 * Rnd + 7)

Text1.FontSize = 36 / y

End Sub

Private Sub Form_Load()

Text1.FontSize = 36

Text1.Text = ""

End Sub

32.编写程序,判断给出的3条边能否构成三角形。

Private Sub Command1_Click()

Dim a As Integer, b As Integer, c As Integer

a = Val(InputBox("请输入第一条边长:"))

b = Val(InputBox("请输入第二条边长:"))

c = Val(InputBox("请输入第三条边长:"))

If a + b > c And a + c > b And c + b > a And a - b < c And a - c < b And b - c < a Then

Print "该三边能否构成三角形"

Else

Print "该三边能否构成三角形"

End If

End Sub

33.已知List1中显示了若干课程名,要求用户用鼠标在该列表框中选择一个或多个选修课

时,单击“清除”按扭时,清除右列表框中的内容。

34.随机产生10个30-100(包括30,100)的正整数,求最大值,最小值和平均值,并显示

整个数组的值和结果。

Private Sub Form_click()

Dim a(1 To 10) As Integer

For i = 1 To 10

a(i) = Int(Rnd * 71 + 30)

Print a(i);

Next i

Max = a(1): Min = a(1): Sum = a(1)

For i = 2 To 10

If a(i) > Max Then Max = a(i)

If a(i) < Min Then Min = a(i)

Sum = Sum + a(i)

Next i

Print

Print "最大值是" & Max

Print "最小值是" & Min

Print "平均值是" & Sum / 10

End Sub

35.输入3个数a,b,c,输出三者之中的最大者。

Private Sub command1_click()

Dim m!, n!, p!, max!

m = Val(InputBox("请输入第一个数:"))

n = Val(InputBox("请输入第一个数:"))

p = Val(InputBox("请输入第一个数:"))

max = m

If n > max Then max = n

If p > max Then max = p

Print

Print m; "、"; n; "与"; p; "之中最大值是:"

Print

Print max

End Sub

36.税务部门征收所得税,规定如下:(1)收入200元以内,免征;(2)收入在200―400

元内,超过200元的部分纳税3%;(3)收入超过400元的部分,纳税4%;(4)当收入等于5000元或超过时,将4%税金改为5%。编程序实现上述操作.

Private Sub Command1_Click()

a = Val(Text1.Text)

If a < 200 Then

b = 0

ElseIf 200 < a < 400 Or a = 400 Then

b = 0.03 * (a - 200)

ElseIf 400 < a < 5000 Then

b = 0.03 * 200 + 0.04 * (a - 400)

ElseIf a > 5000 Or a = 5000 Then

b = 0.03 * 200 + 0.05 * (a - 400)

End If

Print b

End Sub

37.随机产生20个学生的计算机课程的成绩,并显示。统计各分数段人数,即0-59,60-69,

70-79,80-89,90-100,并显示结果。

Private Sub Command1_Click()

Dim a, b, c, d, e As Integer

a = 0

b = 0

c = 0

d = 0

e = 0

For i = 1 To 20

m = Int(Rnd * 101 + 0)

Print m

Select Case Val(m)

Case 0 To 59

a = a + 1

Case 60 To 69

b = b + 1

Case 70 To 79

c = c + 1

Case 80 To 89

d = d + 1

Case 90 To 100

e = e + 1

End Select

Next i

Print a; b; c; d; e

End Sub

38.假设窗体上有Text1,密码是“1234”。编制程序,实现密码校验。要求密码输入正确或

错误时都给予提示。

Private Sub Command1_Click()

If Text1.Text <> "" Then

If Text1.Text = "1234" Then

MsgBox ("密码正确,欢迎进入!")

Else: MsgBox ("密码错误,请重新输入!")

End If

End If

End Sub

39.用组合框对学生名单进行添加、修改和删除操作。

Option Explicit

Dim i

Sub Form_Load()

Combo1.AddItem "张三"

Combo1.AddItem "李四"

Combo1.AddItem "王二"

End Sub

Private Sub Combo1_Click()

i = Combo1.ListIndex

End Sub

Private Sub Command1_Click()

Combo1.AddItem Combo1.Text

Combo1.Text = ""

End Sub

Private Sub Command2_Click()

Combo1.RemoveItem Combo1.ListIndex

End Sub

Private Sub Command3_Click()

Combo1.List(i) = Combo1.Text

End Sub

40.已知三角形三条边的边长a,b,c,编程求该三角形的面积M(M=根号下s(s-a)(s-b)

(s-c),s=(a+b+c)/2)。

Private Sub Command1_Click()

Dim a, b, c As Double

a = InputBox("请输入第一条边边长:")

b = InputBox("请输入第二条边边长:")

c = InputBox("请输入第三条边边长:")

s = (a + b + c) / 2

i = s * (s - a) * (s - b) * (s - c)

j = i ^ (1 / 2)

Print j

End Sub

41.编写程序,使能输出如下图形。

* * * * * *

* * * * * *

* * * * * *

* * * * * *

* * * * * *

Private Sub Command1_Click()

For i = 1 To 5

Print Spc(i);

For j = 1 To 6

Print Spc(1); "*";

Next j

Print

Next i

End Sub

42.利用数组编写程序,产生40个100以内的随机整数,统计40~49有多少个数并输出。Private Sub Command1_Click()

Dim a(1 To 40) As Integer

b = 0

For i = 1 To 40

a(i) = Int(Rnd * 101+ 0)

Print a(i);

Select Case Val(a(i))

Case 40 To 49

b = b + 1

End Select

Next i

Print b

End Sub

43.设计2个单选按钮,分别用来改变文本框中的字体为“宋体”,“黑体”。

Private Sub Option1_Click()

Text1.FontName = "宋体"

End Sub

Private Sub Option2_Click()

Text1.FontName = "黑体"

End Sub

Private Sub Text1_Change()

Text1.Text = "VB程序设计"

End Sub

44.设计2个复选框,分别用来改变文本框中的字体为“”宋体,“黑体”。

Private Sub Check1_Click()

Text1.FontName = "宋体"

End Sub

Private Sub Check2_Click()

Text1.FontBold = Not Text1.FontBold

End Sub

45.已知窗体上有文本框Text1,要求用InputBox方法实现半径的输入,并在Text1中求出圆的面积。

Private Sub Command1_Click()

Dim r As Integer

r = InputBox("请输入圆的半径:")

Text1.Text = 3.14 * r ^ r

End Sub

46.已知窗体上有文本框Text1和Text2,Text1用于输入圆的半径, 要求编程实现在Text2中求出圆的周长。

Private Sub Command1_Click()

Text2.Text = 2 * 3.14 * Text1

End Sub

1,下面程序对已知数组a,删除数组中数组元素中某个元素

Private Sub Command1_Click()

Dim a(), key%, i%, j%

a = Array(1, 6, 8, 3, 5, 9, 10, 2, 7, 4)

key = Val(InputBox("输入要删除的值"))

For i = 0 To UBound(a)

If key = a(i) T hen

For j = i + 1 To UBound(a)

a(j - 1) = a(j)

Next j

ReDim Preserve a(UBound(a) - 1)

MsgBox ("删除完成")

Exit Sub

End If

Next i

MsgBox ("找不到要删除的元素")

End Sub

2,下列程序表示将输入的一个数插入到按递减的有序数列中,插入后使该序列仍有序Private Sub Form_Click()

Dim a, i%, n%, m%

a = Array(19, 17, 15, 13, 11, 9, 7, 5, 3, 1)

n = UBound(a)

ReDim Preserve a(n + 1)

m = Val(InputBox("输入欲插入的数"))

For i = UBound(a) - 1 To 0 Step -1

If m >= a(i) Then

a(i + 1) = a(i)

If i = 0 Then a(i) = m

Else

a(i + 1) = m

Exit For

End If

Next i

For i = 0 To UBound(a)

Print a(i)

Next i

End Sub

3,下列程序在1000~9999之间查找满足如下条件的整数:该整数,逆向排列得到的

另一个四位数是它自身的倍数(2倍以上)。查找结果和逆向排列数分别显示在对应

的列表框

Private Sub Command1_Click()

Dim n As Integer

Dim m As Integer

Dim i As Integer

For i = 1000 To 9999

m = 0

n = i

Do While n > 0

m = m * 10 + n Mod 10

n = n \ 10

Loop

If m Mod i=0And m \ i > 1 Then

list1.AddItem i

list2.AddItem m & "=" & i & "*" & m \ i

End If

Next i

End Sub

4,将100~150之间的偶数,拆分成两个素数之和,最后输出格式如图。其中,prime函数判断

参数x是否为质数

Private Function prime(ByVal x As Integer) As Boolean

prime = ture

For i = 2 To Sqr(x)

If x Mod i = 0 Then

prime = False

Exit Function

End If

Next i

End Function

Private Sub Form_Load()

i = 1

For n = 100 To 150

For k = 3 To n / 2

If prime(k) And prime(n - k) Then

Print i; ":"; "="; k; "+"; n - k

Exit For

End If

Next k

i = i + 1

Next n

End Sub

10,

子过程F(N,M,T)对一个四位数n整整数判断:已知该整数n,逆向排列获得另一个4位数m是特自身的倍数,则t为true

表示满足上述条件。。。

Private Sub Command1_Click()

Dim t As Boolean, i%, k%

text1 = ""

text2 = ""

For i = 1000 To 9999

Call f(i, k, t)

If t Then

text1 = text1 & i & vbCrLf

text2 = text2 & k & "=" & i & "*" & k \ i & vbCrLf

End If

Next i

End Sub

Sub f(ByVal n%, ByRef m%, byreyftag As Boolean)

Dim i%

Tag = False

m = 0

i = n

Do While i > 0

m = m * 10 + i Mod 10

i = i \ 10

Loop

If m Mod n = 0 And m \ n > 1 Then

Tag = True

End If

End Sub

6.8.子过程MoveStr()是把字符组移动m个位置,

当Tag为Ture是左移,则前m个字符一道字符数组尾

,例如,“abcdefghij”左移3个位置后,结果为“defghijabc”;。。。。。

Public Sub MoveStr(a $(),m%,Tag As Boolean)

Dim i%, j%, t$

If Tag Then

For i = 1 To m

c = a(0)

For j = 0 To UBound(a) - 1

a(j) = a(j + 1)

Next j

a (UBound(a)) - 1

Next i

Else

For i = 1 To m

c = a(UBound(a))

For j = UBound(a) To 1 Step -1

a(j) = a(j - 1)

Next j

a(0) = c

Next i

End If

End Sub

6.9.子过程CountN用来统计字符串中各数字

字符(0-9)出现的个数;主调程序对在textbox1

框输入的文本,每次单击“统计”按钮,调用该子

过程,在Label1框显示结果。

Private Sub Command1_Click()

Dim n(9) As Integer, i%

Call CountN(n(), text1.Text)

list1.Clear

For i = 0 To 9

If n(i) Then list1.AddItem "字符" & i & "出现的次数为" & n(i) Next

Sub CountN(ByRef num%(), ByVal s As String)

Dim c As String * 1, i%, m%, j%

For i = 0 To 9

num(i) = 0

Next i

m = Len(s)

For i = 1 To m

c = Mid(s, i, 1)

If c >= "0" And c <= "9" Then

j = Val(c)

num(j) = num(j) + 1

End If

Next i

End Sub

6.11.下列程序中的子过程myplit。。用于实现split函数的功能,即将数字字符s鞍分隔符“,”分离到sArry数组中,分离的个数为n。。。。

Private Sub Text1_KeyPress(KeyAscii As Integer)

Dim strl As String, num(100) As Integer, n%, i%

If KeyAscii = 13 Then

str1 = Trim(Text1.Text)

Call MySplit(str1, num, n)

list1.Text = ""

For i = 1 To n

list1.AddItem num(i)

Next

End If

End Sub

Sub MySplit(ByVal str1 As String, ByRef sn() As Integer, ByRef n As Integer) Dim i%, j%, ch$

i = 0

j = InStr(Str, ",")

Do While j > 0

sn(i) = Val(Mid(str1, 1, j - 1))

str1 = Mid(str1, j + 1)

i = i + 1

j = InStr(str1, ",")

Loop

sn(i) = Val(str1)

End Sub

1工程中有两个窗体form1和form2,一个标准模块module1,设在form1中定义了过程aa,在module1中定义了过程bb。

Sub aa(x, y, z)

z = x * x + y * y

End Sub

Sub bb(x, y, z)

z = x ^ 3 + y ^ 3

End Sub

当在form1中单击命令按钮时,调用以上过程计算两个数的平方和和立方和,并分别将计算结果显示在文本框text3和text4中,请填空完成调用语句。

Private Sub Command1_Click()

a = Val(Text1.Text)

b = Val(Text2.Text)

Call [aa(a,b,c1) ]

Text3.Text = c1

bb [a,b,c2 ]

Text4.Text = c2

End Sub

――――――――――――――――――

2下面的程序用于根据文本框X中输入的内容进行以下处理:若X为2、4、6,则打印"X 的值为2、4、6";若X在11到15之间,则打印"X的值为大于等于11小于等于15";若X 大于20,则打印"X的值大于20";否则,打印"X不在范围内"。

Private Sub Command1_Click()

Select Case Val(X.Text)

Case [2,4,6 ]

Print "X的值为2,4,6"

Case [11 to 15 ]

Print "X的值为大于等于11小于等于15"

Case Is >20

Print "X的值大于20"

Case Else

Print "X不在范围内"

End Select

End Sub

――――――――――――――

3下面的程序是使用冒泡法对数组进行排序,请将程序补充完整。

Option Base 1

Private Sub Command1_Click()

Dim iA(0 To 10)

n = 6

iA(0) = 8: iA(1) = 6: iA(2) = 9: iA(3) = 3: iA(4) = 2: iA(5) = 7

For i= 1 To n - 1 ' 进行n-1遍比较

' 对第i遍比较时,大数沉底

For [j=1 to n-i ] ' 在数组i~n个元素中选最小元素的下标

If [ iA(j) > iA(j+1) ] Then

t = iA(j)

iA(j) = iA(j + 1)

iA(j + 1) = t

End If

Next j

End Sub

――――――――――――

4 程序的功能是使用辗转相除法求两个数的最大公约数。

Private Sub Command1_Click()

Dim m%, n%

m = Int(InputBox("input an integer"))

n = Int(InputBox("input another integer"))

Print gcd(m, n)

End Sub

Public Function gcd%(m%, n%)

Dim t%

If [ m

Do

r = m Mod n

If r = 0 Then Exit Do

m = n

[ n=r ]

Loop

gcd = n

End Function

―――――――――

5、输入任意长度的字符串,要求将字符顺序倒置,例如,将输入的“ABCDEF”变换成“FEDCBA”。请将程序补充完整。

Private Sub Command1_Click()

Dim a$, i%, c$, n% 'n存放字符串的长度

a = InputBox("input a string")

n = [Len(a) ]

For i = 1 To Int(n / 2)

c = Mid(a, i, 1)

Mid(a, i, 1) = [ Mid(a,n-i+1,1)]

Mid(a, n - i + 1, 1) = c

Next i

End Sub

――――――――――

6、下面的程序允许用户按Enter(回车)键后,将组合框中没有的项目添加到组合框。请将程序补充完整。

Private Sub Combo1_KeyPress(KeyAscii As Integer)

Dim flag As Boolean

If KeyAscii = 13 Then

flag = False

For i = 0 To Combo1.ListCount - 1 '查找项目是否已存在

If [ combo1.text=combo1.list(i) ] Then

flag = True

Exit For

End If

Next i

If flag = False Then '不存在则添加

[ combo1.AddItem combo1.Text ]

End If

End If

End Sub

―――――――――

7、下面的程序是使用选择法对数组进行升序排列,请将程序补充完整。

Option Base 1

Private Sub Command1_Click()

Dim iA(1 To 10)

n = 6

iA(1) = 8: iA(2) = 6: iA(3) = 9: iA(4) = 3: iA(5) = 2: iA(6) = 7

For i = 1 To n - 1 ' 进行n-1遍比较

iMin = i ' 对第i遍比较时,初始假定第i个元素最小

For [ j=i+1 to n ] ' 在数组i~n个元素中选最小元素的下标If [a(j)

Next j

t = iA(i) 'i~n个元素中选出的最小元素与第i个元素交换

iA(i) = iA(iMin)

iA(iMin) = t

Next i

End Sub

―――――――――――

8、找出被3、5、7除,余数均为1的最小的5个正整数。

Private Sub Command1_Click()

Dim countn%, n%

n = 1: countn = 0

Do

n = n + 1

If [ n mod 3=1 And n mod 5=1 And n mod 7=1 ]Then

Print n

countn = countn + 1

End If

Loop [ until count n=5 ]

End Sub

――――――――――――――

9、下面程序段是检查输入的算术表达式中圆括号是否配对,并显示相应的结果。本程序在文本框输入表达式,

边输入,边统计,以输入回车键作为表达式输入结束,然后显示结果。

Dim count1%

Private Sub Text1_KeyPress(KeyAscii As Integer)

If [ chr(keyAscii) ] = "(" Then

count1 = count1 + 1

ElseIf Chr(KeyAscii) = ")" Then

[ count1=count1+1 ]

End If

If KeyAscii = 13 Then

If count1 = 0 Then

Print "左右括号配对"

ElseIf count1 > 0 Then

Print "左括号多于右括号"; count1; "个"

Else

Print "右括号多于左括号"; -count1; "个"

End If

End If

End Sub

――――――――――――

10、顺序文件的建立。建立文件名为“c:\stu d1.txt”的顺序文件,内容来自文本框,

每按Enter键写入一条记录,然后清除文本框的内容,直到文本框内输入“END”字符串。Private Sub Form_Load()

Open “c:\stud1.txt” For Output As #1

Text1.Text=“”

End Sub

Private Sub Text1_KeyPress(keyAscii As Integer)

If keyAscii=13 Then

If[ Ucase(Text1)="END" ] Then

Close #1

End

Else

[Print #1,Text1 ]

Text1.Text=“”

End If

End If

End Sub

第5章-C语言程序设计(第2版)教材习题答案

【教材】《C语言程序设计(第2版)》清华大学出版社,黄保和,江弋编著。2011年10月第二版。ISBN:978-7-302-26972-4。售价:35元。 【答案版本】本习题答案为2012年2月修订版本。 一、选择题 1. 设有程序段”int k=10; while(k=0) k=k-1;”,则下面叙述正确的是D)循环体语句一次也不执行。 A. while循环执行10次 B. 循环是无限循环 C. 循环体语句执行一次 D. 循环体语句一次也不执行 2. 设有程序段”int x=0,s=0;while(!x!=0) s+=++x; printf(“%d”,s);”则A)运行程序段后输出1。 A. 运行程序段后输出1 B. 程序段执行无限次 C. 运行程序段后输出0 D. 程序段中的控制表达式是非法的 3. 下面循环语句中,错误的是D) int a=1,b=2;do b-- while(b= =0);。 A. int a=1,b=2; while(b--); B. int a=1,b=2; do a++; while(a==b); C. int a=1,b=2; while(a=3); D. int a=1,b=2; do b-- while(b==0); 4. 已知”int i=5;”,下列do…while循环语句的循环次数为C) 5。 do{ printf(“%d\n”,i--); } while(i!=0); A. 0 B. 1 C. 5 D. 无限 5. 循环语句”for(int i=0,j=10; i==j; i++,j--)”的循环次数是A) 0。 A. 0 B. 5 C. 10 D. 无限 6. 下述有关break语句的描述中,不正确的是C) break语句用于if语句的内嵌语句内,它结束该if语句。 A. break语句用于循环体内,它将结束该循环 B. break语句用于开关语句,它结束该开关语句 C. break语句用于if语句的内嵌语句内,它结束该if语句 D. break语句在一个循环体内可使用多次 7. 下面关于循环语句的描述中,错误的是B)循环体内必须同时出现break语句和continue 语句。 A. 循环体内可以包含有循环语句 B. 循环体内必须同时出现break语句和continue语句 C. 循环体内可以出现选择语句 D. 循环体可以是空语句 8. 以下不是死循环的是D)for(;(c=getchar()!=’\n’);)printf(“%c”,c);。 A. for(; ; x+=i); B. while(1) { x++; } C. for( i=10; ; i--) sum+=i; D. for( ; (c=getchar() )!=’\n’ ; ) printf( “%c”,c); 9. 执行语句”for(i=0;i++<3;);”后,变量i的值为C) 4。 A.2 B. 3 C. 4 D. 5 10.语句”for(x=0,y=0;y!=1&&x<4;x++);”是C)循环4次。 A. 无限循环 B. 循环次数不定 C. 循环4次 D. 循环3次

《C程序设计》作业内容

实验一C语言的运行环境的使用 一、目的与要求 1. 了解Windows系统下C语言的运行环境,熟悉C程序调试、运行的基本操作方法。 2. 熟练掌握编辑、编译、连接和运行C程序的方法。 3. 通过运行简单的C程序,初步了解C源程序的特点。 4. 初步理解C语言的数据类型,了解变量定义、变量赋值以及简单运算方法,了解程序运 行结果的基本输出方法。 二、实验例题 在C语言运行环境下,按以下例题要求完成程序的编辑、编译、连接和运行,直至取得正确的运行结果。 【例1】编程实现在屏幕上显示如下三行文字 Hello, world ! Wolcome to the C language world! Everyone has been waiting for. (1)输入如下程序: #include int main() { printf("Hello,World!\n"); printf("Wolcome to the C language world!\n"); printf("Everyone has been waiting for.\n"); return 0; } (2)将输入的程序以文件名example.c存盘。 (3)编译:通过“组建”(Build) 下拉菜单中的“编译”(compile)命令,编译example.c,若出现编译错误,则修改程序,重新编译,直至编译成功,系统自动生成目标文件example.obj。 (4)连接:通过“组建”(Build)下拉菜单中的“组建”(Build)命令,生成以.exe为扩展名的可执行文件example.exe。 (5)运行:通过“组建”菜单下的“执行”(Excute)命令运行程序并观察运行结果。 【例2】编写程序,将两个整数相加,并输出结果。 #include int main() { int a,b,sum; a=123;b=456; sum=a+b; printf(“sum is %d\n”,sum); return 0;}

高中信息技术《算法与程序设计》试题

高中信息技术《算法与程序设计》试题 一、单选题(每小题3分,20小题,共60分) 1、用计算机解决问题时,首先应该确定程序“做什么?”,然后再确定程序“如何做?”请问“如何做?”是属于用计算机解决问题的哪一个步骤?() A、分析问题 B、设计算法 C、编写程序 D、调试程序 2、在调试程序过程中,下列哪一种错误是计算机检查不出来的?() A、编译错误 B、执行错误 C、逻辑错误 D、任何错误计算机都能检查出来 3、下列关于算法的叙述中,错误的是() A、一个算法至少有一个输入和一个输出 B、算法的每一个步骤必须确切地定义 C、一个算法在执行有穷步之后必须结束 D、算法中有待执行的运算和操作必须是相当基本的。 4、流程图中表示判断的是()。 A、矩形框B、菱形框C、圆形框D、椭圆形框 5、任何复杂的算法都可以用三种基本结构组成,下列不属于基本结构的是() A、顺序结构 B、选择结构 C、层次结构 D、循环结构 6、能够被计算机直接识别的语言是() A、伪代码 B、高级语言 C、机器语言 D、汇编语言 7、在VB语言中,下列数据中合法的长整型常量是() A、08A B、2380836E C、88.12345 D、1.2345E6 8、求Mid(“ABCDEFG”,3,2)的结果是() A、“ABC” B、“CD” C、“ABCDEF” D、“BCD” 9、表达式 A+B+C=3 OR NOT C<0 OR D>0 当A=3,B=4,C=-5,D=6时的运算结果是() A、0 B、1 C、TRUE D、FALSE 10、在循环语句 For x=1 to 100 step 2 …… Next x 中,x能达到的最大值是() A、100 B、99 C、98 D、97 11、在下列选项中,不属于VB的对象的是() A、窗体的背景颜色 B、命令按钮 C、文本框 D、标签 12、在调试程序的时候,经常要设置断点,设置断点的快捷键是()

04_程序设计选择题及答案

第4章程序设计基础 002 编写好的计算机程序有很多特点,不是计算机程序特点的是 A) 操作性 B) 无序性 C) 分步性 D) 目的性 003 计算机语言经历了由低级到高级,按其发展过程可分为 A) 机器语言、汇编语言、面向过程语言 B) 机器语言、汇编语言、面向对象语言 C) 机器语言、汇编语言、高级语言 D) 机器语言、面向过程语言、高级语言 004 能将高级语言源程序转换成目标程序的是 A) 调试程序 B) 解释程序 C) 编译程序 D) 编辑程序 005 计算机硬件能直接识别并执行的语言是 A) 高级语言 B) 算法语言 C) 机器语言 D) 符号语言 006 能把汇编语言源程序翻译成目标程序的程序,称为 A) 编译程序 B) 解释程序 C) 编辑程序 D) 汇编程序 007 将高级语言编写的程序翻译成机器语言程序,采用的两种翻译方式是 A) 编译和解释 B) 编译和汇编 C) 编译和链接 D) 解释和汇编 008 用户使用计算机高级语言编写的程序,通常称为 A) 源程序 B) 汇编程序 C)二进制代码程序 D) 目标程序

009 下面是关于解释程序和编译程序的论述,其中正确的一条是A)编译程序和解释程序均能产生目标程序 B)编译程序和解释程序均不能产生目标程序 C)编译程序能产生目标程序而解释程序则不能 D)编译程序不能产生目标程序而解释程序能 010 下面四条叙述中,有错误的一条是 A) 用高级语言编写的程序计算机能直接执行 B) 用汇编语言编写的源程序计算机不能直接执行 C) 用户使用计算机高级语言编写的程序通常称为源程序 D) 机器语言计算机能直接执行 011 语言处理程序属于 A) 应用软件 B) 系统软件 C) 工具软件 D) 字处理软件 012 在计算机中,算法是指 A)查询方法 B)加工方法 C)解题方案的准确而完整的描述 D)排序方法 013 算法的基本特征是有效性、确定性和 A)时间特性 B)空间特性 C)分步性 D)有穷性 014 下面叙述正确的是 A) 算法的执行效率与数据的存储结构无关 B) 算法的空间复杂度是指算法程序中指令(或语句)的条数 C) 算法的有穷性是指算法必须能在执行有限个步骤之后终止 D) 以上三种描述都不对 015 算法的时间复杂度是指 A) 执行算法程序所需要的时间 B) 算法程序的长度 C) 算法程序中的指令条数 D) 算法执行过程中所需要的基本运算次数 016 算法的空间复杂度是指 A) 算法程序的长度

教材程序设计题答案

1.设计程序:z=f(x,y)=(3.14*x-y)/(x+y),若x、y取值为区间[1,6]的整数,找出使z取最小值的x1、y1,并将x1、y1以格式"%d,%d"写入到考生目录中Paper子目录下的新建文件design.dat中。 #include void main() { FILE *p; float f(float x,float y),min; int x,y,x1,y1; p=fopen("design.dat","w"); /*注意这里的路径根据考试环境改为考生文件夹路径*/ min=f(1,1);x1=y1=1; for(x=1;x<=6;x++) for(y=1;y<=6;y++) if(f(x,y)b[j]) {temp=b[i]; b[i]=b[j]; b[j]=temp; } for(i=0;i

C语言程序设计作业参考答案

《C语言程序设计》作业参考答案 作业一 C语言概述 一、选择题: 1-5 ACDCB 二、编程题: main() { printf(“****************************************\n”); printf(“ Hello,world! \n”); printf(“****************************************\n”); } 作业二程序的灵魂——算法 一、填空题: 1.确定性有效性有零个或多个输入有一个或多个输出 2.顺序结构选择结构循环结构 3.函数 作业三数据类型、运算符与表达式 一、选择题: 1-5 BDDAB 6-10 BCAAB 11-15 BCADC 16-20 DACCA 21-25 ADDBA 26-30 DDDDD 作业四顺序结构 一、选择题: 1-5 BCDDD 6-10 BDADD 二、填空题: 1.【31.415920,3.14159e+01】 2.【c=k】 3.【a=1,b=空格,c=2】 4.【a=12,b=345】 5.【c=A】 作业五选择结构 一、选择题:1-5 ADCBC 6-10 BBBBA 11-15 DBAAC 16-17 CB 二、填空题: 1.【-1】 2.【3】 3.【4】 4.【11】 5.【97或'a'】 作业六循环结构 一、选择题: 1-5 CBAAC 6-10 CBCCB 11-15 DBDDB 16-20 BCAAC 21-25 CDBBB

作业七数组 一、选择题: 1-5 CDDAC 6-10 CCDBC 11-15 DDBCA 16-20 DCBDD 21-23 BDB 二、填空题: 1. LBLMNP 2. SW* 3. mo 4. a=2,b=1 作业八函数 一、选择题: 1-5 AAACA 二、填空题: 1.【编程中的main( )函数】 2.【函数说明部分】和【函数体】 3.【–125= –5*5*5】 4.【void add (float a, float b)】【float add (float a, float b)】 5.【i=7; j=6; x=7 i=2; j=7; x=5】 6.【111】 三、编程题: 1.参考代码 main() { int score,temp,log; char grade; log=1; while (log) { printf(“enter score:”); scanf(“%d”,&score); if ((score>100)||(score<0)) printf(“\n error,try again! \n”); else log=0; } if (score==100)temp=9; else temp=(score-score%10)/10; switch(temp) { case 0:case 1:case2: case 3:case 4:case 5:grade=’E’;break; case 6:grade=’D’;break; case 7:grade=’C’;break; case 8:grade=’B’;break; case 9:grade=’A’; } printf(“score=%d,grade=%c\n”,score,grade); } 2.解:设计以高度n为参数的函数trangle(int n),打印等边三角形。参考程序如下: #include

高二算法与程序设计试题及答案

高二信息技术(算法与程序设计)试题卷 一、单项选择题(每小题2.5分共50分将正确答案填到答题卷相应题号下) 1、一同学想通过程序设计解决“鸡兔同笼”的问题,他制定的如下工作过程中,更恰当的是()。 A、提出问题、设计算法、编写程序、得到答案 B、提出问题、编写程序、运行程序、得到答案 C、编写程序、设计算法、调试程序、得到答案 D、设计程序、提出问题、编写程序、运行程序 2、下列常量说明中,符合语法的是()。 A、CONST color=red B、CONST const=10*5 C、CONST xl:=3.9; D、CONST color=”abcd” 3、下列代数式的Visual Basic表达式是( )。 A、(x^5-cos(29*3.14))/(sqr(exp(x)+log(y))) B、(x^5-cos(29))/(sqr(exp(x)+ln(y))+5) C、(x^5-cos(29*3.14/)/(sqr(exp(x)+ln(y))+5) D、(x^5-cos(0.506))/(sqr(exp(x)+log(y))+5) 4、下列变量名写法错误的是()。 A、abc B、abc123 C、abc_123 D、123abc 5、visual basic程序设计语言是一种()。 A、高级语言 B、汇编语言 C、机器语言 D、数据库语言 6、下列给出的赋值语句中正确的是()。 A、4 = M B、-M =M C、B=A-3 D、x + y = 0 7、下列Visual Basic中,下列()的表达式的值不等于4。 A、int(4.1) B、fix(4.9) C、Abs(int(-3.9)) D、Abs(int(-4.5)) 8、下面程序运行后的输出S结果为()。 i=1 do WHILE i<8 i=i+2:s=2*i+3 loop PRINT s A、17 B、19 C、21 D、23 9、下列Visual Basic中,下列()类型属于字符串型。 A、Integer B、Single C、String D、Boolean 10、在VB中表达式11\3+11 mod 3 的运算结果值是()。 A、3 B、4 C、5 D、6 11、下列程序执行后,整型变量n的值为( )。 n=0: for I=1 to 100: if I mod 4=0 then n=n+1: next I A、5050 B、25 C、26 D、33 12、以下选项中,不是Visual Basic控件的是( )。 A、文本框 B、定时器 C、窗体 D、命令按钮 13、使用Visual Basic编程,我们把工具箱在的工具称为( )。 A、事件 B、工具 C、控件 D、窗体 14、结构化程序设计由三种基本结构组成,下面哪个不属于这三种基本结构()。 A、顺序结构 B、输入、输出结构 C、选择结构 D、循环结构 15、语句if 3*4>=10 then a=1 else a=2 执行后,a的值为()。 A、12 B、10 C、1 D、2 16、下列结果为True的逻辑表达式是( )。 A、Not (3<8) B、(3<9) And (5>10) C、(3<8) And (5<10) D、(3>8) Or (5>10) 17、要交换变量X和Y之值,应使用的语句组是( )。 A、X=Y;Y=Z;Z=X B、C=X;X=Y;Y=C C、X=Y;Y=X D、Z=Y;Y=X;Y=Z 18、以下程序中的循环体执行的次数是()。

《Python程序设计》习题与答案

《Python程序设计》习题与参考答案 第1章基础知识 1.1 简单说明如何选择正确的Python版本。 答: 在选择Python的时候,一定要先考虑清楚自己学习Python的目的是什么,打算做哪方面的开发,有哪些扩展库可用,这些扩展库最高支持哪个版本的Python,是Python 2.x还是Python 3.x,最高支持到Python 2.7.6还是Python 2.7.9。这些问题都确定以后,再做出自己的选择,这样才能事半功倍,而不至于把大量时间浪费在Python的反复安装和卸载上。同时还应该注意,当更新的Python版本推出之后,不要急于更新,而是应该等确定自己所必须使用的扩展库也推出了较新版本之后再进行更新。 尽管如此,Python 3毕竟是大势所趋,如果您暂时还没想到要做什么行业领域的应用开发,或者仅仅是为了尝试一种新的、好玩的语言,那么请毫不犹豫地选择Python 3.x系列的最高版本(目前是Python 3.4.3)。 1.2 为什么说Python采用的是基于值的内存管理模式? 答: Python采用的是基于值的内存管理方式,如果为不同变量赋值相同值,则在内存中只有一份该值,多个变量指向同一块内存地址,例如下面的代码。 >>> x = 3 >>> id(x) 10417624 >>> y = 3 >>> id(y) 10417624 >>> y = 5 >>> id(y) 10417600 >>> id(x) 10417624 1.3 在Python中导入模块中的对象有哪几种方式? 答:常用的有三种方式,分别为 import 模块名[as 别名]

●from 模块名import 对象名[ as 别名] ●from math import * 1.4 使用pip命令安装numpy、scipy模块。 答:在命令提示符环境下执行下面的命令: pip install numpy pip install scipy 1.5 编写程序,用户输入一个三位以上的整数,输出其百位以上的数字。例如用户输入1234,则程序输出12。(提示:使用整除运算。) 答: 1)Python 3.4.2代码: x = input('Please input an integer of more than 3 digits:') try: x = int(x) x = x//100 if x == 0: print('You must input an integer of more than 3 digits.') else: print(x) except BaseException: print('You must input an integer.') 2)Python 2.7.8代码: import types x = input('Please input an integer of more than 3 digits:') if type(x) != types.IntType: print 'You must input an integer.' elif len(str(x)) != 4: print 'You must input an integer of more than 3 digits.' else: print x//100

C程序设计作业样本

第一章作业 答案:一,59,14.4,28.e 二1小题,59 2,15 一、将数89、20.25、40.875用十六进制表达 二、填空 1.在C语言中,数值常量0x3b十进制值是。 2.字母f ASCII码为十进制数___________。 第三章作业 一、选取题: 1、下列变量名中, B 是非法。 A) Tom B) 3n C) little_boy D) c10 2、若有如下类型阐明 char a; int b; float c; double d;则表达式a*b+d-c成果类型是(A ) A)float B)char C)int D)double 3、若x为整型,则逗号表达式(x=4*5,x*5),x+25成果及x值分别是(C )对的答案是100,45 A)45 20 B)125 20 C)125 45 D)100 100 4、假设所有变量均为整型,则表达式(a=3,b=2,b++,a+b)值是 C 。 A) 5 B) 8 C) 6 D)7 5、已知c2为字符型,则执行语句c2=’E’+’8’-‘A’后,c2值为 C 。 A) 12 B) 11 C)不拟定值D) 10

6、设a为double变量,b为int型变量,c为字符型变量,则a+b+c为( C )型 A) int B) float C) double D) char 7、C语言中不可用作标记符字符有( C ) A下划线 B % C数字 D字母 8、下面四个选项中,均是合法整型常量是(D ) A)160 B)- 0xcdf C)- 01 D)0x - 0xffff 01a 0668 2e5 9、设a为字符变量,b为int型变量,c为double型变量,则a*b+c为( C )型 A. int B. float C. double D. char 10.若a是int型变量,则表达式(a=4*5,a*2),a+4值为( C ) A. 20 B.22 C. 24 D. 44 第四章作业 一、选取题 1、若x为int型变量,则执行如下语句后x= C 。 x=5; x-=x-=x+x; A. -10 B. -5 C.0 D.10 2、在printf()函数格式阐明符中,字符型数输出格式阐明符是 D 。

算法与程序设计真题2017级整理版-选择题

end if A 25 B 26 C 10 D 5 25、以下程序段运行后,整型变量s的值是()。 s=1 For i=1 To 10 Step 3 s=s*i Next i Print s A 55 B 3640 C 28 D 280 25、以下程序段执行后,输出结果为()。 m=29 If m Mod 3 <> 0 Then Print m & “不能被3整除” Else Print m & “能被3整除” End If A n能被3整除 B n不能被3整除 C 29不能被3整除 D 29能被3整除 26.以下程序段语句执行后,y的值是() X=16 If x<0 then Y=abs(x) Else Y=sqr(x) End if A 其他三项答案都不对 B 256 C 4 D 16 24.如图所示,三个文本框自上而下的顺序是Text1,text2, text3,在文本框text1中输入3,在文本框text2中输入4。单击命令按钮“计算”后,文本框text3中显示的内容是() “计算”按钮事件过程代码: Private sub command1_click() Dim a as integer Dim b as integer A=val(text1.text) B=val(text2.text) Text3.text=2*(a+b) End sub A 14 B 24 C 7 D 12 25.下列程序段执行后,变量s的值是()。 S=0 For i=1 To 10 s=s+i Next I A 10 B 0 C 1 D 55 24.下列程序段运行后,输出“*”的个数是() For I =2 to 10 Print “ * ” Next i

程序设计和软件工程选择题

程序设计基础 1.结构化程序设计的基本原则不包括()。答案:A A)多态性B)自顶向下C)模块化D)逐步求精 2.在面向对象方法中,不属于“对象”基本特点的是()。答案:A A)一致性B)分类性C)多态性D)标识唯一性 3.下列选项中不属于结构化程序设计原则的是()。答案: A A)可封装B)自顶向下C)模块化D)逐步求精 4. 结构化程序设计中,下面对goto语句使用描述正确的是()。答案: C A)禁止使用goto语句B)使用goto语句程序效率高 C)应避免滥用goto语句D)以上说法都不对 5.面向对象方法中,继承是指()。答案: D A)一组对象所具有的相似性质B)一个对象具有另一个对象的性质 C)各对象之间的共同性质D)类之间共享属性和操作的机制 6.结构化程序所要求的基本结构不包括()。答案: B A)顺序结构B)GOTO跳转C)选择(分支)结构D)重复(循环)结构7.定义无符号整数类为UInt,下面可以作为类UInt实例化值的是()。答案:B A)-369 B)369 C)0.369 D)整数集合{1,2,3,4,5} 8.下列选项中属于面向对象设计方法主要特征的是()。答案:A A)继承B)自顶向下C)模块化D)逐步求精 9.下面对对象概念描述正确的是()。答案:A A)对象间的通信靠消息传递B)对象是名字和方法的封装体 C)任何对象必须有继承性D)对象的多态性是指一个对象有多个操作 软件工程基础 1.程序流程图中带有箭头的线段表示的是()。答案: C A)图元关系B)数据流C)控制流D)调用关系 2.软件设计中模块划分应遵循的准则是()。答案: B A)低内聚低耦合B)高内聚低耦合C)低内聚高耦合D)高内聚高耦合 3.在软件开发中,需求分析阶段产生的主要文档是()。答案:B A)可行性分析报告B)软件需求规格说明书 C)概要设计说明书D)集成测试计划 4.数据流图中带有箭头的线段表示的是()。答案: D A)控制流B)事件驱动C)模块调用D)数据流 5.在软件开发中,需求分析阶段可以使用的工具是()。答案:B A)N-S图B)DFD图C)PAD图D)程序流程图 6.软件按功能可以分为:应用软件、系统软件和支撑软件(或工具软件)。下面属于应用软件的是()。答案:C A)编译程序B)操作系统C)教务管理系统D)汇编程序 7.下面叙述中错误的是()。答案: A

接口与程序设计作业(附答案)

习题1(教材P56) 1.8086/8088微处理器地址总线有多少位?寻址范围是多少? 答:20位 A019。寻址范围00000 2.8086/8088微处理器分哪两部分?各部分主要由什么组成? 答:执行单元和总线接口单元。 包括:、寄存器组、暂存器、标志寄存器、控制单元。 包括:指令队列缓冲器、段寄存器及指令指针、总线地址加法器、总线控制逻辑。 4.8086/8088微处理器中有几个通用寄存器?几个变址寄存器?有几个指针寄存器?几个段寄存器? 答:8个通用寄存器、、、、、、、。2个变址寄存器、。2个指针寄存器、。、、、段地址寄存器。 5.8086/8088微处理器中有哪些标志位?它们的含义和作用如何? 答:零标志位、进位标志、溢出标志位、辅助进位标志位、奇偶标志位、符号标志位、方向标志位、中断允许标志位、跟踪标志。 6.试求出下列运算后的各个状态标志,说明进位标志和溢出标志的区别? 12783469H 答:0001 0010 0111 1000 +0011 0100 0110 1001 0100 0110 1110 0001 0;0;0;0;1;1。 54E3H-27A0H 答:0101 0100 1110 0011 +1101 1000 0110 0000(-27A0的补码) 10010 1101 0100 0011 0;0;1;0;0;0。 H 答:0011 1000 1000 0001 +0011 0101 1001 0111 0110 1110 0001 1000 0;0;0;0;0;1。 01E301E3H 答:0000 0001 1110 0011 +1111 1110 0001 1101(-01E3H的补码) 10000 0000 0000 0000 1;0;1;0;1;1。 进位表示最高位产生进位。

c程序设计作业

1、分析下面程序: # include int main() { char c1,c2; c1=97; c2=98; printf("c1=%c,c2=%c\n"c1,c2); printf("c1=%d,c2=%d\n",c1,c2); return 0; } (1)运行时会输出什么信息?为什么? (2)如果将程序第4,5行改为 c1=197; c2=198; 运行时会输出什么信息?为什么? (3)如果将程序第3行改为 int c1,c2; 运行时会输出什么信息?为什么? 答:(1)程序运行不了,因为程序存在错误。正确的程序为:#include int main() { char c1,c2; c1=97; c2=98; printf("c1=%c,c2=%c\n",c1,c2); printf("c1=%d,c2=%d\n",c1,c2); return 0; } (2)如果将程序第4,5行改为 c1=197; c2=198; 运行时会输出: (3)如果将程序第3行改为 int c1,c2; 运行时会输出:

因为int表示整型,%c是输出字符,a的ASCLL代码是97,b的是98,所以输出 c1=a,c2=b.%d是表示输出十进制整型,所以输出c1=97,c2=98 2、用下面的scanf函数输入数据,使a=3,b=7,x=8.5,y=71.82,c1=’A’,c2=’a’。 问在键盘上如何输入? #include int main() { int a,b; float x,y; char c1,c2; scanf("a=%db=%d",&a,&b); scanf("%f%e",&a,&y); scanf("%c%c",&c1,&c2); return 0; } 答:输入如图: 输出如图: (此文档部分内容来源于网络,如有侵权请告知删除,文档可自行编辑修改内容, 供参考,感谢您的配合和支持)

算法与程序设计模块(选择题)汇总

算法与程序设计模块(选择题) 1.用流程图描述算法中表示“条件判断”的图形符号是 A. B. C. D. 答案:A 2.以下为求0到1000以内所有奇数和的算法,从中选出描述正确的算法 A. ①s=0; ②i=1; ③s=s+i; ④i=i+2; ⑤如果i≤1000,则返回③; ⑥结束 B. ①s=0; ②i=1; ③i=i+2; ④s=s+i; ⑤如果i≤1000,则返回③; ⑥结束 C. ①s=1; ②i=1; ③s=s+i; ④i=i+2; ⑤如果i≤1000,则返回③; ⑥结束 D. ①s=1;

②i=1; ③i=i+2; ④s=s+i; ⑤如果i≤1000,则返回③; ⑥结束 答案:A 3.在VB语言中,下列数据中合法的长整型常量是 A. 123456 B. 1234.56 C. 12345A D. A12345 答案:A 4.在VB语言中可以作为变量名的是 A. Print B. ab=cd C. 123abc D. abc_123 答案:D 5.设置TextBox的字体时,应改变TextBox的 A. Text属性 B. Font属性 C. ForeColor属性 D. Name属性 答案:B 7.代数式a ac b 24 2 对应的VB表达式是 A. sqr(b*b-4*a*c)/2*a B. sqr(b*b-4*a*c)/2/a C. sqr(b*b-4*a*c)/(2/a) D. sqr(b*b-4*a*c)/2a

答案:B 8.在VB语言中,下列正确的赋值语句是 A. I=I+1 B. I+1=I C. I*3=I D. 2I=I+1 答案:A 9.下列计算机程序设计语言中不属于高级语言的是 A. C++ B. Visual Basic C.机器语言 D. Java 答案:C 计算机程序设计语言:机器语言010*******汇编语言高级语言10.在VB语言中,下列逻辑表达式的值为"假"的是 A. #1/11/2009# > #11/15/2008# B. #1/11/2009# < #11/15/2008# C. 5 > 3 and 6 < 9 D. 5 > 3 or 6 > 9 答案:B 11.用流程图描述算法中表示“开始/结束”的图形符号是 A. B. C. D. 答案:B

编程基础练习题

第二章基本数据类型和运算 因为题目略有删减,可能编号不连续,请见谅 一、单项选择题 1.下列数据中属于“字符串常量”的是(A )。 A. "a"B.{ABC} C.?abc\0?D.?a? 4.字符串"ABC"在内存占用的字节数是( B )。 A.3 B.4C.6 D.8 5.字符串" \?ABCD\? "内存占用的字节数是( C )。 A.4 B.6 C.7D.8 6.在C语言中,合法的长整型常数是( A )。 A.0L B.4962710 C.0.054838743 D.2.1869e10 7. 在C语言中,合法的短整型常数是( D )。 A.0L B.0821 C.40000 D.0x2a 8.下列数据中不属于“字符常量”的是( C )。 A.…\xff?B.…\160?C.?070?D.070 9.char型常量的内存中存放的是( A )。 A.ASCII代码值B.BCD代码值C.内码值D.十进制代码值 11.常数的书写格式决定了常数的类型和值,03322是( B )。 A、16进制int类型常数 B、8进制int类型常数 C、10进制int类型常数 D、10进制long int类型常数 12.“e2”是( D ) 。 A、实型常数100 B、值为100的整型常数 C、非法标识符 D、合法标识符 13. 要为字符型变量a赋初值,下列语句中哪一个是正确的( A )。 A、char a=?3?; B、char a=”3”; C、char a=%; D、char a=*; 14. 要为float类型变量x、y、z赋同一初值3.14,下列说明语句哪一个是正确的(C )。 A、float x,y,z=3.14; B、float x,y,z=3*3.14; C、float x=3.14,y=3.14,z=3.14; D、float x=y=z=3.14; 15. 语句float pi=3.1415926535; 将( D )。 A、导致编译错误 B、说明pi为初值3.1415926535的单精度实型常数 C、导致运行时的溢出错误 D、说明pi为初值3.141593的单精度实型常数 16. 算术运算符、赋值运算符和关系运算符的运算优先级按从高到低依次为( B)。 A、算术运算、赋值运算、关系运算 B、算术运算、关系运算、赋值运算 C、关系运算、赋值运算、算术运算 D、关系运算、算术运算、赋值运算 17. 关系运算符中优先级最低的运算符是( C )。 A、“>=”和“<=” B、“>”和“<” C、“==”和“!=” D、“<=”和“<” 18. 逻辑运算符中,运算优先级按从高到低依次为( D )。 A、&&,!,|| B、||,&&,! C、&&,||,! D、!,&&,|| 19. 对C程序在作逻辑运算时判断操作数真、假的表述,下列哪一个是正确的( A )。 A、0为假非0为真 B、只有1为真 C、-1为假1为真 D、0为真非0为假 20. 表达式x&&1等效于( C )

vb程序设计教程教材习题答案

同步练习1 一、简答题 略 二、选择题 题号 1 2 3 4 5 6 7 8 9 10 答案 C A D B B A C D A B 题号11 12 13 14 15 答案 C B D B B 同步练习2 一、简答题 略 二、选择题 题号 1 2 3 4 5 6 7 8 9 10 答案 A B D C A C A C B C 题号11 12 13 14 15 16 17 18 19 20 答案 D A D A D B D B B B 三、填空题 1.可视 2.Left、Top;Height、Width 3.按字母序 4.查看代码 5.工具|选项|编辑器 6.Form窗体;Font 7.MultiLine 8.只能在设计状态下设置 9.工程|工程属性|通用;Form.Show 10.TabIndex;0

同步练习3 一、简答题 略 二、选择题 题号 1 2 3 4 5 6 7 8 9 10 答案 B C A D B A D B B C 题号11 12 13 14 15 16 17 18 19 20 答案 D B C B A D A A B B 三、填空题 1.整型、长整型、单精度、双精度 2.Sin(30*3.14/180)+sqr(x+exp(3))/abs(x-y)-log(3*x) 3.①160;②今天是:10-9 4.false 5.-4、3、-3、3、-4、4 6.CDEF 7.(x mod 10)*10+x\10 8.(35\20)*20=20;( 35 \ 20 )* 20 = 20 9.x mod 3=0 or x mod 5=0 10.①27.6 ②8.2 ③8 ④ 1 ⑤100 ⑥397 ⑦True ⑧False 同步练习4 一、选择题 题号 1 2 3 4 5 6 7 8 9 10 答案 D B C A D A B C A B 题号11 12 13 14 15 16 17 18 19 20 答案 D A B A C C B A C B 题号21 22 23 24 25 答案 D A B B C

历年算法与程序设计学业水平考试真题带答案

一、选择题 1、流程图是描述()的常用方式。 A、程序 B、算法 C、数据结构 D、计算规则 2、下面不属于算法描述方式的是()。 A、自然语言 B、伪代码 C、流程图 D、机器语言 3、以下运算符中运算优先级最高的是()。 A、+ B、^ C、>= D、* 4、某程序中三个连续语句如下: a=1 b=2 c=b+a 它属于() A、顺序结构 B、选择结构 C、循环结构 D、以上三种都不是 5、穷举法的适用范围是() A、一切问题 B、解的个数极多的问题 C、解的个数有限且可一一列举 D、不适合设计算法 6、在现实生活中,人工解题的过程一般分为() A、理解分析问题→寻找解题方法→用工具计算→验证结果

B、寻找解题方法→理解分析问题→用工具计算→验证结果 C、用工具计算→验证结果→寻找解题方法→理解分析问题 D、用工具计算→验证结果→理解分析问题→寻找解题方法 7、下列关于算法的特征描述不正确的是() A、有穷性:算法必须在有限步之内结束 B、确定性:算法的每一步必须确切的定义 C、输入:算法必须至少有一个输入 D、输出:算法必须至少有一个输出 8、下列哪一个不是用于程序设计的软件() A、BASIC B、C语言 C、Word D、Pascal 9、下列可以作为合作变量名的是() A、a7 B、7a C、a-3 D、8 10、编程求1+2+3+........+1000的和,该题设计最适合使用的控制结构为()。 A、顺序结构 B、分支结构 C、循环结构 D、选择结构 11、下列步骤不属于软件开发过程的是() A、任务分析与系统设计 B、软件的销售 C、代码编写与测试 D、软件测试与维护12.以下程序段运行时,语句k=k+1 执行的次数为()次。

2012《Visual BASIC程序设计》期末考试选择题及复习答案

1.Visual Basic集成开发环境中不包括下列哪些窗口( )。D 工具箱窗口 工程资源管理器窗口 属性窗口 命令窗口 2在设计应用程序时,通过( )窗口可以查看到应用程序工程中的所有组成部分。D 代码窗口 窗体设计窗口 属性窗口 工程资源管理器窗口 3在正常安装Visual Basic6.0后,可以通过多种方式启动Visual Basic。以下方式中不能启动Visual Basic 的是:( )。D 通过“开始”菜单中的“程序”命令 通过“我的电脑”找到vb6.exe,双击该文件名 通过“开始”菜单中的“运行”命令 进入DOS方式,执行vb6.exe文件 4Visual Basic 6.0工程文件的扩展名是( )。A .vbp .frm .bas .cls 5.Visual Basic 6.0是面向( )的程序设计语言。D 过程工程事件对象 6.下列关于 Visual Basic编程特点的叙述中,错误的是( )。D Visual Basic 是采用事件驱动编程机制的语言 构成 Visual Basic 程序的多个过程没有固定的执行顺序 Visual Basic 程序既可以编译运行,也可以解释运行 Visual Basic 程序不是结构化程序,不具备结构化程序的 3 种基本结构 7 Visual Basic 6.0集成开发环境有三种工作状态,不属于三种工作状态之一的是( )。B 设计状态 编写代码状态 运行状态 运行状态 8在Visual Basic 6.0中要获取上下文相关帮助,只需将光标定位在相应位置,再按( )键即可。A F1 F2 F3 F4 9Visual Basic 6.0集成开发环境的主窗口中不包括( )。C 标题栏菜单栏状态栏工具栏 10下列可以激活属性窗口的操作是( )。C 用鼠标双击窗体的任何部位 执行“工程”菜单中的“属性窗口”命令 按F4键 按Ctrl+F4键 11.Visual Basic 6.0中的对象是将数据和程序( )起来的实体。A 封装链接串接伪装 12Visual Basic 6.0集成开发环境中窗体设计器窗口的主要功能是( )。A 创建用户界面

相关主题
文本预览
相关文档 最新文档