图书管理系统C语言_c语言图书信息管理系统

图书管理系统C语言_c语言图书信息管理系统【主要内容】开发一个图书信息管理系统,图书信息包括:图书编号、书名、作者、出版社、类别、出版时间、价格等基本信息(也可以根据自己情况进行扩充,比如是否借出、库存量等)。使之能提供以下基本功能:(1)图书信息录入功能(图书信息用文件保存)--输入(2)图书信息浏览功能--输出(3)查询功能(至少一种查询方式)、排序功能(至少一种排序方式):①按书名查询②按作者名查询按照价钱排序按出版时间排序等等(4)图书信息的删除与修改扩展功能:可以按照自己的程度进行扩展。比如(1)简…

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE稳定放心使用

 

【主要内容】

开发一个图书信息管理系统,图书信息包括:图书编号、书名、作者、出版社、类别、出版时间、价格等基本信息(也可以根据自己情况进行扩充,比如是否借出、库存量等)。使之能提供以下基本功能:

(1)图书信息录入功能(图书信息用文件保存)--输入

(2)图书信息浏览功能--输出

(3)查询功能(至少一种查询方式)、排序功能(至少一种排序方式):

①按书名查询 ②按作者名查询 按照价钱排序 按出版时间排序等等

(4)图书信息的删除与修改

扩展功能:可以按照自己的程度进行扩展。比如(1)简单的权限处理 (2)报表打印功能(3)甚至根据自己情况,可以加上学生信息,并扩充为图书借阅系统。(4)模糊查询 (5)综合查询 (6)统计功能 比如统计处某一类别的图书信息 或 筛选出小于指定数量库存的图书信息等等。

【概要设计】

1 图书录入可以录入图书名,作者,出版社,出版日期,价格!录入图书编号时函数就会判断此编号是否存在,若存在不能成功录入!

2 图书浏览可以浏览全部图书!

3 图书查询提供按图书编号模糊查询,按图书名关键字查询,按图书编号精确查询,按图书名精确查询!模糊查询和关键字查询事通过比价字符串的相似度而实现的!

4 修改删除图书可以通过图书查询来查询操作的图书编号,通过编号操作!函数会提示用户是否调用图书查询来找到自己想要操作的图书的编号。如果某一本图书已经被借阅那么用户就不能删除该图书!

5 借阅图书通过学号和图书编号进行借阅!如果该学号是第一次借阅那么会提示用户输入自己的姓名,并存入student.txt,方便以后借阅与归还!

6 归还图书先提供学号,然后程序会输出该学号借阅的所有图书,然后再通过编号归还!

7 借阅查询可查询某个学生已借但未归还的图书!

 

【代码如下】(运行结果省略)

 

