Python语言程序设计 习题2

一、选择题

1.流程图中表示判断框的是(   B   )。

A.矩形框         B.菱形框         C.平行四边形框        D.椭圆形框

2.下面不属于程序的基本控制结构的是(    D  )。

A.顺序结构       B.选择结构       C.循环结构        D.输入输出结构

3.以下关于Python语句的叙述中,正确的是(   A  )。

A.同一层次的Python语句必须对齐

B.Python语句可以从一行的任意一列开始

C.在执行Python语句时,可发现注释中的拼写错误

D.Python程序的每行只能写一条语句    p39:可以在一行中使用多行语句,语句之间以分号间隔

4.下列语句中,在Python中非法的是(    C  )。

A.x=y=z=1      p41 链式赋值

B.x,y=y,x        p42  同步赋值

C.x=(y=z+1)  

D.x+=y            x=x+y

5.已知x=2,语句x*=x+1执行后,x的值是(   D   )。      x=x*(x+1)

A.2       B.3       C.5   D.6

6.在Python中,正确的赋值语句为(   C   )。

A.x+y=10    

B.x=2y            x=2*y

C.x=y=30    

D.3y=x+1

7.为了给整型变量x,y,z赋初值10,下面正确的Python赋值语句是(   C   )。

A.xyz=10              B.x=10 y=10 z=10

C.x=y=z=10            D.x=10,y=10,z=10

8.语句x=input()执行时,如果从键盘输入12并按回车键,则x的值是(   D   )。

A.12      B.12.0       C.1e2   D.'12'

p43  input()函数从标准输入设备读取一行数据,并返回一个字符串

如果想要输入数值数据,可以使用类型转换函数将字符串转换为数值

x=int(input())
print(x)

9.语句x,y=eval(input())执行时,输入数据格式错误的是(   A   )。  p43

A.3 4         B.(3,4)       C.3,4       D.[3,4]

10.语句print('x=${:7.2f}'.format(123.5678))执行后的输出结果是(  C  )。选项中的□代表空格。p47

A.x=□123.56       B.$□123.57       C.x=$□123.57   D.x=$□123.56

首先 x=$ 是在大括号外面的,原样输出。

然后大括号里面的 {:7.2f}中7表示format中的参数占7个字符宽度,如果输出位数大于该宽度,按实际位数输出,如果输出位数小于此宽度,默认右对齐,左边补空格。

而 .2f 表示小数位保留2位,四舍五入。

format中的数是 123.5678 小数位保留两位,也就是 .57(小数点也算一个字符),所以占掉了3个字符宽度,前面的123原样输出,所以最后的结果是 123.57(总共占6个字符宽度,默认右对齐,所以左边有一个空格)

如果format中的数是123456.789呢?

print('x=${:7.2f}'.format(123456.789))

因为 输出位数大于7,所以按实际位数输出

11.print('{:7.2f}{:2d}'.format(101/7,101%8))的运行结果是(   B   )。

A.{:7.2f}{:2d}                          B.□□14.43□5(□代表空格)

C.□14.43□□5(□代表空格)                D.□□101/7□101%8(□代表空格)

101/7的结果:

输出7个字符宽度,保留小数点后两位,所以输出14.43(占五的字符宽度),所以前面输出两个空格。所以是□□14.43

101%8的结果是5,输出2个字符宽度,所以是□5 

12.下列程序的运行结果是(    D  )。

x = y = 10
x, y, z = 6, x + 1, x + 2
print(x, y, z)

A.10 10 6          B.6 10 10          C.6 7 8             D.6 11 12

同步赋值,首先x=6,然后y=x+1(这时x=10),然后z=x+2(这时x=10)

二、填空题

1.流程图是描述     算法   的常用工具。

2.在Python语句行中使用多条语句,语句之间使用    分号   分隔;如果语句太长,可以使用      反斜杠 作为续行符。

x = 1 + 2 \
    + 3
y = 3;z = 5
print(x)
print(y)
print(z)

 3.Python语言通过     缩进对齐   来区分不同的语句块。

4.在Python中,赋值的含义是使变量    指向    一个数据对象,该变量是该数据对象的   别名    。

5.和x/=x*y+z等价的语句是     x=x/(x*y+z)   。

6.语句print('AAA',"BBB",sep='-',end='!')执行的结果是    AAA-BBB!     。

sep=‘-’表示以 - 分隔,end=‘!’表示以!结尾(不换行

这是有end的情况:

 如果没有end会输出换行:

print('AAA',"BBB",sep='-')

 7.下列Python语句的输出结果是        。

print("数量{0},单价{1} ".format(100, 285.6))

print(str.format("数量{0},单价{1:3.2f} ", 100, 285.6))

print("数量%4d,单价%3.3f " % (100, 285.6))

 8.下列Python语句的输出结果是         。

print(format("121", ">20"))

print(format("12321", ">20"))

三、问答题

1.简述程序设计的基本步骤。

(1)分析问题,确定数字模型或方法。

(2)设计算法,画出流程图。

(3)选择编程工具,按算法编写程序。

(4)调试程序,分析输出结果。

2.简述Python程序中语句的缩进规则。

Python通过语句缩进对齐反映语句之间的逻辑关系,从而区分不同的语句块。缩进可以由任意的空格或制表符组成,缩进的宽度不受限制,一般为四个空格或一个制表符,但在同一程序中不建议混合使用空格和制表符。就一个语句块来讲,需要保持一致的缩进量。

3.为什么要在程序中加注释?怎样在程序中加注释?加入注释对程序的执行有没有影响?

注释对程序的执行没有任何影响,目的是对程序做解释说明,以增强程序的可读性。

程序中的单行注释采用#开头的多行注释,也可采用三引号(实际上是引用三引号括起来的一个多行字符串,起到注释作用)。注意,注释行是不能使用反斜杆续行的。

注释对程序的执行没有任何影响。

4.用Python语句完成下列操作:

(1)将变量i的值增加1

i = 1
print(i)
i += 1
print(i)

 

(2)i的立方加上j,并将结果保存到i中

i = 3
j = 2
i = i * i * i + j
print(i)

 或者

i = 3
j = 2
i = pow(i,3) + j
print(i)

(3)将2的32次方减1的值存放到g中

i = 2
g = pow(i,32) - 1
print(g)

 

(4)将2位自然数的个位与十位互换,得到一个新的数,不考虑个位为零的情况

num = 23
i = num % 10
j = num // 10
num2 = i * 10 + j
print(num2)

5.设a=10,分别独立执行下列语句后a的值是多少?

(1)a+=a             20

(2)a*=2             20

(3)a<<2            40

(4)a,a=5,2*a        20

(5)a*=1<<1          20

(6)x=a;a+=x         20

6.Python基本输入输出通过哪些语句来实现?

(1)标准输入语句的格式: input([提示字符串])

(2)标准输出-----print()函数:print([输出项1,输出项2,……,输出项n][,sep=分隔符][,end=结束符])

7.格式化输出中有哪些常用的格式说明符?其含义是什么?

(1)字符串格式化运算符%

(2)利用format()内置函数

(3)利用字符串的format()方法

详见 Python数据的输出

8.从功能上讲,一个程序通常包括那些组成部分?

python程序主要是由:模块、语句、函数、类、数据、注释等组成。

Python是解释性语言,写的代码不用编译,其实是个脚本,由Python解释器解释代码再运行。

Python语言的核心只包含数字、字符串、列表、字典、文件等常见类型和函数,而由Python标准库提供了系统管理、网络通信、文本处理、数据库接口、图形系统、XML处理等额外的功能。
 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值