我的也是!!是不是中了ARP病毒呢??该代码用DEVCPP编译也会报是病毒!!!
#include "message.h"
int blog = 0; // 用于判断是否已经打开了一个文件
int main(int argc, char *argv[])
{
char ch;
FILE *head = NULL;
struct student stu[3001]; // 最多容纳3000名学生信息
struct student *p = stu;
while ( message (), (ch = getchar ()) != '0' )
{
while ( getchar() != '\n' );
switch (ch)
{
case '1' : head = news (head); break;
case '2' : head = open (head); break;
case '3' : head = save (head); break;
case '4' : head = close (head); break;
case '5' : add (p, head); break;
case '6' : del (p, head); break;
case '7' : revise (p, head); break;
case '8' : seek (p, head); break;
case '9' : qsorts (p, head); break;
default : puts ("输入错误!"); system ("PAUSE");
}
}
return 0;
}
void message (void)
{
system("CLS");
puts (" 欢 迎 使 用 学 籍 管 理 系 统");
puts ("--------------------------------------------------------------------------------");
puts (" 1.新建文件\t 2.打开文件\t 3.保存文件\t 4.关闭文件\t 5.追加记录");
puts (" 6.删除记录\t 7.修改记录\t 8.查找记录\t 9.数据排序\t 0.退出系统");
puts ("--------------------------------------------------------------------------------");
puts ("请输入要执行指令序号:");
}
FILE * news (FILE *fp) // 新建文件
{
char name[81];
puts ("请输入文件名:");
fgets (name, 80, stdin); // 用fgets输入以增加安全性
name[strlen (name) - 1] = '\0'; // 去掉fgets产生的回车
strcat (name, ".txt");
if ( (fp = fopen (name, "r")) != NULL )
{
fprintf (stderr, "文件%s已经存在\n", name);
fp = NULL;
}
else if ( (fp = fopen (name, "ab+")) == NULL )
fprintf (stderr, "不能创建文件%s\n", name);
else
puts ("文件创建成功");
system ("PAUSE");
return fp;
}
FILE * open (FILE *fp) // 打开文件
{
char name[81], *p;
if ( blog )
puts ("已经打开了一个文件,不能重复打开!");
else
{
puts ("请输入要打开的文件名:");
fgets (name, 80, stdin); // 用fgets输入以增加安全性
name[strlen (name) - 1] = '\0'; // 去掉fgets产生的回车
p = name; // 把指针指向文件名的最后四个字符
p += strlen (name) - 4;
if ( strlen (name) < 4 || !strcmp (name, ".txt") ) // 判断输入的文件名是否有后缀,没有则加之
strcat (name, ".txt");
if ( fopen (name, "r") == NULL )
fprintf (stderr, "没有文件%s!\n", name);
else
{
printf ("打开文件%s成功\n", name);
fp = fopen (name, "ab+");
}
blog = 1;
}
system ("PAUSE");
return fp;
}
FILE * save (FILE *fp) // 保存文件
{
return fp;
}
FILE * close (FILE *fp) // 关闭文件
{
if ( fp == NULL )
puts ("没有打开文件");
else
{
blog = 0;
fclose (fp);
fp = NULL;
puts ("文件关闭成功!");
}
system ("PAUSE");
return fp;
}
void add (struct student *p, FILE *fp) // 追加记录
{
}
void del (struct student *p, FILE *fp) // 删除记录
{
}
void revise (struct student *p, FILE *fp) // 修改记录
{
}
void seek (struct student *p, FILE *fp) // 查找记录
{
}
void qsorts (struct student *p, FILE *fp) // 数据排序
{
}