为了简单说明算法编程题的程序框架,以非常简单的例题说明算法编程题的程序编写思路。
算法编程题答题要求:
测试数据输入文件名xxx.in;
测试数据输出文件名xxx.out;
测试程序文件名:xxx.c(C)、xxx.cpp(C++),xxx.java(Java)、xxx.cs(C#)
题目1:打印矩形
输入数据样例文件中的内容:
3 5 *
需要实现3行5列的星号(*)矩形,每个星号中间空一格,每一行的末尾不留空格
输出数据样例文件内容:
* * * * *
* * * * *
* * * * *
输入数据样例文件:
输出数据样例文件:
为了调试方便,不采用记事本、VI这样的简单编程工具,直接使用IDE编程。
以Java语言为例,使用Eclipse/MyEclipse新建的Project结构(Package Explorer视图)如下:
注:最终只需要按照要求提交源代码文件Question1.java即可。
样例程序:
import java.io.File;
import java.io.FileWriter;
import java.io.Writer;
import java.util.Scanner;
public class Question1 {
/**
* @param args
* @throws Exception
*/
public static void main(String[] args) throws Exception {
// 1、读取条件
Scanner scanner = new Scanner(new File("Question1.in"));
int row = scanner.nextInt();
int col = scanner.nextInt();
char ch = scanner.next().charAt(0);
scanner.close();
// 2、算法实现
StringBuffer sb = new StringBuffer();
for (int i = 0; i < row; i++) {
for (int j = 0; j < col; j++) {
sb.append(ch);
if (j < col - 1) {
sb.append(" ");
}
}
if (i < row - 1) {
sb.append("\n");
}
}
System.out.println(sb);
// 3、输出结果
Writer writer = new FileWriter("Question1.out");
writer.write(sb.toString());
writer.close();
}
}
在上一篇文章中
http://blog.csdn.net/xiaolongzaixian/article/details/48352479简单地介绍了答题的方法,通过这篇文章中的样例程序可以看出,程序的编程步骤大体都相同,分3步,第1步、第3步大体都相同,第2步根据题目不同差异较大。
本文中的题目非常简单,只是为了说明算法编程题的程序框架,实际考试内容要比这复杂得多。无论多么复杂得问题,总是能分解成若干个小问题,所以先了解清楚基本的算法编程题程序框架也是很重要的。
分享到:
相关推荐
在准备字节跳动或其他技术公司的面试时,除了深入学习这些排序算法,还应该熟悉其他基础数据结构以及相关的算法,如图搜索、动态规划、回溯法、贪心策略等。同时,实际编程能力的提升,如代码质量、可读性、性能优化...
【Spark技术实践——词频统计】在大数据领域,Spark作为一种高效的数据处理框架,以其快速、通用和可扩展性而受到广泛关注。本实践旨在基于已经搭建的Hadoop平台,利用Spark组件进行文本词频统计,以此深入理解Scala...
《雅虎中国——招聘试题解析》 在信息技术领域,雅虎中国作为一家知名的互联网公司,其招聘过程自然备受瞩目。本篇文章将深入探讨雅虎中国招聘试题中的关键知识点,帮助求职者更好地准备在线考试,提升自己的竞争力...
考试内容通常包括但不限于编程语言、数据结构、算法分析、操作系统原理、数据库管理、网络技术、软件工程、项目管理等多个方面。 在描述中提到的“疏漏”可能是指之前上传的资料存在错误或不完整的情况,这次的更新...
这份"50道Java常见编程题(有精力的同学看看).rar"压缩包文件提供了学习者一个宝贵的资源,涵盖了Java的基础编程练习,旨在帮助他们巩固基础知识并提升编程技能。 在Java的世界里,面向对象编程(Object-Oriented ...
北京大学ACM题解是一系列针对ACM(国际大学生程序设计竞赛)比赛的解析文档,旨在帮助参赛者理解和解决这类竞赛中的编程问题。ACM竞赛旨在提高大学生的算法设计、问题解决和编程技能,是全球范围内极具影响力的比赛...
其他面试题如集合、异常处理、IO/NIO、反射、序列化、注解、多线程并发、JVM优化、数据库技术、缓存、NoSQL、框架、消息队列、微服务、Linux等方面的知识同样重要,需要不断学习和实践来提高技能水平。
【Java大作业——小学数学考试自动系统】是一个利用Java编程语言设计和实现的教育软件项目,主要用于帮助小学生进行数学练习和考试。这个系统自动化地生成数学题目,涵盖加减乘除基础运算,以及可能涉及的一些初级...
这可能意味着试题涵盖了当年的主流编程语言、技术框架以及软件开发的最佳实践。 压缩包内的文件名为“行业教育软件-学习软件-2005年5月程序员考试试题及答案”,这个单一的文件可能是PDF文档或者一系列的文本文件,...
这个项目不仅涉及到软件工程的基本原理,还涵盖了网络技术、数据库管理、以及可能的人工智能算法。 首先,从设计的角度来看,网络考试系统的设计需要考虑以下几个方面: 1. 用户界面:设计应简洁易用,以便于考生...
在编程教学中,Java程序语言教学有几个显著的特点。首先,学习编程语言不仅仅需要识记和理解,更重要的是动手操作。实践经验在学习编程中的重要性毋庸置疑,缺乏足够的实践会导致学生无法建立计算机思维。其次,Java...
【ASP.NET源码——[学校班级]多功能在线考试系统改进版.zip】是一个包含ASP.NET技术实现的、针对学校班级的在线考试系统的源代码资源。这个系统经过改进,旨在提供更全面的功能,以满足教育机构对在线教学和评估的...
### A4试卷模板知识点概述 #### 一、A4试卷模板的...通过以上分析可以看出,《程序设计与数据结构》的期末考试试卷模板具有很强的针对性和实用性,不仅有助于学生复习备考,同时也为教师提供了良好的出题参考框架。
【小学生心算系统——C语言程序设计】 课程设计的目标是创建一个C语言编程的小学生心算计算机辅助教学(CAI)系统,旨在帮助小学生提升加、减、乘、除的心算能力。系统不仅提供单一运算的练习,还支持四则混合运算...
【标题】中的“数据库应用系统——试卷智能生成与...总的来说,这个项目涵盖了计算机科学的多个核心领域,包括数据库、软件工程、Web开发、人工智能以及相关的算法、设计和测试技术,对于提升综合能力具有很大的价值。
《ASP网络考试系统的设计与实现——阅卷子系统(源代码+LW)》是一个基于Java编程语言的软件系统,其主要目标是构建一个在线考试平台,尤其关注阅卷子系统的开发。该系统包含了丰富的功能模块,适用于毕业设计或课业...
本书以实际问题为切入点,旨在帮助读者理解和掌握C语言的基本概念、语法和编程技巧,从而逐步建立起从问题分析到编写程序的完整思维框架。 C语言是一种强大的、低级的编程语言,广泛应用于系统开发、软件工程、...
《ASCII测缘分算法详解——基于VC++的小型软件开发实践》 在计算机科学与信息技术领域,我们经常会遇到各种有趣的编程挑战,其中之一就是“ASCII测缘分算法”。这种算法以简单的字符编码——ASCII码作为基础,通过...
ASP.NET是一种强大的Web应用程序开发框架,由微软公司推出,它基于.NET Framework,为开发者提供了构建动态网站、Web应用和服务的强大工具。在这个项目中,“ASP网络考试系统的设计与实现——阅卷子系统”是一个典型...