Servlet实现文件上传

      本次的JSP实验的内容是采用Servlet来实现文件上传,本次实验的原理就是对post产生的数据进行分析,得出所需要的部分。我们需要的信息有两个部分,第一就是所上传的文件名,第二就是上传过来的文件信息。通过对post信息的分析,第一行信息是分隔符信息,第二行信息是文件名信息,第三行和第四行是我们不需要的信息,第五行开始是传的文件信息。如果同时上传多个文件,就会有多个分隔符,信息的最后一行比第一行(就是分隔符)多"--",当出现这个的时候说明信息已经结束了。本次实验的重点和难点也就是如何正确提取出所需要的信息,文件名和文件内容,对于文件名的处理时,把读进来的信息变成字符串,然后进行处理,这样使在后面的字符串比较变得简单。
      本次实验的关键代码:

Continue reading

C语言实现冒泡排序

      排序有很多种,上次有介绍一种堆排序,这次说的是冒泡排序
      思路:冒牌排序的想法是从一系列数中a[n],从尾段a[n-1]开始,如果它小于它前面的那个数("倒二个"数a[n-2]),则与之交换顺序,然后"倒二个"数再与"倒三个"数a[n-2],相比,如果a[n-1]<a[n-2],则再交换,如此继续,直至跟a[0]比较,这样就可以保证a[0]是所有数中最小的一个。重复上述的步骤,得a[1]为第二小.....a[n]为最大的数。

Continue reading

GNU Autotools的使用

    Linux下,工程管理器 Make 可用于自动编译、链接程序的实用工具。我们要做的是写一个makefile 文件,然后用make命令来编译、链接程序。
    Makefile的作用就是让编译器知道要编译一个文件需要依赖其他的哪些文件。这里我们就是要用GNU Autotools来收集系统配置信息并自动生成Makefile文件。
GNU Autotools指的就是下面的五个工具:

 (1)aclocal
 (2)autoscan
 (3)autoconf
 (4)autoheader
 (5)automake

Continue reading

学生信息管理系统

在Linux下Shell编程实现:

功能:对学生信息进行管理。要求实现数据的基本操作:学院和学生信息的增加,修改,删除,统计。

具体要求:
(1)构造两个类似数据库的文本文件:
   第一个为学院信息文件(students.db),包含字段:
   学院编号(唯一),学院名称
   第二个为学生信息文件(colleges.db),包含字段:
   学号(唯一),学生姓名,所在系编号
   说明:分隔符可以自己选定,建议用","; 编码规则自己定

Continue reading

Java电子时钟

用Java编写一个程序,实现动态的文字时钟,以秒计时。
知识点:
  1、线程(Thread)
  2、Applet类:它最先执行iniy()方法,完成后进入初始态;然后马上执行start()方法,
       Applet 程序进入运行状态;线程也在start()中被启动,然后执行run()中的内容。
       当Applet程序所在的浏览器图标化或者转入其他页面时,Applet程序马上执行stop()方法
  3、Java不像C++,只能单继承(extends [父类] ),不能多继承;
       如果要实现多继承,要用到接口(implemets  [接口名] )
       Runnable是接口,当继承该接口时,要改写其中的run方法。

Continue reading

分治法解决棋盘覆盖问题

在一个2k x 2k ( 即:2^k x 2^k )个方格组成的棋盘中,恰有一个方格与其他方格不同,称该方格为一特殊方格,且称该棋盘为一特殊棋盘。在棋盘覆盖问题中,要用图示的4种不同形态的L型骨牌覆盖给定的特殊棋盘上除特殊方格以外的所有方格,且任何2个L型骨牌不得重叠覆盖。

Continue reading

C++/Java版推排序

用c++/ java编写一段程序:用堆排序(HeapSort)对一系列数进行排序,按从大到下输出:
堆排序的时间复杂度是:0(nlogn)
这里分别用C++和java编写:用面向对象的方法:将堆排序作为类中的一个方法,
(1)C++版:代码如下:

Continue reading

保留指定日期的文件,其余的copy一份

 在当前目录下指定日期的文件不动,其余的全部再copy一份(日期的月,天、时间由用户自己输入决定)

在不同的linux系统中ls -l命令的输出显示的字段数不同:
(1)8个字段:第6个字段对应着月和日(如03-01),第7个字段对应着时间,第8个字段对应着文件名:这时你的shell程序可以这样写:

Continue reading