- 博客(1)
- 资源 (17)
- 收藏
- 关注
转载 nio 原理
说明:nio理论及例子,了解nio的可以跳过本文看Hadoop的rpc实现,建议新手看看 一、阻塞式BIO的缺点: 前面自己实现了一个阻塞式BIO服务,采 用BIO通信模型的服务端,通常由一个独立的Acceptor线程负责监听客户端的连接,接收到客户端连接之后为客户端连接创建一个新的线程处理请求消 息,处理完成之后,返回应答消息给客户端,线程销毁,这就是典型的一请求一应答模型。该架构最大的问题
2016-11-02 10:18:36 494
C语言学生管理系统
#include
#include
#include
int INDEX[32];
//结构体变量
struct STUDENT{
int id;
int age;
int chinese,math,english;
char name[21];
}students[32];
void page_title(char *menu_item){
printf(">>> 学 生 管 理 系 统 <<<\n\n- %s -\n\n",menu_item);
}//
void return_confirm(void){
printf("\n按任意键返回……\n");
getch();
}//
void student_new(void){
int n;
page_title("录入学生基本信息");
for(n=0;n<32;n++)
if(students[n].id==0) break;
printf("学号:");
scanf("%d",&students[n].id);
printf("姓名:");
scanf("%s",&students[n].name);
printf("年龄:");
scanf("%d",&students[n].age);
return_confirm();
}//①
int search_id(void){
int n,i;
printf("请输入学生学号:");
scanf("%d",&i);
for(n=0;n<32;n++)
{
if(students[n].id==i&&students[n].id!=0)
{
printf("学号:%d\n",students[n].id);
printf("姓名:%s\n",students[n].name);
printf("年龄:%d\n",students[n].age);
return n;
}
}
printf("\n输入错误或学号不存在.\n");
return -1;
}//
void student_del(void){
int n;
page_title("注销学生基本信息");
if((n=search_id())!=-1) students[n].id=0;
printf("\n!该学生已注销.\n");
return_confirm();
}//③
void student_edit(void){
int n;
page_title("编辑学生基本信息");
if((n=search_id())!=-1)
{
printf("\n请重新输入新信息:\n学号:");
scanf("%d",&students[n].id);
printf("姓名:");
scanf("%s",&students[n].name);
printf("年龄:");
scanf("%d",&students[n].age);
}
return_confirm();
}//②
2013-11-26
线性表的基本操作,插入删除,输出线性表内容,输出两个线性表的相同元素
线性表的基本操作,插入删除,输出线性表内容,输出两个线性表的相同元素,判空,判满,查找指定位置元素,查找指定元素位置,线性表的初始化
2013-09-24
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人