#include<stdio.h>
#include<stdlib.h>
#include<string.h>	
FILE *fp,*fpj,*fps;
int i,xuan;
typedef struct book{
	char name[10];
	char num[10];
	char writer[10];
	int date;
	char press[10];
	float price;
	char leibie[10];
	int kucun;
	int jiechu;
}bo;
typedef struct student{
	char name[10];
	char num[10];
	int jie;
}st;
typedef struct jieyue{
	char snum[10];
	char bnum[10];
}ji;
void menu()//菜单
{
	printf("\n\n");
	for(i=0;i<80;i++)
		printf("#");
	printf("\n\n");	
	printf("\t\t1-----图书录入\t\t\t");
	printf("2-----图书浏览\n\n");
	printf("\t\t3-----图书查询\t\t\t");
	printf("4-----修改删除图书\n\n");
	printf("\t\t5-----借阅图书\t\t\t");
	printf("6-----归还图书\n\n");
	printf("\t\t7-----借阅查询\t\t\t\n");
	printf("\n\t\t\t\t输入其他任意键退出\n");
	printf("\n\n");
	for(i=0;i<80;i++)
		printf("#");
	printf("\n\n");
}
void end()//录入图书
{
	bo boo,booq;
	printf("请输入图书名(最多十个字符):");
	scanf("%s",boo.name);
	do{
		i=1;
		printf("请输入图书编号(最多十个字符):");
		scanf("%s",boo.num);
		fread(&booq,sizeof(bo),1,fp);
		while(!feof(fp)){
			if(strcmp(booq.num,boo.num)==0){
				printf("\n该编号已存在请重新输入\n\n");
				i=0;
				break;
			}
			fread(&booq,sizeof(bo),1,fp);
		}
		rewind(fp);
	}while(i==0);
	printf("请输入图书作者(最多十个字符):");
	scanf("%s",boo.writer);
	printf("请输入图书出版日期(例如2001年5月3日出版则输入20010503):");
	scanf("%d",&boo.date);
	printf("请输入图书价格:");
	scanf("%f",&boo.price);
	printf("请输入图书出版社(最多十个字符):");
	scanf("%s",boo.press);
	printf("请输入图书类别(最多十个字符):");
	scanf("%s",boo.leibie);
	printf("请输入图书入库数:");
	scanf("%d",&boo.kucun);
	boo.jiechu=0;
	getchar();
	fseek(fp,0,2);
	fwrite(&boo,sizeof(bo),1,fp);
	printf("\n录入成功!回到主菜单");
	system("pause");
}
void print()//浏览图书
{
	bo boo;
	printf("书名      编号      作者      价格      出版社    类别      原始库存  借出\n");
	fread(&boo,sizeof(bo),1,fp);
	while(feof(fp)==0){
		printf("%-10s%-10s%-10s%-10.2f%-10s%-10s%-10d%-4d\n",boo.name,boo.num,boo.writer,boo.price,boo.press,boo.leibie,boo.kucun,boo.jiechu);
		fread(&boo,sizeof(bo),1,fp);
		}
	printf("\n浏览图书完毕!回到主菜单");
	system("pause");
}
int dui(char *p,char *p1)//对比两个字符串的相关度(用于精确搜索)
{
	int bao=0,fan=1;
	for(i=0;i<(int)strlen(p1);i++){
		if(p[0]==p1[i]){
			bao=i;
			break;
		}
	}
	if((int)strlen(p)>(int)strlen(p1)-bao+1)
		return 0;
	else
		for(i=0;i<(int)strlen(p);i++){
			if(p[i]!=p1[bao+i])
				fan=0;
		}
		return fan;
}
void find()//查询图书
{
	char hao[10];
	int fan=1;
	int bian=1;
	bo boo;
	printf("请选择查询类型:\n\n\t\t1-按图书编号模糊查询     2-按图书名关键字查询\n");
	printf("                \n\t\t3-按图书编号精确查询     4-按图书名精确查询\n\n代码:");
	scanf("%d",&xuan);
	if(xuan==1){
		printf("请输入编号(最多十个字符):");
		scanf("%s",hao);
		printf("序号 书名      编号      作者      价格      出版社    类别      原始库存  借出\n");
		fread(&boo,sizeof(bo),1,fp);
		while(!feof(fp)){
			fan=dui(hao,boo.num);
			if(fan==1){
				printf("%-5d%-10s%-10s%-10s%-10.2f%-10s%-10s%-10d%-4d\n",bian,boo.name,boo.num,boo.writer,boo.price,boo.press,boo.leibie,boo.kucun,boo.jiechu);
				bian++;}
			fread(&boo,sizeof(bo),1,fp);
		}
	}
	else if(xuan==2){
		printf("请输入图书名关键字(最多十个字符):");
		scanf("%s",hao);
		printf("序号 书名      编号      作者      价格      出版社    类别      原始库存  借出\n");
		fread(&boo,sizeof(bo),1,fp);
		while(!feof(fp)){
			fan=dui(hao,boo.name);
			if(fan==1)
				printf("%-5d%-10s%-10s%-10s%-10.2f%-10s%-10s%-10d%-4d\n",bian,boo.name,boo.num,boo.writer,boo.price,boo.press,boo.leibie,boo.kucun,boo.jiechu);
			fread(&boo,sizeof(bo),1,fp);
		}
	}
	else if(xuan==4){
		printf("请输入图书名(最多十个字符):");
		scanf("%s",hao);
		printf("序号 书名      编号      作者      价格      出版社    类别      原始库存  借出\n");
		while(!feof(fp)){
			if(strcmp(hao,boo.name)==0)
				printf("%-5d%-10s%-10s%-10s%-10.2f%-10s%-10s%-10d%-4d\n",bian,boo.name,boo.num,boo.writer,boo.price,boo.press,boo.leibie,boo.kucun,boo.jiechu);
			fread(&boo,sizeof(bo),1,fp);
		}

	}
	else if(xuan==3){
		printf("请输入图书编号(最多十个字符):");
		scanf("%s",hao);
		printf("序号 书名      编号      作者      价格      出版社    类别      原始库存  借出\n");
		while(!feof(fp)){
			if(strcmp(hao,boo.num)==0)
				printf("%-5d%-10s%-10s%-10s%-10.2f%-10s%-10s%-10d%-4d\n",bian,boo.name,boo.num,boo.writer,boo.price,boo.press,boo.leibie,boo.kucun,boo.jiechu);
			fread(&boo,sizeof(bo),1,fp);
		}

	}
	else{
		printf("输入错误,正在退出!");
		system("pause");
		return;
	}
	printf("\n查询图书完毕! ");
	system("pause");
}
void del()//修改删除图书
{
	FILE *p;
	ji jie;
	int j=0;
	char num[10];
	bo boo,booq;
	int xu;
	char or;
	char cha[10];
	printf("\n删除修改图书只能通过图书编号来完成!\n是否调用图书查询来查询你要操作的图书编号(Y/N)\n");
	getchar();
	scanf("%c",&or);
	if(or=='Y'||or=='y'){
		find();
		rewind(fp);}
	printf("\n请输入你要操作的图书的编号(如果输入错误的编号,将不做任何操作):");
	scanf("%s",cha);
	fread(&jie,sizeof(ji),1,fpj);
	while(!feof(fpj)){
		if(strcmp(jie.bnum,cha)==0){
			printf("\n这本书已有人借阅,不能操作!\n正在退出 ");
			system("pause");
			return;
		}
		fread(&jie,sizeof(ji),1,fpj);
	}
	printf("\n\n1-删除图书   2-修改图书\n\n");
	printf("请选择操作类型:");
	scanf("%d",&xuan);
	fread(&boo,sizeof(bo),1,fp);
	p=fopen("c:\\books1.txt","wb+");
	while(!feof(fp)){
		j++;
		if(strcmp(boo.num,cha)==0){	
			if(xuan==2){			
				printf("\n\n1-书名    2-编号    3-作者    4-价格    5-出版社   6-类别    7-库存\n\n");
				printf("请选择要修改的项目:");
				scanf("%d",&xu);
				if(xu==1){
					printf("你要把%s改为:",boo.name);
					scanf("%s",boo.name);}
				else if(xu==2){
					do{
						i=1;
						printf("你要把%s改为:",boo.num);
						scanf("%s",num);
						rewind(fp);
						fread(&booq,sizeof(bo),1,fp);
						while(!feof(fp)){
							if(strcmp(booq.num,num)==0){
								printf("\n该编号已存在请重新输入\n\n");
								i=0;
								break;
							}
							fread(&booq,sizeof(bo),1,fp);
						}
					}while(i==0);
						rewind(fp);
					for(i=0;i<j;i++){
						fread(&boo,sizeof(bo),1,fp);
						strcpy(boo.num,num);
					}
				}
				else if(xu==3){
					printf("你要把%s改为:",boo.writer);
					scanf("%s",boo.writer);}
				else if(xu==4){
					printf("你要把%.2f改为:",boo.price);
					scanf("%f",&boo.price);}
				else if(xu==5){
					printf("你要把%s改为:",boo.press);
					scanf("%s",boo.press);}
				else if(xu==6){
					printf("你要把%s改为:",boo.leibie);
					scanf("%s",boo.leibie);}
				else if(xu==7){
					printf("你要把%d改为:",&boo.kucun);
					scanf("%d",&boo.kucun);}
				fwrite(&boo,sizeof(bo),1,p);
			}
		}
		else
			fwrite(&boo,sizeof(bo),1,p);
		fread(&boo,sizeof(bo),1,fp);
	}
	fclose(p);
	p=fopen("c:\\books1.txt","rb+");
	fclose(fp);
	fp=fopen("c:\\book.txt","wb+");
	fread(&boo,sizeof(bo),1,p);
	while(!feof(p)){
		fwrite(&boo,sizeof(bo),1,fp);
		fread(&boo,sizeof(bo),1,p);	
	}
	fclose(fp);
	printf("操作成功   回到主菜单");
	system("pause");
}
void lend()//借阅图书
{
	bo boo;
	FILE *p;
	st stu;
	ji jie;
	int j=0;
	char or,num[10],xnum[10];
	printf("\n借阅图书只能通过图书编号完成!\n是否调用图书查询来查询你要操作的图书编号(Y/N)\n");
	getchar();
	scanf("%c",&or);
	if(or=='Y'||or=='y')
		find();
	printf("\n请输入你要借阅的图书的编号:");
	scanf("%s",num);
	fread(&boo,sizeof(bo),1,fp);
	while(!feof(fp)){
		if(strcmp(num,boo.num)==0){
			j=1;
			break;		
		}
		fread(&boo,sizeof(bo),1,fp);
	}
	if(j==0){
		printf("\n书库没有该图书 正在退出\n");
		system("pause");
		return;
	}
	printf("\n你需要借阅的图书是:\n");
	printf("书名      编号      作者      价格      出版社    类别      原始库存  借出\n");
	printf("%-10s%-10s%-10s%-10.2f%-10s%-10s%-10d%-4d\n",boo.name,boo.num,boo.writer,boo.price,boo.press,boo.leibie,boo.kucun,boo.jiechu);
	if(boo.kucun==boo.jiechu){
		printf("\n该册图书已全部借出!正在退出\n");
		system("pause");
		return;
	}
	printf("\n请输入你的学号:");
	scanf("%s",xnum);
	j=0;
	fread(&jie,sizeof(ji),1,fpj);
	while(!feof(fpj)){
		if((strcmp(jie.bnum,num)==0)&&(strcmp(jie.snum,xnum)==0)){
			j=1;
			break;		
		}
		fread(&jie,sizeof(ji),1,fpj);
	}
	if(j==1){
		printf("\n你已经借阅过该书  正在退出\n");
		system("pause");
		return;
	}
	fread(&stu,sizeof(st),1,fps);
	j=0;
	while(!feof(fps)){
		if(strcmp(xnum,stu.num)==0){
			j=1;
			break;
		}
		fread(&stu,sizeof(st),1,fps);
	}
	if(j==0){
		printf("\n你是第一次借阅图书,为了方便管理请输入你的姓名:");
		scanf("%s",stu.name);
		strcpy(stu.num,xnum);
		stu.jie=1;
		fseek(fps,0,2);
		fwrite(&stu,sizeof(st),1,fps);
	}
	else{
		if(stu.jie==5){//这里可以控制每个学生最多借几本书
			printf("\n你已经借了5本书,不能再借\n");
			system("pause");
			return;}
		p=fopen("c:\\jie.txt","wb+");
		rewind(fps);
		fread(&stu,sizeof(st),1,fps);
		while(!feof(fps)){
			if(strcmp(xnum,stu.num)==0)
				stu.jie++;
		fwrite(&stu,sizeof(st),1,p);
		fread(&stu,sizeof(st),1,fps);
		}
		fclose(p);
		fclose(fps);	
		p=fopen("c:\\jie.txt","rb+");
		fps=fopen("c:\\student.txt","wb+");
		fread(&stu,sizeof(st),1,p);
		while(!feof(p)){
			fwrite(&stu,sizeof(st),1,fps);
			fread(&stu,sizeof(st),1,p);	
		}
	}
	strcpy(jie.bnum,num);
	strcpy(jie.snum,xnum);
	fseek(fpj,0,2);
	fwrite(&jie,sizeof(ji),1,fpj);
	rewind(fp);
	p=fopen("c:\\jie.txt","wb+");
	fread(&boo,sizeof(bo),1,fp);
	while(!feof(fp)){
		if(strcmp(num,boo.num)==0)
			boo.jiechu++;
		fwrite(&boo,sizeof(bo),1,p);
		fread(&boo,sizeof(bo),1,fp);
	}
	fclose(p);
	p=fopen("c:\\jie.txt","rb+");
	fclose(fp);
	fp=fopen("c:\\book.txt","wb+");
	fread(&boo,sizeof(bo),1,p);
	while(!feof(p)){
		fwrite(&boo,sizeof(bo),1,fp);
		fread(&boo,sizeof(bo),1,p);	
	}
	printf("\n借阅成功!回到主菜单");
	system("pause");
}

