2009年2月11日星期三

分清无线网卡和无线上网卡区别(转载)

无线网卡和无线上网卡有何不同?二者虽然仅仅相差一个字,但却是两个概念。为有不同上网需求的用户带来方便。很多初级用户常将这两种设备混为一谈,而一些商家在销售在宣传时有时也搞不清这两种设备,在介绍这类设备时常常将两种设备的功能混为一谈,如“我们的这种无线上网卡也能和其它无线网卡组成无线网络”,但肯定他们不是一种设备。 首先让我们来看看无线网卡和无线上网卡到底都有什么不同:
无线网卡:
无线网卡的作用、功能跟普通电脑网卡一样,是用来连接到局域网上的。它只是一个信号收发的设备,只有在找到上互联网的出口时才能实现与互联网的连接,所有无线网卡只能局限在已布有无线局域网的范围内。
无线网卡就是不通过有线连接,采用无线信号进行连接的网卡。无线网卡根据接口不同,主要有PCMCIA无线网卡、PCI无线网卡、MiniPCI无线网卡、USB无线网卡、CF/SD无线网卡几类产品。
从速度来看,无线上网卡现在主流的速率为54M和108M,该性能和环境有很大的关系。
54Mbps:其WLAN传输速度一般在16-30Mbps之间,换算成MB也就是每秒传输速度在2MB-4MB左右。取其中间值3MB,这样的速度要传输100MB的文件需要35秒左右,要传输1GB的文件,则需要至少4分钟以上。
108Mbps:其WLAN传输速度一般在24-50Mbps之间,换算成MB也就是每秒传输速度在3MB-6MB左右。取其中间值4.5MB,这样的速度要传输100MB的文件需要25秒左右,要传输1GB的文件,则需要至少2分半钟以上。
无线上网卡:
无线上网卡的作用、功能相当于有线的调制解调器,也就是我们俗称的“猫”。它可以在拥有无线电话信号覆盖的任何地方,利用手机的SIM卡来连接到互联网上。 无线上网卡的作用、功能就好比无线化了的调制解调器(MODEM)。其常见的接口类型也有PCMCIA、USB、CF/SD等接口类型。
从速度来看,无线上网卡主要分为GPRS和CDMA两种。其速度也会受到墙壁等各种障碍物,其它无线信号如手机、微波炉等的干扰。 GPRS的实际速度:基本和56Kbps的Modem速度持平。 CDMA的实际速度:达到153.6Kbps,是家里电话线上网的四倍左右。
无线网卡和无线上网卡的区别: 无线网卡和无线上网卡外观很象,但功用确大不一样。通过这一比较可见,二者虽然都可以实现无线上网功能,但其实现的方式和途径却大相径庭。 所有无线网卡只能局限在已布有无线局域网的范围内。如果要在无线局域网覆盖的范围以外,也就是通过无线广域网实现无线上网功能,电脑就要在拥有无线网卡的基础上,同时配置无线上网卡。 由于手机信号覆盖的地方远远大于无线局域网的环境,所有无线上网卡大大减少了对地域方面的依赖,对广大个人用户而言更加方便适用。所以说,无线网卡和无线上网卡虽然都能实现无线功能,但实现的方式和途径是完全不同的。
总 结: 无线网卡主要应用在无线局域网内用于局域网连接,要有无线路由或无线AP这样的接入设备才可以使用,而无线上网卡就象普通的56K MODEM一样用在手机信号可以覆盖的任何地方进行Internet接入,新手要注意区别。 注意:千万别瞎花钱买回来自己根本用不上的东东!

居然没通过Adsense

居然没通过Adsense,操,Google不肯告诉我为何没通过,算了,挣钱的事就先放一边了。

用Google Adsense赚钱

今天去注册了Adsense,据说就能根据点击率赚MONEY了,期待着......

2009年2月7日星期六

[C++]课程设计——学生信息管理

/////////////////////////////////////

// 学生信息管理系统 //

// 52computer //

// 2008年12月25日 //

///////////////////////////////////

#include<iostream>
#include<string>
#include<fstream>
#include<conio.h>
#include<windows.h>
using namespace
std;

/////////////////////////////////////

// 抽象基类 //

///////////////////////////////////
class Base
{
protected:
int id;//本科生,研究生识别
int num;
char name[20];
char sex[5];
double ch,en,ma;//成绩
int borth;

public:
Base();
virtual int getid()=0;//本科生,研究生识别
virtual void set()=0;//纯虚函数,在派生类中调用
virtual void display()=0;
double getsum();//取总成绩
char * getsex();//取性别
double getch();//取各科成绩
double geten();
double getma();
int getborth();
int getnum();//取学号
char* getname();//取姓名
};


