Skip to content

2026-计算概论C-py2-练习 ​

题集链接 ​

OpenJudge/计算概论C(py)/2026-计算概论C-py2-练习

共 10 题。

01:基础输入输出练习-04 ​

题目描述 ​

输入为两行,第一行有一个浮点数,第二行有两个整数,输出三个数字的平均值,保留小数点后两位。

输入

输入为两行,第一行有一个浮点数,第二行有两个整数

输出

输出为一行,一个浮点数

样例输入

text
1.0
2 3

样例输出

text
2.00

题解 ​

思路 ​

读入浮点数与两个整数,计算三个数的平均值并保留两位小数。

知识点 ​

输入函数与输出函数第1章程序设计与Python导引

代码(尹思源) ​

python
a = float(input())
b, c = map(int, input().split())
avg = (a + b + c) / 3
print(f"{avg:.2f}")

02:基础输入输出练习-05 ​

题目描述 ​

给定一个整数、一个浮点数、一个字符串,以空格分开

输出整数除以7的余数,浮点数乘3(保留小数点后三位),以及字符串的最后一位,以空格分开

输入

输入为一行,分别为一个整数、一个浮点数、一个字符串,以空格分开

输出

输出为一行,分别为一个整数、一个浮点数、一个字符串,以空格分开

样例输入

text
8 1.5 apple

样例输出

text
1 4.500 e

题解 ​

思路 ​

按照题目指定的格式处理整数、浮点数和字符串。

知识点 ​

输入函数与输出函数第1章程序设计与Python导引

代码(尹思源) ​

python
a, b, s = input().split()
print(f"{int(a)%7} {float(b)*3:.3f} {s[-1]}")

03:基础输入输出练习-07 ​

题目描述 ​

第一行读入一个字符串a(保证长度至少为6)

第二行读入一个字符串b(保证长度至少为6)

第一行取a的第6位输出

第二行取b的第4到6位输出

输入

输入两行 第一行读入一个字符串a(保证长度至少为6) 第二行读入一个字符串b(保证长度至少为6)

输出

输出两行 第一行取a的第6位输出 第二行取b的第4到6位输出

样例输入

text
123abc
456def

样例输出

text
c
def

题解 ​

思路 ​

通过字符串下标和切片取得指定字符。

知识点 ​

输入函数与输出函数第1章程序设计与Python导引

代码(尹思源) ​

python
str1 = input()
str2 = input()
print(str1[5])
print(str2[3:6])

04:计算2的幂 ​

题目描述 ​

给定非负整数n,求2n。

输入

一个整数n。0 <= n < 31。

输出

一个整数,即2的n次方。

样例输入

text
3

样例输出

text
8

题解 ​

思路 ​

使用幂运算计算 2 的 n 次方。

知识点 ​

数字类型-数据运算-算数运算符第2章基本数据类型

代码(尹思源) ​

python
n = int(input())
print(2**n)

05:大象喝水 ​

题目描述 ​

一只大象口渴了,要喝20升水才能解渴,但现在只有一个深h厘米,底面半径为r厘米的小圆桶(h和r都是整数)。问大象至少要喝多少桶水才会解渴。

输入

输入有一行:包行两个整数,以一个空格分开,分别表示小圆桶的深h和底面半径r,单位都是厘米。

输出

输出一行,包含一个整数,表示大象至少要喝水的桶数。

样例输入

text
23 11

样例输出

text
3

提示

如果一个圆桶的深为h厘米,底面半径为r厘米,那么它最多能装Pi * r * r * h立方厘米的水。(设Pi=3.14159) 1升 = 1000毫升 1毫升 = 1 立方厘米

来源 : 计算概论化学学院期末考试

题解 ​

思路 ​

先计算桶的体积,再用向上取整确定需要的桶数。

知识点 ​

数字类型-数据运算-算数运算符第2章基本数据类型

代码(尹思源) ​

python
h, r = map(float, input().split())
Pi = 3.14159
V = Pi * r**2 * h
num = 20 * 1000 / V
# num 向上取整
num = int(-(-num // 1))
print(num)

06:数字转星期 ​

题目描述 ​

根据输入的数字1~7,输出对应的字符串Mon~Sun(均为3个字母的简写)

输入

1~7范围内的一个数字

输出

对应的星期的英文简写,首字母大写,后两个字母小写

样例输入

text
3

样例输出

text
Wed

提示

星期一:Mon 星期二:Tue 星期三:Wed 星期四:Thu 星期五:Fri 星期六:Sat 星期日:Sun

题解 ​

思路 ​

把 1 到 7 映射为对应的英文星期缩写。

知识点 ​

代码(尹思源) ​

python
weeks = ["Mon", "Tue", "Wed", "Thu", "Fri", "Sat", "Sun"]
day = int(input())
print(weeks[day - 1])

07:分离整数的各个数位 ​

题目描述 ​

从键盘输入一个任意的三位整数,要求正确地分离出它的百位、十位和个位数,并分别在屏幕上输出,输出采用每行输出一个数的方式,不带其它符号。

输入

一个任意的三位整数

输出

一个任意的三位整数

样例输入

text
123

样例输出

text
1
2
3

题解 ​

思路 ​

把整数作为字符串读取,逐位输出。

知识点 ​

代码(尹思源) ​

python
nums = input()
for num in nums:
    print(num)

08:苹果和虫子1 ​

题目描述 ​

你买了一箱n个苹果,很不幸的是买完时箱子里混进了一条虫子。虫子每x小时能吃掉一个苹果,假设虫子在吃完一个苹果之前不会吃另一个,那么经过y小时你还有多少个苹果(包括还没有被虫子吃完的)?

输入

输入仅一行,包括n,x和y(均为整数)。输入数据保证y <= n * x。

输出

输出仅一行,剩下的苹果个数

样例输入

text
10 4 9

样例输出

text
8

题解 ​

思路 ​

根据虫子吃完苹果的时间计算剩余数量。

知识点 ​

代码(尹思源) ​

python
n, x, y = map(int, input().split())
print(n - y // x)

09:字符串交换 ​

题目描述 ​

输入两个长度为4的字符串,交换这两个字符串的前两个字符后输出

输入

两个长度为4的字符串

输出

交换这两个字符串的前两个字符后输出

样例输入

text
ABCD
1234

样例输出

text
12CD
AB34

题解 ​

思路 ​

用字符串切片交换指定部分。

知识点 ​

代码(尹思源) ​

python
str1 = input()
str2 = input()
str3 = str1[:2] + str2[2:]
str4 = str2[:2] + str1[2:]
print(str4)
print(str3)

10:字符串大小写转换 ​

题目描述 ​

将一个字符串中的大写字母转换成小写字母,将小写字母转换成大写字母。

输入

一行,一个字符串,一共有三个字符,而且第一个和第三个字符是小写字母,第二个字符是大写字母。

输出

一行,转换后的字符串(还是三个字符,第一个和第三个是大写字母,第二个是小写字母)

样例输入

text
aBa

样例输出

text
AbA

提示

使用 str.lower() 和 str.upper() 方法(参考课堂讲义ppt)。可以用 [ ] 索引获得每一个字符,用 "+" 将转换后的字符连接起来。

来源 : ytxie

题解 ​

思路 ​

用大小写转换方法处理字符串中的指定字符。

知识点 ​

代码(尹思源) ​

python
str1 = input()
print(str1[0].upper() + str1[1].lower() + str1[2:].upper())

课程资料由授课教师、助教与同学共同积累。