当前位置:首页 > 散列表建立的通讯录代码
} ptr = tr; tr = tr ->next; }
if(bo == true ) { cout<<\姓名: \电话号码: \ <<\地址: \ cout<<\修改信息请按1,删除请按2,否则请按 0\\n\ inti = 0; cin>>i; if(i == 1) { stringna,nu,ad;
cout<<\姓名: \cin>>na;
cout<<\电话号码: \ cin>>nu; cout<<\地址: \ cin>>ad; Data us(nu,na,ad); del1(tr ->use.name ); if(ptr != NULL ) { ptr ->next = tr ->next ; deletetr; } else { hNum.hashPhone[j] = tr ->next; deletetr; } add( us); save(); }
else if(i == 2) { del1(tr ->use.name ); if(ptr != NULL ) { ptr ->next = tr ->next ; deletetr; } else
} } else {
{ hNum.hashPhone[j] = tr ->next; deletetr; }
hNum.count--; save();
cout<<\无此用户\ } }
void Man::del1( string de ) { int k1 = h1( de ); Man::node tr = hNam.hashName[k1] ,te; while(tr != NULL ) { if( de == tr ->use.name ) { if(tr == hNam.hashName[k1] ) { hNam.hashName[k1] = hNam.hashName[k1] ->next; deletetr; } else { te ->next = tr ->next; deletetr; } break; } te = tr; tr = tr ->next; } hNam.count--; }
void Man::del2( string de ) { int k2 = h2( de ); Man::node tr = hNum.hashPhone[k2] ,te; while(tr != NULL )
{ if( de == tr ->use.num ) { if(tr == hNum.hashPhone[k2] ) { hNum.hashPhone[k2] = hNum.hashPhone[k2] ->next; deletetr; } else { te ->next = tr ->next; deletetr; } break; } te = tr; tr = tr ->next; } hNum.count--; }
void Man::display() { cout<<\姓名\\t\电话号码\\t\地址\ for(inti = 0;i < 36;i++) { if(hNam.hashName[i] != NULL) { cout< use.name<<\ p = p ->next; } } } } void Man::create() { ifstream in(\ if(!in) { cerr<<\ exit(1); } stringna,nu,ad; while( in>>na>>nu>>ad ) { Data da(nu,na,ad); add(da); } in.close(); } void Man::save() { ofstream out(\ if(!out) { cerr<<\ exit(1); } for(inti = 0;i < 36;i++) { if(hNam.hashName[i] !=NULL ) { out< use.name<<\ p = p ->next; } } } out.close(); } bool Man::verify(string nu) { for (inti = 0; i } { cout<< \输入有误(提示:号码为数字组成)\ return false; } } return true;
共分享92篇相关文档