Base::Base()//基类构造
{
num=0;
strcpy(name,"No name");
ch=0;en=0;ma=0;
borth=1900;
}

int Base::getborth()
{
return borth;}

double Base::getsum()
{
return ch+en+ma;}

double Base::getch()
{
return ch;}

double Base::geten()
{
return en;}

double Base::getma()
{
return ma;}

int Base::getnum()
{
return num;}

char *Base::getsex()
{
return sex;}

char * Base::getname()
{
return name;}


/////////////////////////////////////

// 本科生类 //

///////////////////////////////////
class College:public Base//本科生类
{
private:
int id;//本科生识别
char subject[20];//专业
public:
College();//College构造
int getid();//本科生识别
char* getsub();
void set();
void display();
friend ostream& operator<<(ostream&,const College&);
friend istream& operator>>(istream&,College&);
};
void College::set()
{
cout<<"输入本科生信息\n"<<"学号 姓名 性别(man/woman) 专业 三科成绩 出生年\n";
cin>>num>>name>>sex>>subject>>ch>>en>>ma>>borth;
}

College::College():Base()//College构造
{
id=0;
strcpy(subject,"Computer");
}

char*College::getsub()
{
return subject;}

int College::getid()
{
return id;}

void College::display()//打印
{
cout<<"\n本科生:\n"<<num<<" "<<name<<" "<<sex<<" "<<subject<<" "<<(ch+en+ma)/3<<" "<<(2008-borth)<<endl;
}

//本科生类中重载输入输出符
ostream& operator<<(ostream& out,const College& right)
{

out<<right.num<<" "<<right.name<<" "<<right.sex<<" "<<right.subject<<" "<<(right.ch+right.en+right.ma)/3<<" "<<(2008-right.borth)<<endl;
return out;
}

istream& operator>>(istream& in,College& right)
{

in>>right.num>>right.name>>right.sex>>right.subject>>right.ch>>right.en>>right.ma>>right.borth;
return in;
}

/////////////////////////////////////

// 研究生类 //

///////////////////////////////////
class Graduate:public Base
{
private:
int id;//研究生识别
char instruct[20];//导师
public:
Graduate();//Graduate构造
int getid();
void set();
void display();
char*getins();
friend ostream& operator<<(ostream&,const Graduate&);
friend istream& operator>>(istream&,Graduate&);
};

void Graduate::set()
{
cout<<"输入研究生信息\n"<<"学号 姓名 性别(man/woman) 导师 三科成绩 出生年\n";
cin>>num>>name>>sex>>instruct>>ch>>en>>ma>>borth;
}

int Graduate::getid()
{
return id;}

char*Graduate::getins()
{
return instruct;}

Graduate::Graduate():Base()
{
id=1;
strcpy(instruct,"Mir noname");
}

void Graduate::display()
{
cout<<"\n研究生:\n"<<num<<" "<<name<<" "<<sex<<" "<<instruct<<" "<<(ch+en+ma)/3<<" "<<(2008-borth)<<endl;
}
//研究生类中重载输入输出符
ostream& operator<<(ostream& out,const Graduate& right)
{
out<<right.num<<" "<<right.name<<" "<<right.sex<<" "<<right.instruct<<" "<<(right.ch+right.en+right.ma)/3<<" "<<(2008-right.borth)<<endl;
return out;
}

istream& operator>>(istream& in,Graduate& right)
{
in>>right.num>>right.name>>right.sex>>right.instruct>>right.ch>>right.en>>right.ma>>right.borth;
return in;
}

/////////////////////////////////////

// 主函数 //

///////////////////////////////////

