Python语言程序设计 习题1

一、选择题

1.python语言属于(C)

A.机器语言    B.汇编语言   C.高级语言   D.科学计算语言

2.下列选项中,不属于python特点的是(B)

A.面向对象   B.运行效率高   C.可读性好   D.开源

3.python程序文件的扩展名是(D)

A.  .python   B.  .pyt    C.   .pt    D.   .py

4.以下叙述中正确的是(C)

A.python 3.x与python 2.x兼容

B.语句只能以程序方式执行

C.python是解释型语言

D.python语言出现的晚,具有其他高级语言的一切优点

5.下列选项中合法的标识符是(A)  p11

A. _7a_b            

B.break          #break是关键字

C. _a$b         #  $  不是标识符

D. 7ab           #以数字开头了

6.下列标识符中合法的是(B)  p11

A. i’m         #  ‘  不是标识符

B. _   

C.  3Q        #以数字开头了

D. for         #for是关键字

在python中,标识符由字母,数字和下划线(_)组成,

不能以数字开头

********和c语言不同的是python标识符不包括$*******

7.python不支持的数据类型有(A)p12

A.  char   B.int   C.float   D.list

8.关于python的复数,下列说法错误的是(C)p14

A.表示复数的语法形式是a+bj             

B.实部与虚部必须是浮点数

C.虚部必须加后缀j,且必须是小写      #可大写也可小写

D.函数abs()可以求复数的模       #p23:abs(x),x为复数时返回复数的模

p23

本题D中的函数是abs(x)函数,作用是返回x的绝对值,x为复数时返回复数的模

a=-10
b=3-4j
print(abs(a))
print(abs(b))

p19

在math模块中,有fabs(x)函数,作用是返回x的绝对值,返回值为浮点数

需要导入math模块。

参数不能是复数

import math
a=-10
b=3-4j
print(math.fabs(a))
print(math.fabs(b))  #不对

9.函数type(1+0xf*3.14)的返回结果是(D)

A. <class ‘int’>   B.<class ‘long’>   C.<class ‘str’>   D.<class ‘float’>

print(type(1+0xf*3.14))
print(1)
print(0xf)
print(3.14)

10.若字符串s=’a\nb\tc’,则len(s)的值是(C)p15

A. 7   B.6   C.5    D.4

#a,\n,b,\t,c,总共5个字符

11.python语句print(0xA+0xB)的输出结果是(D)p12

A.0xA+0xB   B.A+B   C.0xA0xB   D.21

#16进制整数,以0x或0X开头,后接0~9和A~F(或用小写字母)字符的整数。

0x9=9

0xa=10   (0xA=10)

0xb=11

0xabc=a*16*16+b*16+c=2748

12.下列属于math库中的数学函数是(C)p19

A.time()   B.round()    C.sqrt()    D.random()

13.python表达式中,可以使用(A)控制运算的优先顺序

A.圆括号()  B.方括号[]   C.大括号{}   D. 尖括号<>

14.下列表达式中,值不是1的是(D)p25~p28

A.4//3   B.15%2    C.1^0   D.~1

#选项C中,^是按位异或操作,即两个数相同取0,不同取1

D.中,~是按位取反操作,记忆方法:~a = – (a + 1)

详细方法:

https://blog.csdn.net/u012843873/article/details/101265460

15.python语句print(r”\nGood”)的运行结果是(C)p16

在字符串前面加r,那么反斜杠\不发生转义

A.新行和字符串Good       B.r”\nGood”

C.\nGood                         D.字符r,新行和字符串Good

16.语句eval(’2+4/5’)执行后的输出结果是(A)p16

A.2.8   B. 2       C.2+4/5    D.’2+4/5’

17.整形变量x中存放了一个两位数,要将这个两位数的个位数字和十位数字交换位置,例如13变成31,正确的python表达式是(A)

A.(x%10)*10+x//10                 B.(x%10)//10+x//10

C.(x/10)%10+x//10                D.(x%10)*10+x%10

18.与数学表达式\frac{cd}{2ab}对应的python表达式中,不正确的是(C)

A. c*d/(2*a*b)   B.c/2*d/a/b     C.c*d/2*a*b    D.c*d/2/a/b

二、填空题 

1.Python语句既可以采用交互式的     命令   执行方式,又可以采用    程序    执行方式。

2.在Python集成开发环境中,可使用快捷键   F5    运行程序。

3.使用math模块库中的函数时,必须要使用   import math     语句导入该模块。

可以看看下面,记不住没关系,等学完第8章就会很明白了。

可以有三种方法导入模块:

