程序设计基础习题及参考答案

程序设计基础习题及参考答案
程序设计基础习题及参考答案

习题及参考答案

1 单项选择题:

(1)下列哪个符号是合法的变量名? ( )

A .VB123

B .Abs

C .99Ji

D .x\y 答案:

选择A 。其他的:Abs 是Visual Basic 的关键字,99Ji 以数字开头,x\y 使用了整除运算符”\”,都是非法的。

(2)Visual Basic 中的数据也可以以十六进制或八进制表示,十六进制数据以( )符号开头,八进制数据以( )符号开头。

A.$E

B.$H

C.&O

D.&H 答案:D C

(3)如果X 是一个正实数,对X 的第三位小数四舍五入的表达式是 ( )

A .0.01*Int(x+0.005) B. 0.01*Int(100*(x+0.005)) C. 0.01*Int(100*(x+0.05)) D. 0.01*Int(x+0.05) 答案:

选择B 。x 是一个正实数,要保留n 位小数,第n+1位四舍五入的数字公式是: Int(x*10n

+0.5)/10n

因此,本题应该选择B 。

(4)数学式子10sin25°写成Visual Basic 表达式是 ( )

A .10Sin25

B .10* Sin(25)

C .10*Sin(25°)

D .10*Sin(25*3.14/180) 答案:

选择D 。其他的选项:A 、C 属于语法错误,B 中Sin(25)计算的是25弧度的正弦值,而不是sin25°的值,要将度数转换为弧度的公式是:弧度=度数*180/ 。

(5)下列哪组语句可以将变量A 、B 的值互换? ( )

A .A=B:B=A B. A=A+B:B=A-B:A=A-

B C. A=C:C=B:B=A D. A=(A+B)/2:B=(A-B)/2 答案:

选择B 。应该对每个选项内的赋值语句进行分析,判断其运行结果。 下面仅对B 选项的三条语句的作用分析如下:

◆ A=A+B ‘将变量A 和变量B 相加后赋给变量A ,此时A 中存放的是和数

◆ B=A-B ‘由于A 中存放的是和数,A-B 的值就是原先A 中的值,赋给变量B ,B 的

值就是原先A 中的值

◆ A=A-B ‘由于A 中存放的是和数,B 的值就是原先A 中的值,A-B 的值就是原先B

中的值 ,赋给变量A ,A 的值就是原先B 中的值。 这样达到了交换目的。

实际上,在引用第三个变量的情况下,将变量A 、B 的值互换常用如下的语句: T=A:A=B:B=T

(6)Visual Basic 中不存在下列哪一种数据类型? ( )

A 字符串类型

B 日期类型

C 逻辑类型

D 指针类型 答案:

选择D 。在Visual Basic 中不存在指针(地址)类型,而在C++等语言中有指针类型。 (7)把数值型转换为字符串型需要使用下列哪一个函数? ( )

A Val

B Str

C Asc

D Chr

答案:

选择B。

(8)模拟方形骰子投掷的表达式是 ( )

A Int(6*Rnd)

B Int(1+6*Rnd)

C Int(6*Rnd-1)

D Int(7*Rnd-1)

答案:

选择B。产生1~6 间的随机整数。请分析A、C、D 各产生什么样的随机整数。

(9)表达式Right(“asdf”,2)+UCase(“as”)的值为 ( )

A asas

B asAS

C dfas

D dfAS

答案:

选择D。

(10)关于语句行,下列说法正确的是 ( )

A 一行只能写一个语句

B 一个语句可以分多行书写

C 每行的首字符必须大写 D长度不能超过255个字符

答案:

选择D。

在不使用续行符的情况下一条语句不可以分多行书写。如果一条语句太长了,超过编辑窗口的宽度,你以不想使用滚动条时,可以将一条语句分多行书写,但是前行的行末必须使用续行符”_”(空格和下划线)。例如下面这条语句,就分两行书写:

Form1.Print “如果一条语句太长了,超过编辑窗口宽度,”& _

“你以不想使用水平滚动条时,可以将一条语句多行书写。”

(11)如果希望用变量X来存放数据1234.5678912应将X定义为什么类型? ( )

A.单精度实型

B. 双精度实型

C.长整型

D.字符型

答案:

