📅  最后修改于: 2023-12-03 15:12:43.519000             🧑  作者: Mango
本题为GATE-CS-2016(套装2)的第 55 题。题目要求考生编写一个程序,对一些给定的文件进行操作,并根据要求输出结果。
给定一个文件,其中包含n行,每行有m个以空格分隔的整数。请编写一个程序,实现以下操作:
本题要求对给定文件进行处理,因此需要使用文件输入输出功能。具体程序实现过程如下:
with open('filename.txt', 'r') as f:
lines = f.readlines()
matrix = []
for line in lines:
row = [int(x) for x in line.strip().split()]
matrix.append(row)
# 计算总和
total_sum = sum([sum(row) for row in matrix])
print('总和:', total_sum)
# 对每一行进行排序
sorted_rows = [sorted(row) for row in matrix]
print('排序后的每一行:')
for row in sorted_rows:
print(row)
# 对每一列进行排序
sorted_cols = [list(x) for x in zip(*matrix)]
sorted_cols = [sorted(col) for col in sorted_cols]
sorted_matrix = [list(x) for x in zip(*sorted_cols)]
print('排序后的每一列:')
for row in sorted_matrix:
print(row)
首先使用with open('filename.txt', 'r') as f:
语句打开文件,读取每一行的内容,并将其转化为一个二维列表matrix
。然后分别对每一行和每一列进行排序,并输出结果。
本题考查了考生的文件输入输出和列表操作能力。需要温习这些基础知识点,才能顺利完成本题。