《网络安全管理课程设计》
实训报告
班级:
学号:
姓名:
实 训 报 告
院(系):信息学院 课程名称:网络安全管理课程设计 日期:
备注:本实验报告用于各学科与计算机应用相关课程的实验,务必按时完成。不交此报告者,本次实验为“不及格”。
九江学院
实 训 报 告
院(系):信息学院 课程名称:网络安全管理课程设计 日期:
备注:本实验报告用于各学科与计算机应用相关课程的实验,务必按时完成。不交此报告者,本次实验为“不及格”。
九江学院
备注:本实验报告用于各学科与计算机应用相关课程的实验,务必按时完成。不交此报告者,本次实验为“不及格”。
九江学院
备注:本实验报告用于各学科与计算机应用相关课程的实验,务必按时完成。不交此报告者,本次实验为“不及格”。
九江学院
备注:本实验报告用于各学科与计算机应用相关课程的实验,务必按时完成。不交此报告者,本次实验为“不及格”。
九江学院
实 训 报 告
院(系):信息学院 课程名称:网络安全管理课程设计 日期:
备注:本实验报告用于各学科与计算机应用相关课程的实验,务必按时完成。不交此报告者,本次实验为“不及格”。
九江学院
备注:本实验报告用于各学科与计算机应用相关课程的实验,务必按时完成。不交此报告者,本次实验为“不及格”。
九江学院
备注:本实验报告用于各学科与计算机应用相关课程的实验,务必按时完成。不交此报告者,本次实验为“不及格”。
九江学院
实 训 报 告
院(系):信息学院 课程名称:网络安全管理课程设计 日期:
备注:本实验报告用于各学科与计算机应用相关课程的实验,务必按时完成。不交此报告者,本次实验为“不及格”。
九江学院
实 训 报 告
院(系):信息学院 课程名称:网络安全管理课程设计 日期:
备注:本实验报告用于各学科与计算机应用相关课程的实验,务必按时完成。不交此报告者,本次实验为“不及格”。
九江学院
备注:本实验报告用于各学科与计算机应用相关课程的实验,务必按时完成。不交此报告者,本次实验为“不及格”。
九江学院
备注:本实验报告用于各学科与计算机应用相关课程的实验,务必按时完成。不交此报告者,本次实验为“不及格”。
九江学院
备注:本实验报告用于各学科与计算机应用相关课程的实验,务必按时完成。不交此报告者,本次实验为“不及格”。
九江学院
备注:本实验报告用于各学科与计算机应用相关课程的实验,务必按时完成。不交此报告者,本次实验为“不及格”。
九江学院
备注:本实验报告用于各学科与计算机应用相关课程的实验,务必按时完成。不交此报告者,本次实验为“不及格”。
九江学院
备注:本实验报告用于各学科与计算机应用相关课程的实验,务必按时完成。不交此报告者,本次实验为“不及格”。
九江学院
实 训 报 告
院(系):信息学院 课程名称:网络安全管理课程设计 日期:
备注:本实验报告用于各学科与计算机应用相关课程的实验,务必按时完成。不交此报告者,本次实验为“不及格”。
九江学院
C语言实训报告
学生信息管理系统
系部名称:电子工程系
专业名称:电子信息技术
班 级:110112
学 号:11011221
学生姓名:刘龙涛
指导教师:顾军林
时 间:2012 年 5 月26日 至
2012年 6 月1 日
一、课程设计目的
1)对C各部分知识的综合应用能力
2)提高程序设计的能力
3)提升对于较大程序的抽象分析设计能力
4)学习调试和测试的技巧
二、课程设计内容
1)熟悉C实验环境,按给定的上机步骤练习完成;
2)熟悉C程序的编辑,编译,链接和运行的过程。
3)编译一个应用系统程序,形成一个软件系统。
三、需求分析
随着当今社会发展,信息化水平逐步提高,对教务管理有了新的要求,因此,编写一个信息管理系统是十分有必要的。
该软件主要是实现对学生信息进行系统化的管理,首先可以对学生基本信息进行输入和读取,其次查找并显示特定学生的相关信息,然后可以插入学生的相关信息,还有就是可按学生相关信息排序,以求达到简易操作的目的。
四、概要设计
1.系统结构图(功能模块图)和数据变量说明
2.功能模块说明
1.输入模块 2.列表模块
3.查找模块 4.修改模块
5.增加模块
6.成绩排序
五、运行情况
1. 主菜单
2.录入数据
3.输出数据
4.查找数据
5.增加数据
5.增加数据
6.修改数据
7.成绩排序
8.退出系统
六、设计体会和反思
通过两周的上机实习,我对C语言又有了崭新的认识。
C语言的学习是一个系统的过程,需要长期的知识积累和储备并辅以大量的上级实际操作练习,自己也应该有所体会,在实践中成长,在实践中求知。
这次我设计的课题是学生信息管理系统。课题要求对学生信息实现一系列基本操作。我选择通过结构体数组来实现这个设计。通过fread和fwrite两个函数实现对文件的读写,过程比较简洁(这里也有参考《C程序设计》中某例题的思想)。通过大量的符号和printf语句,使得操作界面更加和谐友善,这些都是我通过这次实习积累的经验。
同时,设计完成后我也发现了代码中的一些不足,例如在录入数据时要求输入序号的值,这个我认为操作比较复杂,但由于时间紧迫,未能提出完美的解决方案,但此问题并不影响程序的运行和要求的实现。经过实际检验,只要按照程序要求输入,就能够实现。
总之,通过这次实习,我也认识到了我自己在程序设计这门课程上的不足,在以后的学习实践中,要更加的严谨踏实,对知识的把握要更加的细致入微,要活学活用,争取在这个学科上取得更大的进步。
七、参考文献
谭浩强著.C程序设计(第三版).北京:清华大学出版社,2005
八、程序源代码
#include "stdio.h"
#define SIZE 100000
#include"string.h"
#include"stdlib.h"
#include"conio.h"
struct student
{int n;
int num;
char name[10];
int C;
int Maths;
int En;
float ave;
}stu[SIZE];
/*录入数据*/
void finput()
{
FILE *fp;
int i,p;
fp=fopen("fstu","wb");
for(i=0;i<SIZE;i+1)
{
printf("i=%d 输入序号i(当输入i=-1时,返回),i=",i++);
scanf("%d",&i);
if(i==-1)
{
fclose(fp);
return;
}
else
{
printf("请输入学号,姓名,C成绩,数学成绩,英语成绩:");
scanf("%d%s%d%d%d",&stu[i].num,stu[i].name,&stu[i].C,&stu[i].Maths,&stu[i].En);
stu[i].ave=(stu[i].C+stu[i].Maths+stu[i].En)/3.0;
stu[i].n=i+1;
fwrite(&stu[i],sizeof(struct student),1,fp);
}
}
fclose(fp);
}
/*输出数据*/
void flist()
{
FILE *fp;
int i;
fp=fopen("fstu","rb");
printf("※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※\n");
printf(" 成绩列表\n");
printf("-----------------------------------------------------------\n");
printf("序号 学号 姓名 C成绩 数学 英语 平均\n");
printf("-----------------------------------------------------------\n");
for(i=0;fread(&stu[i],sizeof(struct student),1,fp)==1;i++)
{
printf("%d%8d%8s%8d%8d%8d%16.2f\n",stu[i].n,stu[i].num,stu[i].name,stu[i].C,stu[i].Maths,stu[i].En,stu[i].ave);
}
printf("-----------------------------------------------------------\n\n");
printf("※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※\n");
fclose(fp);
}
/*查找数据*/
void fsearch()
{
FILE *fp;
int i,num;
fp=fopen("fstu","rb");
rewind(fp);
printf("请输入要查找的学号:");
scanf("%d",&num);
printf("※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※\n");
printf(" 查询结果\n");
printf("-----------------------------------------------------------\n");
printf("序号 学号 姓名 C成绩 数学 英语 平均\n");
printf("-----------------------------------------------------------\n");
for(i=0;i<=SIZE;i++)
if(stu[i].num==num)
{
printf("%d%8d%8s%8d%8d%8d%16.2f\n",stu[i].n,stu[i].num,stu[i].name,stu[i].C,stu[i].Maths,stu[i].En,stu[i].ave);
}
printf("-----------------------------------------------------------\n\n");
printf("※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※\n\n\n");
fclose(fp);
}
/*增加数据*/
void fadden()
{
int i,s;
FILE *fp;
fp=fopen("fstu","ab+");
rewind(fp);
printf("※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※\n");
printf(" 成绩列表\n");
printf("-----------------------------------------------------------\n");
printf("序号 学号 姓名 C成绩 数学 英语 平均\n");
printf("-----------------------------------------------------------\n");
for(i=0;fread(&stu[i],sizeof(struct student),1,fp)==1;i++)
{
printf("%d%8d%8s%8d%8d%8d%16.2f\n",stu[i].n,stu[i].num,stu[i].name,stu[i].C,stu[i].Maths,stu[i].En,stu[i].ave);
}
printf("※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※\n");
s=i;
for(i=s;i<SIZE;i++)
{
printf("i=%d 输入序号i(当输入i=-1时,返回),i=",i+1);
scanf("%d",&i);
if(i==-1)
{
fclose(fp);
return;
}
else
{
printf("请输入学号,姓名,C成绩,数学成绩,英语成绩:");
stu[i].n=i+1;
scanf("%d%s%d%d%d",&stu[i].num,stu[i].name,&stu[i].C,&stu[i].Maths,&stu[i].En);
stu[i].ave=(stu[i].C+stu[i].Maths+stu[i].En)/3.0;
fwrite(&stu[i],sizeof(struct student),1,fp);
}
}
fclose(fp);
}
/*修改数据*/
void fchange()
{
FILE *fp;
int i,num,n;
int flag=0;
printf("请输入要修改学生的学号:");
scanf("%d",&num);
for(i=0;i<=SIZE;i++)
if(stu[i].num==num)
{
printf("※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※\n");
printf(" 成绩列表\n");
printf("-----------------------------------------------------------\n");
printf("序号 学号 姓名 C成绩 数学 英语 平均\n");
printf("-----------------------------------------------------------\n");
printf("%d%8d%8s%8d%8d%8d%16.2f\n",stu[i].n,stu[i].num,stu[i].name,stu[i].C,stu[i].Maths,stu[i].En,stu[i].ave);
printf("-----------------------------------------------------------\n\n");
printf("※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※\n");
n=i;
flag=1;
break;
}
if(flag==0)
{
printf("※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※\n");
printf(" 输入错误!\n");
printf(" 请返回!\n");
printf("※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※\n");
return;
}
printf("\n\n\n");
fp=fopen("fstu","rb+");
fseek(fp,n*sizeof(struct student),0);
printf("请输入新的学号,姓名,C成绩,数学成绩,英语成绩:");
scanf("%d%s%d%d%d",&stu[i].num,stu[i].name,&stu[i].C,&stu[i].Maths,&stu[i].En);
stu[i].ave=(stu[i].C+stu[i].Maths+stu[i].En)/3.0;
fwrite(&stu[i],sizeof(struct student),1,fp);
fclose(fp);
fp=fopen("fstu","rb");
printf("※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※\n");
printf(" 成绩列表\n");
printf("-----------------------------------------------------------\n");
printf("序号 学号 姓名 C成绩 数学 英语 平均\n");
printf("-----------------------------------------------------------\n");
for(i=0;fread(&stu[i],sizeof(struct student),1,fp)==1;i++)
{
printf("%d%8d%8s%8d%8d%8d%16.2f\n",stu[i].n,stu[i].num,stu[i].name,stu[i].C,stu[i].Maths,stu[i].En,stu[i].ave);
}
printf("-----------------------------------------------------------\n\n");
printf("※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※\n");
fclose(fp);
}
/*成绩排序*/
void ftaxis()
{
int i,j,n;
FILE *fp;
struct student t;
fp=fopen("fstu","rb");
printf("※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※\n");
printf(" 成绩列表\n");
printf("-----------------------------------------------------------\n");
printf("序号 学号 姓名 C成绩 数学 英语 平均\n");
printf("-----------------------------------------------------------\n");
for(i=0;fread(&stu[i],sizeof(struct student),1,fp)==1;i++)
{
printf("%d%8d%8s%8d%8d%8d%16.2f\n",stu[i].n,stu[i].num,stu[i].name,stu[i].C,stu[i].Maths,stu[i].En,stu[i].ave);
}
printf("-----------------------------------------------------------\n\n");
printf("※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※\n");
fclose(fp);
n=i;
for(i=0;i<n;i++)
for(j=i+1;j<n;j++)
if(stu[i].ave<stu[j].ave)
{
t=stu[i];
stu[i]=stu[j];
stu[j]=t;
}
fp=fopen("fstus","wb");
printf("\n\n\n");
printf("※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※\n");
printf(" 成绩列表 \n");
printf("-----------------------------------------------------------\n");
printf("序号 学号 姓名 C成绩 数学 英语 平均\n");
printf("-----------------------------------------------------------\n");
for(i=0;i<n;i++)
{
fwrite(&stu[i],sizeof(struct student),1,fp);
printf("%d%8d%8s%8d%8d%8d%16.2f\n",stu[i].n,stu[i].num,stu[i].name,stu[i].C,stu[i].Maths,stu[i].En,stu[i].ave);
}
printf("※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※\n");
fclose(fp);
}
/*主函数*/
main()
{
int n;
for(;;)
{
printf("\n");
printf("※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※\n");
printf("※ ※\n");
printf("※ 欢迎来到学生信息管理系统 ※\n");
printf("※ ※\n");
printf("※ 系部:通信工程 专业:通信工程 ※\n");
printf("※ 姓名: 学号: ※\n");
printf("※ 班内序号: 指导老师: ※\n");
printf("※ ※\n");
printf("※ 主菜单 ※\n");
printf("※ ※\n");
printf("※ ▲1.录入数据▲ ※\n");
printf("※ ▲2.输出数据▲ ※\n");
printf("※ ▲3.查找数据▲ ※\n");
printf("※ ▲4.增加数据▲ ※\n");
printf("※ ▲5.修改数据▲ ※\n");
printf("※ ▲6.成绩排序▲ ※\n");
printf("※ ▲7.退出系统▲ ※\n");
printf("※ ※\n");
printf("※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※\n\n");
printf("请输入选择项(1-7):");
scanf("%d",&n);
printf("\n\n\n\n");
if(n>0&&n<8)
{
switch(n)
{
case 1:finput();break;
case 2:flist();break;
case 3:fsearch();break;
case 4:fadden();break;
case 5:fchange();break;
case 6:ftaxis();break;
case 7:printf("※※※※※※※※※※※※※※※※※※※※※※※※\n");
printf("※ ※\n");
printf("※ 谢谢使用! ※\n");
printf("※ 再见! ※\n");
printf("※ ※\n");
printf("※※※※※※※※※※※※※※※※※※※※※※※※\n");
exit(0);
}
}
else
{
printf("※※※※※※※※※※※※※※※※※※※※※※※※\n");
printf("※ ※\n");
printf("※ 输入错误! ※\n");
printf("※ 请退出! ※\n");
printf("※ ※\n");
printf("※※※※※※※※※※※※※※※※※※※※※※※※\n");
break;
}
}
}
网络管理与网络安全技术课程设计报告中小型网吧管理系统安全风险分析与设计班级学号指导老师设计人员目录12概述错误未定义书签网吧管理系…
网络安全与维护课程设计班级姓名学号基于认证的攻击设计报告一课程设计目的1熟悉使用端口扫描进行漏洞检测2掌握基于认证的攻击方法3掌握…
网络信息安全课程设计报告专业小组组长小组成员指导老师完成日期xxxxxxxx实验用纸目录第一部分课程设计准备11课程设计题目312…
中原工学院计算机学院网络安全程序课程设计报告题目基于des加密的聊天程序班级网络124班1目录第1章绪论311des加密背景312…
目录一概述1123课程设计的目的1课程设计的要求1课程设计环境1二总体方案设计1三详细设计11234OpenSSL的安装和编译1公…
网络安全方案设计实验报告班级10网工三班学生姓名谢昊天学号1215134046实验目的和要求1了解从网络安全工程的角度编写网络安全…
网络管理与网络安全技术课程设计报告中小型网吧管理系统安全风险分析与设计班级学号指导老师设计人员目录12概述错误未定义书签网吧管理系…
计算机网络与安全实践课程设计报告计算机学院实验室局域网建设方案专业计算机科学与技术专业班级小组成员指导教师谢林职称助理实验师中国矿…
目录摘要3前言4一课程设计目的意义6二需求分析61虚拟网62管理与维护63网络安全71防火墙技术72建立网络入侵侦测系统73反病毒…