选择B。因为实型数1234.5678912 的有效数字超过7位,应该使用双精度实型。(12)设Str1,Str2是字符型变量,Str1="Visual Basic123",Str2="a",则下面表达式中结果为True的是 ( )

A. Mid (Str1,5,1) = Str2

B. Len(Str1)>2*Instr(Str1, "c")

C.Right(Str1,3)="c12"

D. Instr(Left(Str1,6),"a")+60>Asc(UCase(Str2))答案:

选择A。

(13)表达式6+10 Mod 4*2+1的值是 ( )

A 9

B 11

C 1

D 3

答案:

选择A。要注意表达式中运算符的优先级别,运算顺序是:

①先算“*”:4*2=8;

②再算”Mod”:10 Mod 8=2;

③最后从左到右算两个“+” :6+2+1=9 结果是9

(14)在窗体上使用方法Print Format(12.3456,”00000.00%”)将输出什么结果? ( )

A.01234.56%

B.1234.56%

C.12.34%

D.12.3400%

答案:

选择A。

格式串”00000.00%”表示以百分数输出,整数部分4个字符,不足补零,小数部分两位,不足补零。若使用格式串”####.00%“,则输出的是B。

(15)用于截去字符串左右空格的函数是: ( )

A.Trim()

B.Rtrim()

C.Instr()

D.Mid()

答案:

选择A 。

(16)Variant是一种特殊的数据类型,除了()和()类型外,可以包含任何种类的数据。

A.固定长度字符串

B.字节

C.实型

D.单精度

E.可变长度字符串

F.整型

G.货币H.自定义

答案:A H

(17)设有以下定义语句:

Dim max, min As Single, d1,d2 As Double, abc As String*5

则变量max 的类型是(),变量min 的类型是( ) ,变量d1的类型是( ),变量d2的类型是( ),变量abc 的类型是( )

A. 可变类型

B. 单精度型

C. 双精度型

D.字符串型

答案:A B A C D

(18)下列()是日期型常量。

A.”2/1/02”

B.2/1/02

C.#2/1/02#

D.{2/1/02}

答案:C

(19)表达式”12”+”34”的值是()。表达式”12”&”34”的值是()。表达式12&34的值是()。表达式12+34的值是()。

A.”1234”

B.”12””34”

C.”46”

D.46

答案:A A A D

(20)表达式Int(Rnd(0)+1) + Int(Rnd(1)-1)的值是()

A.1

B.0

C.-1

D.2

答案:B

(21) Option Explicit语句不可以放在()

A. 窗体模块的声明段中

B. 标准模块的声明段中

C. 类模块的声明段中

D. 任何事件过程中

答案:D

(22)表达式”12”+”34”的值是()。表达式”12”&”34”的值是()。表达式12&34的值是()。表达式12+34的值是()。

A.”1234”

B.”12””34”

C.”46”

D.46

答案:A A A D

2下列数据中,哪些是变量?哪些是常量?

A.Sum B.”ToTal” C.#10/10/99# D.Ture E.PI

F.456.89 G.1E1 H.vbCrLf

答案:

变量有:A. Sum、E.PI; 常量有:B. ”ToTal”(字符常量)、C.#10/10/99#(日期常量)、

D. Ture(布尔类型常量)、F. 456.89(数值常量)、G. 1E1(数值常量,科学计数法表示)、

H. vbCrLf(系统常量,表示回车换行)

3 在Visual Basic中,对于没有赋值的变量,系统默认值是什么?

答案:

对于不同类型的变量,在没有赋值的情况下,系统有不同的默认值:

◆字符型变量:变长的字符串被初始化为一个零长度的字符串(“”) ,而定长的字符串则

用空格填充。

◆数值型和货币型变量的默认值是零。

◆日期型变量的默认值是0:00:00。

◆逻辑型变量的默认值是False。

◆可变型变量的默认值是Empty。

4 分别写出下列表达式的值:

A.2+2*3^2

B.4>5

C.#10/20/99#-10

D.7/2

E.9\4

F.-15 Mod 4

G.”Sum=” & 2001

H.”abcd”+”1234”

答案:

每个表达式的值和类型如下:

5 写出下列函数的值:

A.Fix(-123.456)