import 模块名1[,模块名2[,…,模块名n]

import math
x=4
print(math.sqrt(x))

 

import math,random
print(math.pi)
print(random.randint(0,100))#生成0--100的随机数

 

 from 模块名 import 项目名1[,项目名2[,…,项目名n]

和上个方法不同的是,这个方法只能导入一个模块,并且只能导入啥项目使用啥项目

from math import sqrt
x=4
print(sqrt(x))  #这里和上一个不一样,这里不用使用math.sqrt(x)
#print(pi)  报错,没导入pi项目

 

 from 模块名 import *

from math import *
print(pi)
print(sqrt(16))

 

 

4.Python表达式1/2的值为   0.5     ,1//3+1//3+1//3的值为   0     ,5%3的值为   2     。

5.Python表达式0x66 & 0o66的值为  38      。

知识点1:

0b开头的是二进制数,0o开头的是八进制数,0x开头的是十六进制数

0x66表示为十进制数为:6*16+6=102

0o66表示为十进制数为:6*8+6=54

知识点2:

将102表示为二进制数:

102/2=51——余0

51/2=25——余1

25/2=12——余1

12/2=6——余0

6/2=3——余0

3/2=1——余1

1/2=0——余1

然后按照从下到上的顺序取余数得:1100110

同理,54的二进制表示为:110110

可以检验一下,比如102的二进制表示为1100110,那么转化为十进制为:2的1次方+2的2次方+2的5次方+2的6次方得:2+4+32+64=102

知识点3:

&为按位与运算,运算规则为:

0&0=0   ,   0&1=0   ,   1&0=0   ,   1&1=1

将得到的102与54的二进制数低位对齐,高位补0,进行按位与运算:(蓝色的0是补上的0)

1100110

0110110

————

0100110  

得到的结果为0100110,转化为十进制为38

6.设m,n为整型,则与m%n等价的表达式为   m-m//n*n     。

下面是用函数的验证,可以不看

def Get1(x, y):
    return x - x // y * y


def Get2(x, y):
    return x % y


print(Get1(23, 3), Get2(23, 3))
print(Get1(66, 9), Get2(66, 9))
print(Get1(98, 21), Get2(98, 21))

 

 

7.计算2的31次方-1的Python表达式是   2**31-1 或 (1<<31)-1     。

8.数学表达式的Python表达式为       。 

math.exp(abs(x-y))/(pow(3,x)+math.sqrt(6)*math.sin(y))

三、问答题

1.Python语言有何特点?

Python语言的优势:

(1)简单易学。

(2)程序可读性好。

(3)丰富的数据类型。

(4)开源的语言。

(5)解释型的语言。

(6)面向对象的语言。

Python语言的劣势:

Python程序的运行速度比较慢,Python用代码缩进来区分语法逻辑的方式还是给很多初 学者带来了困惑。

2.简述Python的主要应用领域及常用的函数模块。

主要应用领域:

(1)Windows系统编程。

(2)科学计算与数据可视化。

(3)数据库应用。

(4)多媒体应用。

(5)网络应用。

(6)电子游戏应用。

常用的函数模块:

(1)main模块函数。

(2)cmatch模块函数。

(3)random模块函数。

(4)time模块函数。

(5)calendar模块函数。
3.Python语言有哪些数据类型?p12~p18

4.写出下列数学式对应的Python表达式。

1.

import math
a = 1
b = 2
print(math.sin(a) + math.sin(b) / (a + b))

2.

import math
a = 1
b = 2
c = 3
print(1 / 3 * math.pow(a * a * a + b * b * b + c * c * c, 1 / 3))
print((1 / 3) * ((math.pow(a, 3) + math.pow(b, 3) + math.pow(c, 3)) ** (1 / 3)))

 5.按要求写出Python表达式。

(1)将整数k转换成实数。

k = 1
print(float(k))

(2)求实数x的小数部分。

k = 1.23456
print(k-int(k))

(3)求正整数m的百位数字。

k = 123456
print(k // 100 % 10)

(4)随机产生一个8位数,每位数字可以是1到6中的任意一个整数。

import random
for i in range(8):
        a = random.randint(1,7)
        print(a,end = '')

6.下列语句的执行结果是False,分析为什么?

>>> from math import sqrt
>>> print(sqrt(3)*sqrt(3)==3)
 
False

文章出处登录后可见!

已经登录?立即刷新

共计人评分,平均

到目前为止还没有投票!成为第一位评论此文章。

(0)
心中带点小风骚的头像心中带点小风骚普通用户
上一篇 2023年6月13日
下一篇 2023年6月13日

相关推荐