void huan(){//归还图书
	FILE *p;
	bo boo;
	ji jie;
	st stu;
	int j=0;
	char snum[10],bnum[10];
	i=0;
	printf("\n请输入你的学号:");
	scanf("%s",snum);
	printf("\n你借阅了以下图书\n");
	fread(&jie,sizeof(ji),1,fpj);
	printf("书名      编号      作者      价格      出版社    类别      原始库存  借出\n");
	while(!feof(fpj)){
		if(strcmp(jie.snum,snum)==0){
			fread(&boo,sizeof(bo),1,fp);
			while(!feof(fp)){
				if(strcmp(jie.bnum,boo.num)==0){
					printf("%-10s%-10s%-10s%-10.2f%-10s%-10s%-10d%-4d\n",boo.name,boo.num,boo.writer,boo.price,boo.press,boo.leibie,boo.kucun,boo.jiechu);
					j=1;
				}
				fread(&boo,sizeof(bo),1,fp);
			}
		}
		fread(&jie,sizeof(ji),1,fpj);
	}
	if(j==0){
		printf("\n你没有借阅任何图书!\n\n正在退出");
		system("pause");
		return;
	}
	rewind(fp);
	rewind(fpj);
	printf("\n请输入你归还的图书的编号:");
	scanf("%s",bnum);
	fread(&jie,sizeof(jie),1,fpj);//改变jieyue.txt里的数据
	p=fopen("c:\\jie.txt","wb+");
	while(!feof(fpj)){
		if((strcmp(jie.bnum,bnum)==0)&&(strcmp(jie.snum,snum)==0))
			i=1;
		else 
			fwrite(&jie,sizeof(jie),1,p);
		fread(&jie,sizeof(jie),1,fpj);
	}
	if(i==0){
		printf("\n你没有借过该图书\n正在退出");
		system("pause");
		return;
	}
	fclose(p);
	fclose(fpj);	
	p=fopen("c:\\jie.txt","rb+");
	fpj=fopen("c:\\jieyue.txt","wb+");
	fread(&jie,sizeof(ji),1,p);
	while(!feof(p)){
		fwrite(&jie,sizeof(ji),1,fpj);
		fread(&jie,sizeof(ji),1,p);	
	}
	fclose(p);//改变book.txt里的数据
	p=fopen("c:\\jie.txt","wb+");
	fread(&boo,sizeof(bo),1,fp);
	while(!feof(fp)){
		if(strcmp(bnum,boo.num)==0)
			boo.jiechu--;
		fwrite(&boo,sizeof(bo),1,p);
		fread(&boo,sizeof(bo),1,fp);
	}
	fclose(p);
	p=fopen("c:\\jie.txt","rb+");
	fclose(fp);
	fp=fopen("c:\\book.txt","wb+");
	fread(&boo,sizeof(bo),1,p);
	while(!feof(p)){
		fwrite(&boo,sizeof(bo),1,fp);
		fread(&boo,sizeof(bo),1,p);	
	}
	fclose(p);//改变student.txt里的数据
	p=fopen("c:\\jie.txt","wb+");
	rewind(fps);
	fread(&stu,sizeof(st),1,fps);
	while(!feof(fps)){
		if(strcmp(snum,stu.num)==0)
			stu.jie--;
		fwrite(&stu,sizeof(st),1,p);
		fread(&stu,sizeof(st),1,fps);
	}
	fclose(p);
	fclose(fps);	
	p=fopen("c:\\jie.txt","rb+");
	fps=fopen("c:\\student.txt","wb+");
	fread(&stu,sizeof(st),1,p);
	while(!feof(p)){
		fwrite(&stu,sizeof(st),1,fps);
		fread(&stu,sizeof(st),1,p);	
	}
	printf("\n归还成功!回到主菜单");
	system("pause");
}
void cha(){//借阅查询
	char num[10];
	bo boo;
	ji jie;
	printf("\n请输入你的学号:");
	scanf("%s",num);
	fread(&jie,sizeof(ji),1,fpj);
	printf("书名      编号      作者      价格      出版社    类别      原始库存  借出\n");
	while(!feof(fpj)){
		if(strcmp(jie.snum,num)==0){
			fread(&boo,sizeof(bo),1,fp);
			while(!feof(fp)){
				if(strcmp(jie.bnum,boo.num)==0)
					printf("%-10s%-10s%-10s%-10.2f%-10s%-10s%-10d%-4d\n",boo.name,boo.num,boo.writer,boo.price,boo.press,boo.leibie,boo.kucun,boo.jiechu);
				fread(&boo,sizeof(bo),1,fp);
			}
		}
		fread(&jie,sizeof(ji),1,fpj);
	}
	printf("\n查询完毕!回到主菜单");
	system("pause");
}
main(){
	if((fp=fopen("c:\\book.txt","rb+"))==NULL){
		printf("在c盘根目录下没有找到储存图书信息的book.txt文件\n请选择  1--手动导入!  2--创建此文件\n");
		scanf("%d",&xuan);
		switch(xuan){
		case 2:if((fp=fopen("c:\\book.txt","wb+"))!=NULL)
				   printf("创建成功\n\n");
			break;
		case 1:printf("请把名为book.txt的文件复制到c盘根目录下\n\n");
		}
	}
	if((fpj=fopen("c:\\jieyue.txt","rb+"))==NULL){
		printf("在c盘根目录下没有找到储存借阅信息的jieyue.txt文件\n请选择  1--手动导入!  2--创建此文件\n");
		scanf("%d",&xuan);
		switch(xuan){
		case 2:if((fpj=fopen("c:\\jieyue.txt","wb+"))!=NULL)
				   printf("创建成功\n\n");
			break;
		case 1:printf("请把名为jieyue.txt的文件复制到c盘根目录下\n\n");
		}
	}
	if((fps=fopen("c:\\student.txt","rb+"))==NULL){
		printf("在c盘根目录下没有找到储存学生信息的student.txt文件\n请选择  1--手动导入!  2--创建此文件\n");
		scanf("%d",&xuan);
		switch(xuan){
		case 2:if((fps=fopen("c:\\student.txt","wb+"))!=NULL)
				   printf("创建成功\n\n");
			break;
		case 1:printf("请把名为student.txt的文件复制到c盘根目录下\n\n");
		}
	}
	menu();
	printf("\n  代码:");
	scanf("%d",&xuan);		
	while(xuan==1||xuan==2||xuan==3||xuan==4||xuan==5||xuan==6||xuan==7){
		fp=fopen("c:\\book.txt","rb+");
		fps=fopen("c:\\student.txt","rb+");
		fpj=fopen("c:\\jieyue.txt","rb+");
		switch(xuan){
		case 0:break;
		case 1:end();break;
		case 2:print();break;
		case 3:find();break;
		case 4:del();break;
		case 5:lend();break;
		case 6:huan();break;
		case 7:cha();break;
		}
		fclose(fp);
		fclose(fpj);
		fclose(fps);
		menu();
	printf("\n  代码:");
	scanf("%d",&xuan);
	}

}

 

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/183111.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)