B.Int(-123.456)

C.Sqr(Sqr(16))

D.Exp(2\3)

E.Int(Abs(13-24)/2+.5)

F.Str(-345.67)

G.Log(Cos(0)) H.Val(“32-23”)

I.UCase(“Beijing-2008”)J.Right(“Beijing-2008”,4)

K.Sgn(-4 Mod 3+1) L.Len(“Beijing-2008”)

答案:

每个函数的值和类型如下

6 将下列数学表达式,改写成Visual Basic 表达式。

答案:

每个数学表达式的Visual Basic 表达式如下 : A 的Visual Basic 表达式是:sqr(p*(p-a)*(p-b)*(p-c) B 的Visual Basic 表达式是:(3*x)/(6-x^3)/(x^3+5*x+3) C 的Visual Basic 表达式是:sqr(abs(b*b-4ac))

D 的Visual Basic 表达式是:sin(2*x)+tan(3*x)^2/cos(x) 7 将下列Visual Basic 表达式,还原成数学表达式。

A.x^4/25+x*Abs(x*x-4*x)

B.3/4/(B-4)*A

C.Sin(42*3.14159/180)/Cos(3.14159/3)

D.Log(x)/sqr(x*x+1) 答案:

每个 Visual Basic 表达式所对应的数学表达式如下 :

A.25

4x +x x x 42- B.4

43-B A C.0

060cos 42sin D.

1

ln 2

+x x

8 根据所给条件,列出逻辑表达式。

(1) 闰年的条件是:年号(year)能被4整除,但不能被 100 整除;或者能被400整除。

x

x

tg x D AC B C x x x x B c p b p a p p A cos 32sin :4:

3563:)

)()((:223

3

+

-++----

(2)一元二次方程ax2+bx+c=0 有实根的条件为a≠0 ,并且b2-4ac≥0。

(3)征兵的条件是:男性(sex) ,年龄(age) 在18~20 岁之间,身高(size) 在1.65 米以上;或者女性(sex) ,年龄(age) 在16~18 岁之间,身高(size) 在1.60 米以上。(4)分房的条件为:已婚(marrigerat) ,年龄(age) 在26岁以上,工作年限(workingage)在5年以上。

答案:

其逻辑表达式分别为

(1)被某个数整除,可以用数值运算符Mod 或Int( ) 函数来实现。

(year Mod 4=0 And year Mod 100<>0) Or (year Mod 400=0)

或(Int(year /4)=year/4 And Int(year/100)<>year/100) Or (Int(year/ 400)=year/400)

(2)a<>0 And b^2-4*a*c>=0

(3)设性别sex 值Ture 代表男,sex值False 代表女

(sex And age>=18 And age<=20 And size>=1.65) Or (Not sex And age >=16 And age<=18 And size>=1.60)

(4)设婚否marrigerat 值为Ture代表已婚,False代表未婚。

marrigerat And age >=26 And workingage>=5

9 写出要产生下列随机数,所需的表达式。

A.产生一个在区间(0,10)内的随机数.

B.产生一个在区间[20,30]上的随机整数.

C.产生一个两位的随机整数.

D.产生一个在区间[m,n]上的随机整数,其中:m,n是自然数,且m

答案:

每项所对应的Visual Basic表达式如下:

A的Visual Basic表达式是:rnd*10

B 的Visual Basic表达式是:20+int(rnd*11)

C 的Visual Basic表达式是:10+int(rnd*90)

D 的Visual Basic表达式是:m+int(rnd*(n-m+1)

10 如果X是一个正实数,要求X保留两位小数,对X的第三位小数四舍五入的表达式是什么?当X是负数时,又该如何处理?

答案:

X是一个正实数,要求X保留两位小数,对X 第三位小数四舍五入的表达式是:int(x*100+0.5)/100

当X 是负数时,可以使用表达式:

-int(-x*100+0.5)/100

当X 是一个任意实数时,可以使用表达式:

sgn(x)*int(abs(x)*100+0.5)/100

11 在立即窗口中试验下列函数的操作。

(1) print Chr (65)

print Asc(“A”)

(2) print Sgn(2)

print Sqr(2)

(3) a=”Good”

b=”Morning”

print a+b

print a & b

(4) s=”ABCDEFGHIJK”

print Left(s,2)

print Right(s,2)

print Mid(s,3,4)

print Len(s)

print Instr(s,”efg”)

print Lcase(s)

(5) print now

print day(now)

print month(now)

print year(now)

print weekday(now)

(6) print rnd

for I=1 to 5: print rnd: next

答案:

(1)首先启动Visual Basic集成开发环境(可使用多种方法打开,如按照以下步骤逐级打开

菜单:“开始”→“程序”→“Microsoft Visual Basic中文版”。注:在不同的系统中路径可能不同)。

(2)系统启动完成后首先显示一个工程对话框,如下图所示:

可单击上图的“取消”按钮。

(3)进入Visual Basic集成开发环境后,使用“视图”→“立即窗口”命令将立即窗口打开。(4)在立即窗口中输入上面6个小题的语句进行调试,每输入一条语句,打回车键后就会在下面一行显示结果。如:第1小题的操作界面如下图所示:

程序设计基础试题库

练习题一Visual FoxPro 基础 、选择题 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)交B )选择C )投影D )连接 6. 下列数据库技术的术语与关系模型的术语的对应关系中_______ d _____ 是正确的。 A)实例与关系 B )字段与元组C )记录与属性 D )记录类型与关系模式 7. 下列关于数据库系统的叙述中,正确的是 _____ c _____ 。 A)数据库系统中数据的一致性是指数据类型一致 B)数据库系统只是比文件系统管理的数据更多 C)数据库系统减少了数据冗余 D数据库系统避免了数据冗余 8. 关系数据模型 ______ d ___ 。 A)只能表示实体间的1:1联系 B)只能表示实体间的1:n C只能表示实体间的m:n D 可以表示实体间的上述三种联系 9. 在一个关系中如果有这样一个属性存在,它的值能惟一地标识关系中的每一个元组,称