int main()
{
int getin,j;//主菜单中接受选择
int c1,c2,c3,c4,c5,c6,c7,c8;//case中用来接收选择
Base * p[100];
int hao[100],htp;// case 8
int m,n;//case 8
double zong[100],ztp;//case 8
static int i=0;//静态,用来统计对象创建的个数

ofstream out("com.txt");
ifstream in("com.txt");

lab2:system("cls");
cout<<"\n\n\n";
cout<<" *----------学生信息管理系统----------*\n\n";
cout<<" 1.录入信息\n";
cout<<" 2.显示全部学生\n";
cout<<" 3.计算平均成绩\n";
cout<<" 4.删除一个学生\n";
cout<<" 5.按年级输出学生信息\n";
cout<<" 6.按性别输出学生信息\n";
cout<<" 7.按姓名检索学生\n";
cout<<" 8.按总分排序\n";
cout<<" 9.结束程序运行\n\n";
cout<<" *---------- 52computer -----------*\n";
cout<<"\n\n输入您的选择(1~8):";
cin>>getin;

switch(getin)
{
case 1://录入信息

lab1: system("cls");
cout<<"1.录入本科生信息"<<endl;
cout<<"2.录入研究生信息"<<endl;
cout<<"3.保存所有信息"<<endl;
cout<<"4.返回上一级菜单"<<endl;
cout<<"选择:";
cin>>c1;
cout<<endl;
switch(c1)
{

case 1:{
p[i]=new College;
p[i]->set();
i++;
goto lab1;
}

case 2:{
p[i]=new Graduate;
p[i]->set();
i++;
goto lab1;
}
case 3://输出文件

for(j=0;j<i;j++)
{
if(p[j]->getid()==1)
out<<p[j]->getnum()<<" "<<p[j]->getname()<<" "<<p[j]->getsex()<<" "<<p[j]->getch()<<" "<<p[j]->geten()<<" "<<p[j]->getma()<<" "<<2008-p[j]->getborth()<<endl;
if(p[j]->getid()==0)
out<<p[j]->getnum()<<" "<<p[j]->getname()<<" "<<p[j]->getsex()<<" "<<p[j]->getch()<<" "<<p[j]->geten()<<" "<<p[j]->getma()<<" "<<2008-p[j]->getborth()<<endl;
}
cout<<" 保存成功!";
goto lab1;


default:
goto lab2;
}
break;

case 2: //显示全部信息
system("cls");
cout<<"学生信息\n"<<"学号 姓名 性别(man/woman) 专业/导师 平均成绩 年龄\n";
for(j=0;j<i;j++)
{
p[j]->display();
//cout<<p[j]->display();
}
cout<<"\n\n输入任意数字返回主菜单:";
cin>>c2;
switch(c2)
{
case 1:case 2:case 3:default: goto lab2;
}
case 3://计算平均成绩
system("cls");
cout<<endl<<endl;
cout<<" ------计算平均成绩-----\n";
cout<<" 1. 语文平均成绩\n";
cout<<" 2. 英语平均成绩\n";
cout<<" 3. 数学平均成绩\n";
cout<<" -----------------------\n";
cout<<" 你的选择:";
cin>>c3;
switch(c3)
{
case 1:{

double sumy=0;
for(j=0;j<i;j++)
{
sumy=sumy+p[j]->getch();
}
cout<<"\n语文平均成绩:"<<(sumy/i)<<endl;
break;
}
case 2:{
double sume=0;
for(j=0;j<i;j++)
{
sume=sume+p[j]->getch();
}
cout<<"\n英语平均成绩:"<<(sume/i)<<endl;
break;
}
case 3:{
double summ=0;
for(j=0;j<i;j++)
{
summ=summ+p[j]->getch();
}
cout<<"\n数学平均成绩:"<<(summ/i)<<endl;
break;
}
default :
goto lab2;
}
cout<<"\n\n输入任意数字返回主菜单:";
cin>>c3;
switch(c3)
{
case 1:case 2:case 3:default: goto lab2;

}

case 4://删除一个学生
system("cls");
cout<<endl<<endl;
cout<<" ------删除一个学生-----\n";
cout<<" 1. 按学号删除\n";
cout<<" 2. 按姓名删除\n";
cout<<" 3. 返回上级\n";
cout<<" -----------------------\n";
cout<<" 你的选择:";
cin>>c4;
switch(c4)
{
case 1:
int xuehao;
cout<<"输入学生的学号:";
cin>>xuehao;
for(j=0;j<i;j++)
{
if(p[j]->getnum()==xuehao)
{
for(int del=j;del<i;del++)
p[del]=p[del+1];
i--;
}
}
cout<<" \n成功删除.......!\n";
cout<<"\n\n输入任意数字返回主菜单:";
cin>>c3;
switch(c3)
{
case 1:case 2:case 3:default: goto lab2;

}

case 2:
char ming[20];
cout<<"输入学生的姓名:";
cin>>ming;
for(j=0;j<i;j++)
{
if(strcmp(p[j]->getname(),ming)==0)
{
for(int del=j;del<i;del++)
p[del]=p[del+1];
i--;
}
}
cout<<" \n成功删除........!\n";
cout<<"\n\n输入任意数字返回主菜单:";
cin>>c3;
switch(c3)
{
case 1:case 2:case 3:default: goto lab2;

}
default:goto lab2;
}
case 5: ////按年级输出学生信息////
system("cls");
cout<<"\n\n\n";
cout<<" ---------按年级输出学生信息---------\n";
cout<<" 1.按本科生输出学生信息\n";
cout<<" 2.按研究生输出学生信息\n";
cout<<" ------------------------------------\n";
cout<<" 你的选择:";
cin>>c5;
switch(c5)
{
case 1:
cout<<"学号 姓名 性别 专业 平均成绩 年龄\n";
for(j=0;j<i;j++)
{
if(p[j]->getid()==0)
p[j]->display();
}
cout<<"\n输入任意数字返回主菜单:";
cin>>c5;
switch(c5)
{
case 1:case 2:case 3:default: goto lab2;
}
case 2:
cout<<"学号 姓名 性别 导师 平均成绩 年龄\n";
for(j=0;j<i;j++)
{
if(p[j]->getid()==1)
p[j]->display();
}
cout<<"\n输入任意数字返回主菜单:";
cin>>c5;
switch(c5)
{
case 1:case 2:case 3:default: goto lab2;
}
default:
cout<<"\n输入错误!\n";
break;
cout<<"\n输入任意数字返回主菜单:";
cin>>c5;
switch(c5)
{
case 1:case 2:case 3:default: goto lab2;
}
}
case 6://按性别输出学生信息
system("cls");
cout<<endl<<endl;
cout<<" --------按性别输出学生信息-------\n";
cout<<" 1.显示全部女生\n";
cout<<" 2.显示全部男生\n";
cout<<" ---------------------------------\n";
cout<<" 你的选择:";
cin>>c6;
if(c6==1)
{
for(j=0;j<i;j++)
{
if(strcmp(p[j]->getsex(),"man"))
p[j]->display();
}
}
else if(c6==2)
for(j=0;j<i;j++)
{
if(strcmp(p[j]->getsex(),"woman"))
p[j]->display();
}
else
cout<<"\n\n Error!\n";
cout<<"\n\n输入任意数字返回主菜单:";
cin>>c6;
switch(c6)
{
case 1:case 2:case 3:default: goto lab2;

}


case 7://按姓名检索学生
system("cls");
cout<<"\n\n\n\n\n\n";
char xingm[20];
cout<<"输入学生的姓名:";
cin>>xingm;
for(j=0;j<i;j++)
{
if(strcmp(p[j]->getname(),xingm)==0)
{
p[j]->display();
}
}
cout<<"\n\n输入任意数字返回主菜单:";
cin>>c7;
switch(c7)
{
case 1:case 2:case 3:default: goto lab2;

}
case 8://按总分排序


for(int ci=0;ci<i;ci++)
{
hao[ci]=p[ci]->getnum();
zong[ci]=p[ci]->getsum();
}

for(n=0;n<i;n++)
{
for(m=n+1;m<i;m++)
{
if(zong[n]>zong[m])
{
htp=hao[m];
hao[m]=hao[n];
hao[n]=htp;
ztp=zong[m];
zong[m]=zong[n];
zong[n]=ztp;
}
}
}
system("cls");
cout<<endl<<endl;
cout<<" ---------按总分排序--------\n";
cout<<" 学生学号 总分\n";
for(j=0;j<i;j++)
{
cout<<" "<<hao[j]<<" "<<zong[j]<<endl;
}

cout<<"\n\n输入任意数字返回主菜单:";
cin>>c8;
switch(c8)
{
case 1:case 2:case 3:default: goto lab2;

}


}
//switch end !

for(j=0;j<i;j++)//释放内存空间
delete p[j];


/* 测试输入输出<<,>>重载
College d;
Graduate g;
cout<<"输入本科生信息\n"<<"学号 姓名 专业 三科成绩 出生年\n";
cin>>d;
cout<<"学号 姓名 专业 平均成绩 年龄\n";
cout<<d;
cout<<"输入研究生信息\n"<<"学号 姓名 导师 三科成绩 出生年\n";
cin>>g;
cout<<"学号 姓名 导师 平均成绩 年龄\n";
cout<<g;
*/



return 0;

}
// main end !























关注者