相关推荐

  • sdn和nfv是什么_他她它怎么区分

    sdn和nfv是什么_他她它怎么区分那到底什么是NFV(网络功能虚拟化),它和之前的SDN(Software-definedNetworking)软件定义网络概念是一回事吗?它们有什么区别?SDN-诞生于校园,成熟于数据中心:SDN初始于园区网络,一群研究者(斯坦福的达人们)在进行科研时发现,每次进行新的协议部署尝试时,都需要改变网络设备的软件,这让他们非常郁闷,于是乎,他们开始考虑让这些网络硬件设备可编程化,并且可以被集中的一个盒子所管理和控制,就这样,诞生了当今SDN的基本定义和元素·分离控制和转发的功能·

  • 编译安装httpd apache服务器

    编译安装httpd apache服务器

  • java全局变量的定义和声明_定义全局变量的方法

    java全局变量的定义和声明_定义全局变量的方法JAVA全局变量(或称成员变量)可分两种,一种是静态变量,另一种是实例变量,即在类体中定义的变量,有三点得注意:一、成员变量不能在类体中先声明(定义)后赋值,但静态变量可以先在类体中声明,然后在方法中赋值(当然实例变量是不行的);1)如以下程序会出问题:publicclassTest{staticinta;//在类体中声明整型静态变量a。intb;

  • charles乱码怎么解决_抓包精灵乱码

    charles乱码怎么解决_抓包精灵乱码前言当使用Charles抓包时,发现数据都是乱码,这时需要安装证书解决办法1.点击charles窗口,点击左上角Help->SSLProxying→InstallCharles

  • python语言合法变量命名规则_下列不符合Python语言变量命名规则的是??????????????????????????????????????????????????????????????…[通俗易懂]

    python语言合法变量命名规则_下列不符合Python语言变量命名规则的是??????????????????????????????????????????????????????????????…[通俗易懂]下列不符合Python语言变量命名规则的是????????????????????????????????????????????????????????????????????????????????答:3_1已经声明了一个局部变量@n,在下列语句中,能对该变量正确赋值的是(??)答:SELECT?@n=’HELLO’婴儿动作的发展相对落后感觉的发展答:正确下列哪些是昆虫的附肢(?)答:触角…

  • Python删除文件到回收站

    Python删除文件到回收站利用activepython里面的shell模块可以完成删除到回收站的操作,如下:fromwin32com.shellimportshell,shellcondefdeltorecyclebin(filename):   shell.SHFileOperation((0,shellcon.FO_DELETE,filename,None,/      shellc

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号