这个属性为 _____ a____ 。 A)关键字B )主属性C )数据项D )主属性值 10. 关系数据库管理系统中的元组是______ b ____ 。 A)关系中的垂直方向的列 B )关系中的水平方向的行 C属性或属性的组合 D )以上的答案均不正确 11. 从数据库的整体结构看,数据库系统采用的数据模型有_________ a __ 。 A)层次模型、网状模型和关系模型 B)层次模型、网状模型和环状模型 C)网状模型、链状模型和层次模型 D链状模型、关系模型和层次模型 12. 设有属性A B、C D以下表示中不是关系的是___________ d__。 A)R( A) B )R( A, B)C )R (A, B, C, D) D )R (A X B X C X D) 13. 若实体间联系是M N的,则将联系类型_________ a___ 。 A)也转换为关系模型 B)属性加入任一个关系模式中 C)属性加入N端实体类型相应的关系模式中 D)属性加入M端实体类型相应的关系模式中 14. 数据库系统的构成为数据库、计算机硬件系统、用户和________ a ____ 。 A 数据库管理系统 B 操作系统 C 数据集合 D 文件系统 15. 层次型、网状型和关系型数据库划分原则是________ c ___ 。 A 文件大小 B 记录长度 C 数据之间的联系 D 联系的复杂程度 16. 在数据库设计中用关系模型来表示实体和实体之间的联系,关系模型的结构是 _____ d ___ 。 A 封装结构 B 层次结构 C 网状结构 D 二维表结构 17. 在关系模型中,实现“关系中不允许出现相同的元组”的约束是通过__a ________ 。 A 主键 B 超键 C 外键 D 候选键 18. 层次模型不能直接表示 ______ b __ 关系。 A 1:1 B m:n C 1:m D 1:1 和1:m 19. DBAS旨的是_____ d____ 。

C++程序设计基础课后答案 第八章

8.1 阅读下列程序,写出执行结果 1.#include class Bclass { public: Bclass( int i, int j ) { x = i; y = j; } virtual int fun() { return 0 ; } protected: int x, y ; }; class Iclass:public Bclass { public : Iclass(int i, int j, int k):Bclass(i, j) { z = k; } int fun() { return ( x + y + z ) / 3; } private : int z ; }; void main() { Iclass obj( 2, 4, 10 ); Bclass p1 = obj; cout << p1.fun() << endl; Bclass & p2 = obj ; cout << p2.fun() << endl; cout << p2.Bclass :: fun() << endl; Bclass *p3 = &obj;

