Advertisement

北邮PythonOJ作业:打印田字格中的行和列。

  •  5星
  •     浏览量: 0
  •     大小:None
  •      文件类型:None


简介:
该作业涉及使用Python解决北邮莫言编程平台(pythonoj)上的一个问题,具体内容为:生成一个田字格图形,并以树形结构的方式打印在屏幕上,其中包含输入行数和列数的参数。

全部评论 (0)

还没有任何评论哟~
客服
客服
  • Python OJ - 输入
    优质
    本作业要求编写一个Python程序,该程序接收用户输入的行数和列数,并输出相应的“田”字结构图案。通过此练习掌握基本的循环控制语句与字符串操作技巧。 北邮Python OJ作业要求输入行数和列数来打印田字格。
  • 标准版-文档.doc
    优质
    《田字格标准版-打印文档》提供了规范的田字格布局,适用于学生的汉字书写练习和书法训练,帮助学生更好地掌握汉字结构。 提供标准田字格下载模板,适用于Word打印并可随意修改。包括田字格模板、WORD格式的田字格模板。
  • A4练习本(可直接).doc
    优质
    这是一份方便实用的A4大小田字格练习本文档,可以直接打印使用,非常适合学生进行汉字书写和书法练习。 A4纸张的田字格练习本适合那些想要改善书写的人使用,如果你觉得自己写字不够好看的话,可以试着用这个练习本来提高一下。
  • 标准拼音-横版_双A5尺寸
    优质
    《标准拼音田字格-横版》是一款专为学习汉语拼音和汉字书写的辅助工具,采用便于携带与使用的双A5尺寸设计,适合作业或练习使用。 标准拼音田字格, 横版, 双A5大小。
  • JavaStudent.zip
    优质
    这是一个来自北京邮电大学的关于Java编程语言的学生作业文件,内容围绕着学生相关的类和对象的设计与实现。 北京邮电大学的Java选修课程提供了在线编程题解服务。内容涵盖了类的基本概念及其初步应用的学习与实践。
  • 政EMS快递单模板
    优质
    本资源为中国邮政EMS快递单的标准打印模板,适用于各类电商、物流公司及个人寄件需求,确保信息准确无误。 中国邮政EMS快递单打印模板可以通过导入好用的快递单打印软件进行高效打印。该程序具备以下功能: 1. 支持自定义快递单及其他类型单据的模板。 2. 自动填写发件人的信息。 3. 自动填写收件人的信息。 4. 能够自动抓取淘宝订单中的发货信息。 5. 提供实时查询服务,使用户能够随时了解快递状态。 6. 具备下载和导入快递单模板的功能,增加了打印种类的灵活性。 7. 支持自定义字体大小。
  • 与米模板(适用于WPSWORD)包共116份下载
    优质
    本资源包含116份田字格与米字格模板,专为WPS及Word设计,适合书法练习、作业排版等多种用途。 各类字帖及田字格、米字格模板一应俱全,是想练字朋友的好选择。
  • 电大学Java
    优质
    本课程是北京邮电大学计算机专业的一门基础课,旨在通过实践项目教授学生Java编程语言的核心概念和开发技巧。学生将完成一系列设计与编码任务,以提升解决问题的能力和团队合作精神。 实验1:类的定义与对象数组使用 **任务一** 创建一个名为`Student`的学生类。该类包含以下属性和方法: - **非静态属性** - `String studentNumber`: 学生学号。 - `String studentName`: 学生姓名。 - `int markForMaths`, `markForEnglish`, 和 `markForScience`: 分别表示数学、英语与科学科目的成绩。 - **构造方法** - `Student(String number, String name)`: 构造函数,用于初始化学号和名字。 - `Student()`: 默认构造器(无参数)。 - **其他方法** - `String getNumber()` : 返回学生学号。 - `String getName()`: 返回学生姓名。 - `void enterMarks(int markForMaths, int markForEnglish, int markForScience)`: 输入三门课程的成绩。 - `int getMathsMark()`, `getEnglishMark()`, 和`getScienceMark()`:分别返回数学、英语和科学成绩。 - `double calculateAverage()`: 计算平均分,注意除数应为3.0而非整型数值以确保结果准确。分数初始值设置问题讨论:若将每个科目的初始分为零,则可能与实际得分为零的情况混淆;建议使用其他默认值或在输入前进行验证。 - `String toString()`: 返回包含学生信息的字符串,包括学号、姓名和各科目成绩及平均分。 编写`StudentTest`类来测试上述定义的功能。运行效果展示如下: ``` 请输入学生学号:2011211301 请输入学生姓名:王晓 请输入三门课成绩(数学,英语,科学):88,79,90 输出: 学号: 2011211301 姓名: 王晓 数学成绩: 88 英语成绩: 79 科学成绩: 90 平均分: 85.67 ``` **任务二** 创建一个名为`StudentList`的类,用于存储多个学生对象。定义如下属性和方法: - **成员变量** - `Student[] list`: 存储学生对象。 - `int total`: 记录当前数组中的元素个数。 - **构造函数** - `StudentList(int length)`: 初始化一个具有给定长度的列表来存储学生信息。 - **方法** - `boolean add(Student stu)` : 向列表中添加一个新的`stu`对象,成功返回true,否则false。 - `boolean remove(int no)` 和 `remove(String number)`: 分别根据位置或学号删除一个元素,并反馈操作结果(布尔值)。 - `boolean isEmpty()`: 检查数组是否为空并给出相应的判断结果。 - `Student getItem(int no)` 和`getItem(String number)`: 根据索引和学号返回对应的对象,若找不到则返回null或错误信息。 - `int getTotal()`:获取当前学生总数。 编写测试类`StudentListTest`以验证功能: ``` 菜单如下,请输入1~8代表您要执行的操作: 1. 添加一个新学生 2. 按学号删除学生 3. 根据位置移除学生信息 4. 判断列表是否为空 5. 通过索引获取指定的学生信息 6. 使用学号查找特定的记录 7. 展示所有学生的数据 8. 结束程序 操作实例: 输入1添加新用户,后续会要求你依次填写:学号、姓名及三门课的成绩。 ``` 作业命名规则为`_学号(8位)_姓名_第几次作业(1位)_类名.java`。例如: - `_09211195_王晓_1_Student.java` - `_09211195_王晓_2_studentList.java` 注意:提交时,仅上传`.java`文件而非压缩包,并确保源代码中的类名称与文件名一致以方便批改。
  • 第9天资料:大串口接收及二维码n
    优质
    本资料提供关于在第9天学习中完成的大作业指导,重点在于通过串口接收并打印多行数据,并实现根据需求自定义打印二维码的功能。 在IT行业中,特别是在嵌入式开发或物联网领域里,串口通信是一种常见的数据传输方式,用于设备间的低速通信。本课题“第9天资料 大作业:通过串口接收并打印多行文本,并生成二维码”中探讨了如何使用C语言实现从串口中接收数据后将其输出为多行文本的功能,并结合二维码技术来打印一定数量的行。 首先,我们需了解串口通信的基本概念。串口(也称作串行接口)是计算机硬件上的一种用于按位传输数据的方式。常见的标准包括RS-232、RS-485等,在C语言中可以使用标准输入输出库或操作系统提供的API来实现这些功能,例如在Linux系统下通常通过`/dev/ttyS*`设备文件访问串口。 接下来的讨论集中在如何接收串口数据上。这需要打开串口设备,并设置波特率、数据位数、停止位和校验方式等参数,然后使用读取函数如read来监听串口传入的数据。 例如: ```c #include #include #include int open_serial_port(const char *port_name, speed_t baud_rate) { int fd = open(port_name, O_RDWR | O_NOCTTY | O_NDELAY); if (fd == -1) { // 错误处理 return -1; } struct termios options; tcgetattr(fd, &options); options.c_cflag &= ~PARENB; // 不使用奇偶校验位 options.c_cflag &= ~CSTOPB; // 设置停止位为1个单位时间长度 options.c_cflag &= ~CSIZE; // 清空数据位设置 options.c_cflag |= CS8; // 数据位数设为8 options.c_iflag &= ~(IXON | IXOFF | IXANY); // 禁用软件流控制 options.c_oflag &= ~OPOST; // 原始输出模式 cfsetispeed(&options, baud_rate); cfsetospeed(&options, baud_rate); tcsetattr(fd, TCSANOW, &options); return fd; } void read_data(int serial_fd) { char buffer[256]; ssize_t bytes_received; while (true) { bytes_received = read(serial_fd, buffer, sizeof(buffer)); if (bytes_received > 0) write(STDOUT_FILENO, buffer, bytes_received); // 输出接收到的数据 } } ``` 在这个例子中,我们首先打开一个串口,并设置相应的通信参数。然后持续读取串口数据并将其打印到控制台上。 关于多行文本的输出,在C语言里使用`printf`函数即可实现这一功能。 例如: ```c void print_lines(char *data, int n_lines) { for (int i = 0; i < n_lines; ++i) printf(%s\n, data); // 输出数据并换行 } ``` 至于二维码的生成,通常需要使用第三方库如ZXing或libqrcodegen。你需要将接收到的数据编码为二维码,并通过打印机或其他显示设备输出。 例如: ```c #include qrcodegen/QrCode.h // 将数据转换成二维码格式 QrCode qr = QrCode::encodeText(data, QrCode::Ecc::MEDIUM); // 获取位图数据 std::vector bitMatrix = qr.getBitMatrix(); // 通过打印机或其他显示设备输出该位图数据 ``` 这个课题综合了串口通信、文本处理和二维码生成技术,是C语言编程中一个实用且有趣的项目。完成这一作业后,你不仅能加深对串口通信的理解,还能掌握如何在实际应用中整合多种技术。
  • 斑马二维码
    优质
    本文章详细介绍如何使用斑马打印机高效地打印包含二维码及字符的标签,内容涵盖所需材料准备、软件设置以及具体操作步骤。 使用C#代码实现斑马打印机打印二维码,并且该二维码不含小方框。