素数筛选与文件处理:数组存储、二进制读写及随机访问

任务概述

本任务涵盖了多个编程基础知识点,包括二维数组操作、素数判断、文件读写以及二进制数据处理等。

具体步骤

  1. 二维数组输入与存储: 用户通过键盘输入二维数组元素值,程序将数组数据写入文件。

  2. 素数筛选及格式化输出: 筛选出2到1000之间的所有素数,并将结果分别存储到文件(prime.txt)和二进制文件(prime.dat)中。文件中的素数以表格形式输出,每行5个,每个素数占用10个字符宽度。

  3. 实数平均值与个数计算: 程序读取包含若干实数的文件,计算所有实数的平均值和个数。

  4. 二进制文件随机访问: 创建一个包含5到1000所有整数的二进制文件,并通过移动文件指针实现对文件的随机访问,读取并输出第20到第30个整数。

核心代码示例 (Python)

# ... (省略部分代码) ...

def is_prime(n):
    # ... (素数判断逻辑) ...

with open("prime.txt", "w") as txt_file, open("prime.dat", "wb") as bin_file:
    count = 0
    for i in range(2, 1001):
        if is_prime(i):
            # ... (写入文件及格式化输出) ...
            # ... (写入二进制文件) ...

# ... (读取实数文件并计算平均值及个数) ...

with open("numbers.bin", "rb") as file:
    file.seek(19 * 4)  # 假设每个整数占4字节
    for _ in range(10):
        number = struct.unpack("i", file.read(4))[0]
        print(number, end=" ")
zip
课后.zip 预估大小:15个文件
folder
读取数据 文件夹
file
读取数据.exe 1.84MB
file
mytxt.txt 28B
file
读取数据.cpp 437B
folder
素数 文件夹
file
素数.cpp 2KB
file
素数.exe 1.84MB
file
prime.bat 453B
file
prime.txt 453B
folder
二维数组键入 文件夹
file
数组存入txt.cpp 898B
file
sz.txt 24B
file
数组存入txt.exe 1.83MB
file
377de5ce37b17811ce57e2ae0829d817.jpg 77KB
folder
奇数存入二进制 文件夹
file
mytxt.txt 2KB
file
mytxt.bat 2KB
file
奇数存入二进制.exe 1.83MB
file
奇数存入二进制.cpp 447B
zip 文件大小:1.82MB