cout << p3 -> fun() << endl; } 2.#include class Base { public: virtual void getxy( int i,int j = 0 ) { x = i; y = j; } virtual void fun() = 0 ; protected: int x , y; }; class A: public Base { public: void fun() { cout<<"x = "< main() { intnum=0; While(num<=3) { num=num+1; printf("%d",num); } } A 1 B 1 2 C 1 2 3 D 1 2 3 4 11、在定义inta[10];之后,如下对a的引用正确的是()。 A a[10] B a[6.3] C a(6) D a[0] 12、如下程序的输出结果是()。

(完整版)程序设计基础试题_10_答案

广州大学学年第学期考试卷 课程高级语言程序设计考试形式(开/闭卷,考试/查) 学院系专业班级学号姓名 一、填空题(每空1分,共10分) 1.C源程序的基本单位是(函数)。 2.一个C源程序中至少应包含一个(main()函数)。 3.若a和b均是int型变量,且a和b的初值均为5,则计算表达式a+=b++ 后,a的值为(10 ),b的值为( 6 )。 4.若a、b和c均是int型变量,则计算表达式a=(b=4)+(c=2)后,b值为( 4 ),c 值为( 2 )。 5.表达式8.2-2/3 的计算结果是(8 )。 6.在C语言中,整数可用三种数制表示,它们分别是(十进制)、(八进制)和(十六进制)。 二、程序计算题(每小题5分,共15分) 1. # define f(a) printf(“%d”,a) main() { int i,b[]={1,2,3,5,7,9,11,13,15},*p=5+b; for(i=3;i;i--) switch(i) { case 1: case 2: f(*p++); break;

case 3: f(*(--p)); } } 2. main() { int arr_sum(int arr[],int n); int a[3][4]={1,3,5,7,9,11,13,15,17,19,21,23}; int *p,total; int (*pt)( int arr[],int n); pt=arr_sum; p=a[0]; total=(*pt)(p,12); printf(“total=%d\n”,total); } arr_sum(int arr[],int n) { int i,sum=0; for(i=0;i

Visual Basic 程序设计基础教程-课后习题答案-范荣强

第一章程序与编程环境 一、填空题 1. 工程,Form_Load 2. 事件(触发) 3. 窗体,Name 4. CurrentX, CurrentY 5. maxButton, BorderStyle = 1 or 3 or 4 or 5 6. Alignment, 空缺,AutoSize 7. Style, LoadPicture 8. Line, Shape 9. 重画10. FillStyle ll. MultiLine, maxLength, Locked 12. Font 13. sub, 对象名,事件名14. 方法,Object.Method, text1.setfocus() 15. Name, minButtom, CurrentX(Y), Caption 16. Interval, Enable 17. timer, Interval, ms(毫秒) 18. Mouse Down, Click, LoastFocus 19. .Frm, .Frx, .bas. cls. Vbp 20. 注释, “Rem 语句”或者“’语句” 第二章数据的类型、表示以及运算 一、请指出下列哪些是VB的合法常量,并说明原因 (1)√(2)X 常量不能加类型说明符号改成123.4 (3)X与上题类似,如果是常量,则类型说明符放在后面(4)√等价于2E3 (5) √(6)√等于十进制的4113 (7)X 如果是16进制要写&符号(8)X 指数不能为小数(9)X 月份超过12,日超过31 (10)√(11)√(12)√等价于上一题(13)X 8进制数每一位不能超过8 (14)√(15)X 变量,常量要为基本数据类型的值(16)√ 二、找出合法变量 (1)√(2)√如果与控件Label1同在一个应用程序里面,该变量会屏蔽掉控件Label1 (3) X 保留字(4)√(5)X 变量不能以数字开头(6)变量不能有小数点 (7)√(8)√数组变量(9)X保留字(10)√可以,但rnd()不可以,rnd()是函数 (11) √(12)√(13)√(14)X ’符号表示注释(15)X 这是表达式,不是变量(16)X 同上,是表达式 三、指出下列数据x,y,z的声明是否正确,如果正确请指明其类型 (1)√ x--long, y—variant, z—integer (2) √ x—long, y—long, z—integer (3) √ x—double, y—double, z—integer (4) X 变量x &中间不能有空格 (5)√自动转换成字符串 (6)X 变量声明不能直接赋值 (7)√ (8)√自动转换成字符串 (9)X 常量不能把函数写上去 (10)√ 四、写出下列表达式的结果 (1)1 (2) 1 (3)false (4) ab12 (5)123 (6)出错,加法表达式中如果有一个是数值类型,则“+”表示加号,而不是字符的链接符号(7)False (8)true (9) true (10) false 默认转换成相同类型(数值),建议这里把2改成D试试 (P.S. 布尔类型TRUE = -1, FALSE = 0; 优先顺序:^(乘方)→-(求负)→*、/→\(整除)→MOD→+、-) 五、写出下列函数的结果

《程序设计基础》练习题

《程序设计基础》综合练习题1009 姓名:学号: 一.选择题(以熟悉概念为主) 1.在C++的结构化程序设计框架中,程序的基本组成单元是___。 A.函数B.类 C.关系D.数据结构 2.下列特性中, C 与C++ 共有的是_____。 A. 继承 B. 封装 C. 多态性 D. 函数定义不能嵌套 3.面向对象程序设计思想的主要特征中,不包含____。 A.继承性B.封装性和信息隐藏性 C.功能分解、逐步求精D.多态性 4.在C++中所有的函数名称后面都紧跟着一对____,其中既可以没有内容,也可以包含函有选举权的参数。 A.( ) B.< > C.[ ] D.{ } 5.在C++的面向对象程序设计中,类与类之间通过____来实现独立性。 A.友元B.继承C.派生D.封装 6.下列哪个是C++语言的有效标识符?____。 A._No1 B.No.1 C.12345 D.int 7.在C++语言中,所有函数说明都必须指明返回值类型,没有返回值的函数应说明为____类型的函数。 A.int B.char C.float D.void 8.下列字符常量的写法中,错误的是____。 A.?\105?B.?*?C.????D.?\a? 9.下列变量的存储分配方式中,系统不为其分配内存空间的是____。 A.auto变量B.register变量C.static变量D.extern变量 10.如int型变量x的初始值为1,变量y和t皆为int型,且表达式y=(t=x,x+=t, t),则变量y的值为____。 A.0 B.1 C.2 D.不确定 11.下列关于C++运算符结合性的说法中,正确的是____。 A.赋值运算符是左结合的B.复合赋值运算符是左结合的 C.单目运算符是左结合的D.双目算术符是左结合的 12.表达式18/5*sqrt(4.0)/5值的数据类型是____。 A.int B.double C.float D.不确定 13.下列代码的输出结果是____。 int j=int( ); double d=double( ); cout<

C程序设计基础_复习题

c语言规定,任何非0的数像1 -1等都被认为是真,而0被认为是假 1>1为假 试题一、单选题 1. 已知int k,m=1;执行语句k=-m++;后,k的值是_____。【知识点:难度:正确答案:A】 A.-1 B.0 C.1 D.-2 2. 已知定义int m; float k; 正确的语句是。【知识点:难度:正确答案:D】 A.(int k)%m B.int(k)%m C.int(k%m)D.(int)k%m 3. 当k的值不为0时,在下列选项中能够将k的值赋给变量m,n的是______。【知识点:难度: 正确答案:B】 A.m=k=n B.(m=k)&&(n=m) C.(m=k)||(n=k)D.(n=m)&&(m=k) 4. 已知int x=5; 表达式6>x>1值是_____。【知识点:难度:正确答案:A】 A.0 B.1 C.5 D.表达式语法错 表达式6>x>1 ,先 判断6>x 为0,再 判断0>1,所以值 为0。 (6>x 为1 ,再判 断1>1,所以值为 0。) 5. 下列程序段执行后c值为_____。【知识点:难度:正确答案:D】 int k=7, c=0; while(--k) if (k%3) continue; else c++; A.5 B.4 C.3 D.2 6. 已知字母a的ASCII码为十进制数97,且ch为字符型变量,则执行语句ch=…a?+…D?-…A?;后,ch 中的值为_____。【知识点:难度:正确答案:C】 A.d B.c C.100 D.不确定 7. 设m,n已正确定义,执行语句{for(m=0, n=10; m,能使puts(s)语句正确输出ABCDE字符串的程序 段是______。【知识点:难度:正确答案:C】 A.char s[5] = {"ABCDE"}; puts(s) B.char s[5] = {…A?,?B?,?C?,?D?,?E?}; puts(s); C.char *s; s = "ABCDE"; puts(s); D.char *s; scanf(“%s”,s); puts(s); 《C程序设计基础及实验》

《程序设计基础》题库(50道)

《程序设计基础》题库(50道) <说明> 1、难易程度依次为:易(16道)、较易(38道)、较难(31道)、难(15道)。 2、总共抽8道题,按难易程度:易(1道)、较易(4道)、较难(2道)、难(1道); 按题型:顺序(1道)、分支(2道)、单循环(2道)、多循环(1道)、数组(1道)、字符串(1道) 3、考试要求:先画流程图再写程序,理论考试,2个半小时 一、顺序结构 1、 请定义4个整型变量,并打印输出这4个变量的加、减、乘、除后的结果。(易) 2、 将华氏温度转化成摄氏温度。公式为:C=(5/9)*(F-32),其中F 为华氏温度,C 为 摄氏温度。请根据给定的华氏温度输出对应的摄氏温度。(易) 3、 根据观察,蟋蟀的名叫频率与温度有关,具体的公式为T=(c+40)/10.其中,c 代表 蟋蟀每分钟鸣叫数,T 代表华氏温度。请根据蟋蟀每分钟的鸣叫数输出相应的华氏温度。(易) 4、 编写程序,读入0~1000的一个整数并将其各位数字之和赋给一个整数,如整数932, 各位数字之和为14. (较易) 5、 编程实现两个整数交换位置,例如:int x = 6,y = 9,交换后 x = 9,y = 6。(较易) 6、 求空间两点之间的距离。(提示:空间一点(x,y,z ),可由三个实数来描述)(较易) 7、 已知圆的半径,求圆的面积。(易) 8、 已知一个三角形的三边边长分别为a,b,c ,利用海伦公式求三角形的面积。(较难) 海伦公式: 9、 求两数平方和的算术根。(易) 10、 给定一段时间求出它的秒数。(如计算2小时 17分30秒等于多少秒)(易) 11、 某印刷厂3月1日有A4纸500盒,3月2日又买进进100盒,3月3日用掉A4 纸存量的三分之二,3月4日又买进A4纸存量的2倍,问该印刷厂3月1日到3月4日期间每天的A4纸存量分别是多少盒?(易) 12、 三个小朋友,大毛有糖果50粒,二毛有糖果43粒,三毛有糖果13粒。现在他们 三兄弟做游戏,从大毛开始,将自己的糖果三等分,三兄弟每人一份,多余的自己吃掉;然后二毛和三毛也依次这样做,问最后三兄弟各有多少糖果?(较易) 二、分支结构 13、 两个整数比较大小,输出较大值。(易) 14、 三个整数比较大小,输出最大值。(较易) 15、 求下列函数中y 的值。(较易) y=10 (x=0) y=3x+5 (x>0) y=x-2 (x<0) 16、 判断某年是否为闰年。(闰年的条件是:该年的年号能被4整除且不能被100整除, 或该年的年号能被400整除,则该年是闰年,否则不是闰年。)(较易) 17、 根据某同学的成绩,判定其成绩的等级。(90~100分为“优秀”,80~89为“良好”, 70~79为“中等”,60~69为“及格”,60分以下为“不及格”。)(较易) ))()((c p b p a p p S ---=2 c b a p ++=

C++程序设计基础(第4版)(上)习题解答

《C++程序设计基础》(第4版)(上) 习题与解答 第1章基本数据与表达式 1.1 选择题 1.一个最简单的C++程序,可以只有一个(C )。 (A)库函数(B)自定义函数(C)main函数(D)空函数 2.用C++语言编写的源程序要成为目标程序必须要经过(D )。 (A)解释(B)汇编(C)编辑(D)编译3.C++程序中的简单语句必须以(B )结束。 (A)冒号(B)分号(C)空格(D)花括号4.假设有说明int a=0; double x=5.16;,则在以下语句中,(C )属于编译错误。 (A)x=a/x; (B)x=x/a; (C)a=a%x; (D)x=x*a; 5.执行C++程序时出现的“溢出”错误属于(C )错误。 (A)编译(B)连接(C)运行(D)逻辑 6.在下列选项中,全部都是C++关键字的选项为(C )。 (A)while IF Static (B)break char go (C)sizeof case extern (D)switch float integer 7.按C++标识符的语法规定,合法的标识符是(A )。 (A)_abc (B)new (C)π(D)"age" 8.在C++语句中,两个标识符之间(A )不能 ..作为C++的分隔符。 (A)数字(B); (C): (D)+ 9.下列正确的八进制整型常量表示是(B )。 (A)0a0 (B)015 (C)080 (D)0x10 10.下列错误的十六进制整型常量表示是(C )。 (A)0x11 (B)0xaf (C)0xg (D)0x1f 11.在下列选项中,全部都合法的浮点型数据的选项为(B )。 (A)-1e3.5 15. 2e-4 (B)12.34 -1e+5 0.1E-12 (C)0.2e-2 -12345. e-5 (D)5.0e(1+4)0.1 8e+2 12.在下列选项中,正确的字符常量为(D )。 (A)"a" (B)'name' (C)a (D)'\101' 13.在下列选项中,(D )不能 ..交换变量a和b的值。 (A)t=b; b=a; a=t; (B)a=a+b; b=a-b; a=a–b; (C)t=a; a=b; b=t; (D)a=b; b=a; 14.关于下列语句,叙述错误的是(A )。

程序设计基础试题一知识讲解

山东科技大学200 —200 学年第学期 《程序设计基础》考试试卷一 班级姓名学号____________ 一、选择题(20分) 1.算法具有五个特性,以下选项中不属于算法特性的是B (A)有穷性(B)简洁性(C)可行性(D)确定性 2.以下选项中可作为C语言合法常量的是A (A)-80. (B)-080 (C)-8e1.0 (D)-80.0e 3.以下叙述中正确的是C (A)用C语言实现的算法必须要有输入和输出操作 (B)用C语言实现的算法可以没有输出但必须要有输入 (C)用C程序实现的算法可以没有输入但必须要有输出 (D)用C程序实现的算法可以既没有输入也没有输出 4.以下不能定义为用户标识符是D (A)Main (B) _0 (C) _int (D) sizeof 5.以下选项中,不能作为合法常量的是B (A)1.234e04 (B)1.234e0.4 (C)1.234e+4 (D)1.234e0 6.数字字符0的ASCII值为48,若有以下程序 main() {char a='1',b='2'; printf("%c,",b++); printf("%d\n",b-a);} 程序运行后的输出结果是C (A)3,2 (B)50,2 (C)2,2 (D)2,50

7.有以下程序 main(){ int m=12,n=34; printf("%d%d",m++,++n); printf("%d%d\n",n++,++m);}程序运行后的输出结果是A (A)12353514 (B)12353513 (C)12343514 (D)12343513 8.有以下语句:int b;char c[10];,则正确的输入语句是B A)scanf("%d%s",&b,&c); B) scanf("%d%s",&b,c); (C)scanf("%d%s",b,c); D)scanf("%d%s",b,&c); 9.有以下程序 main(){ int m,n,p; scanf("m=%dn=%dp=%d",&m,&n,&p); printf("%d%d%d\n",m,n,p); } 若想从键盘上输入数据,使变量M中的值为123,N中的值为456,P中的值为789,则正确的输入是A A)m=123n=456p=789 B)m=123 n=456 p=789 C)m=123,n=456,p=789 D)123 456 789 10.有以下程序 main(){ int a,b,d=25; a=d/10%9;b=a&&(-1); printf("%d,%d\n",a,b); } 程序运行后的输出结果是B A)6,1 B)2,1 C)6,0 D)2,0 11.有以下程序 main(){ int i=1,j=2,k=3; if(i++==1&&(++j==3||k++==3)) printf("%d %d %d\n",i,j,k);}程序运行后的输出结果是D (A)1 2 3 (B)2 3 4 (C)2 2 3 (D)2 3 3

相关文档
最新文档