2023年全國碩士研究生考試考研英語一試題真題(含答案詳解+作文范文)_第1頁
已閱讀1頁,還剩12頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

1、<p><b>  個人通信錄管理系統(tǒng)</b></p><p><b>  一、需求描述</b></p><p> ?。?)查看功能:選擇此功能時,列出下列三類選擇。 A 辦公類;B 個人類; C 商務(wù)類;</p><p>  當(dāng)選中某類時,顯示出此類所有數(shù)據(jù)中 的姓名和電話號碼) (2)增加功能

2、:能錄入新數(shù)據(jù)(一個結(jié)點(diǎn)包括:姓名、電話號碼、分類(可選項有:A 辦</p><p>  公類; B 個人類; C 商務(wù)類;</p><p>  當(dāng)錄入了重復(fù)的姓名和電話號碼時,則提示數(shù)據(jù)錄入重復(fù)并取消錄入;當(dāng)通信錄中超過15條信息時,存儲空間已滿,不能再錄入新數(shù)據(jù);錄入的新數(shù)據(jù)能按遞增的順序自動進(jìn)行條目編號。 </p><p>  (3)拔號功能:能顯示出通信錄中

3、所有人的姓名,當(dāng)選中某個姓名時,屏幕上模擬打字機(jī)的效果依次顯示出此人的電話號碼中的各個數(shù)字。 </p><p> ?。?)修改功能:選中某個人的姓名時,可對此人的相應(yīng)數(shù)據(jù)進(jìn)行修改。 </p><p> ?。?)刪除功能:選中某個人的姓名時,可對此人的相應(yīng)數(shù)據(jù)進(jìn)行刪除,并自動調(diào)整后續(xù)條目的編號。</p><p>  二、系統(tǒng)總體分析設(shè)計</p><

4、p><b>  具體函數(shù):</b></p><p>  修改 void alter() 刪除void deleted()</p><p>  查看 void show() 添加void increase()</p><p>  撥號 void dail() 主函數(shù)int main()</p><p

5、><b>  三、編碼</b></p><p>  #include <iostream></p><p>  #include <string></p><p>  using namespace std;</p><p>  struct node{ </p><p

6、>  string name;</p><p>  string telephone;</p><p>  string sort;</p><p><b>  };</b></p><p>  class base{</p><p>  protected:</p><

7、p>  node a[15];</p><p><b>  int i;</b></p><p><b>  public:</b></p><p><b>  base()</b></p><p><b>  {</b></p>&l

8、t;p><b>  i=0;</b></p><p><b>  }</b></p><p>  void show()//------------------------查看</p><p><b>  {</b></p><p><b>  int j,x;

9、</b></p><p><b>  if(i!=0)</b></p><p><b>  {</b></p><p>  cout<<"***********選擇3個類中的一個:************"<<endl;</p><p>  c

10、out<<"*****************1:辦公*****************"<<endl;</p><p>  cout<<"*****************2:個人*****************"<<endl;</p><p>  cout<<"*******

11、**********3:商務(wù)*****************"<<endl;</p><p><b>  cin>>x;</b></p><p><b>  switch(x)</b></p><p><b>  {</b></p><p>

12、<b>  case 1:</b></p><p>  for(j=0;j<i;j++)</p><p>  if(a[j].sort=="辦公")</p><p><b>  {</b></p><p>  cout<<"姓名"<&l

13、t;" "<<"號碼"<<endl;</p><p>  cout<<a[j].name<<" "<<a[j].telephone<<endl;</p><p><b>  }</b></p><p&g

14、t;<b>  break;</b></p><p><b>  case 2:</b></p><p>  for(j=0;j<i;j++)</p><p>  if(a[j].sort=="個人")</p><p><b>  {</b></

15、p><p>  cout<<"姓名"<<" "<<"號碼"<<endl;</p><p>  cout<<a[j].name<<" "<<a[j].telephone<<endl;</p>

16、<p><b>  }</b></p><p><b>  break;</b></p><p><b>  case 3:</b></p><p>  for(j=0;j<i;j++)</p><p>  if(a[j].sort=="商務(wù)"

17、;)</p><p><b>  {</b></p><p>  cout<<"姓名"<<" "<<"號碼"<<endl;</p><p>  cout<<a[j].name<<" &qu

18、ot;<<a[j].telephone<<endl;</p><p><b>  }</b></p><p><b>  break;</b></p><p><b>  }</b></p><p><b>  }</b></

19、p><p>  else cout<<"空間無信息!"<<endl;</p><p><b>  }</b></p><p>  void increase()//----------------------增加</p><p><b>  {</b><

20、/p><p>  string q,p,r;</p><p>  cout<<"輸入要存于的數(shù)據(jù):"<<endl;</p><p>  cin>>q>>p>>r;</p><p>  for(int j=0;j<i;j++)</p><p&g

21、t;<b>  {</b></p><p>  if(a[j].name==q&&a[j].telephone==p)</p><p><b>  break;</b></p><p><b>  }</b></p><p><b>  if(i<

22、;15)</b></p><p><b>  {</b></p><p><b>  if(j==i)</b></p><p><b>  {</b></p><p>  a[i].name=q;</p><p>  a[i].telepho

23、ne=p;</p><p>  a[i].sort=r;</p><p><b>  i++;</b></p><p><b>  }</b></p><p>  else cout<<"數(shù)據(jù)錄入重復(fù)!"<<endl;</p><p&g

24、t;<b>  }</b></p><p>  else cout<<"存儲空間已滿!"<<endl;</p><p><b>  }</b></p><p>  void dail()//------------------------撥號</p><p&g

25、t;<b>  {</b></p><p>  string f,t;</p><p>  int p,k=0,r,m;</p><p>  cout<<"此類存儲的所有姓名:"<<endl;</p><p>  for(int j=0;j<i;j++)</p>

26、;<p>  cout<<a[j].name<<endl;</p><p>  cout<<"輸入要撥號的姓名:"<<endl;</p><p><b>  cin>>f;</b></p><p><b>  j=0;</b>&l

27、t;/p><p>  for(j=0;j<=i;j++)</p><p><b>  {</b></p><p>  if(f==a[j].name)</p><p><b>  {</b></p><p>  cout<<"號碼為:"<

28、;<endl;</p><p>  cout<<a[j].telephone<<endl;</p><p>  t=a[j].telephone+'#';</p><p>  while(t[k]!='#')</p><p><b>  {</b></p

29、><p>  cout<<a[j].telephone[k]<<" ";</p><p><b>  k++;</b></p><p>  for(m=0;m<80000000;m++)</p><p><b>  {</b></p>&l

30、t;p>  //k=k*k;</p><p><b>  }</b></p><p><b>  }</b></p><p><b>  //k=4;</b></p><p>  for(m=0;m<20;m++)</p><p>&

31、lt;b>  {</b></p><p>  cout<<".";</p><p>  for(r=0;r<80000000;r++)</p><p><b>  {</b></p><p>  //k=k*k;</p><p><

32、;b>  }</b></p><p>  cout<<'\b';</p><p>  cout<<' ';</p><p>  cout<<'\b';</p><p>  cout<<"..";</p&g

33、t;<p>  for(r=0;r<80000000;r++)</p><p><b>  {</b></p><p><b>  //k=k*k;</b></p><p><b>  }</b></p><p>  cout<<'\b

34、';</p><p>  cout<<'\b';</p><p>  cout<<' ';</p><p>  cout<<' ';</p><p>  cout<<'\b';</p><p>  c

35、out<<'\b';</p><p>  cout<<"...";</p><p>  for(r=0;r<80000000;r++)</p><p><b>  {</b></p><p><b>  k=k*k;</b></

36、p><p><b>  }</b></p><p>  cout<<'\b';</p><p>  cout<<'\b';</p><p>  cout<<'\b';</p><p>  cout<<

37、9; ';</p><p>  cout<<' ';</p><p>  cout<<' ';</p><p>  cout<<'\b';</p><p>  cout<<'\b';</p><p>

38、  cout<<'\b';</p><p>  putchar('\a');</p><p><b>  }</b></p><p>  cout<<endl;</p><p><b>  break;</b></p><p

39、><b>  }</b></p><p><b>  }</b></p><p><b>  if(j>i)</b></p><p>  cout<<"無此人的信息!"<<endl;</p><p><b>  

40、}</b></p><p>  void alter()//-------------------------修改</p><p><b>  {</b></p><p><b>  string f;</b></p><p>  cout<<"輸入要修改的姓名:&

41、quot;<<endl;</p><p><b>  cin>>f;</b></p><p>  for(int j=0;j<=i;j++)</p><p><b>  {</b></p><p>  if(f==a[j].name)</p><p&

42、gt;<b>  {</b></p><p>  cin>>a[j].name>>a[j].telephone>>a[j].sort;break;</p><p><b>  }</b></p><p><b>  }</b></p><p>

43、;<b>  if(j>i)</b></p><p>  cout<<"無此人的信息!"<<endl;</p><p><b>  }</b></p><p>  void deleted()//-----------------------刪除</p>&l

44、t;p><b>  {</b></p><p><b>  string f;</b></p><p>  cout<<"輸入要刪除的姓名:"<<endl;</p><p><b>  cin>>f;</b></p><

45、p>  for(int j=0;j<=i;j++)</p><p><b>  {</b></p><p>  if(f==a[j].name)</p><p><b>  {</b></p><p>  for(int k=j;k<=i;k++)</p><p

46、><b>  {</b></p><p>  a[j].name=a[j+1].name;</p><p>  a[j].telephone=a[j+1].telephone;</p><p><b>  }</b></p><p><b>  i--;</b></

47、p><p><b>  break;</b></p><p><b>  }</b></p><p><b>  }</b></p><p><b>  if(j>i)</b></p><p>  cout<<&quo

48、t;無此人的信息!"<<endl;</p><p><b>  }</b></p><p><b>  };</b></p><p>  int main()</p><p><b>  {</b></p><p><b>

49、;  base k1;</b></p><p><b>  for(;;)</b></p><p><b>  {</b></p><p>  cout<<"******************************"<<endl;</p><p

50、>  cout<<"1.增加新聯(lián)系人"<<endl;</p><p>  cout<<"2.修改聯(lián)系人信息"<<endl;</p><p>  cout<<"3.刪除聯(lián)系人"<<endl;</p><p>  cout<&l

51、t;"4.查看聯(lián)系人"<<endl;</p><p>  cout<<"5.撥號功能"<<endl;</p><p>  cout<<"******************************"<<endl;</p><p><b>

52、  int k;</b></p><p><b>  cin>>k;</b></p><p><b>  switch(k)</b></p><p><b>  {</b></p><p><b>  case 1:</b><

53、/p><p>  k1.increase();break;</p><p><b>  case 2:</b></p><p>  k1.alter();break;</p><p><b>  case 3:</b></p><p>  k1.deleted();break;&

54、lt;/p><p><b>  case 4:</b></p><p>  k1.show();break;</p><p><b>  case 5:</b></p><p>  k1.dail();break;</p><p><b>  }</b>&l

55、t;/p><p><b>  }</b></p><p><b>  return 0;</b></p><p><b>  }</b></p><p><b>  四、程序運(yùn)行說明</b></p><p><b>  1.添

56、加聯(lián)系人</b></p><p>  2.查看已輸入的信息</p><p>  3.修改信息并查看修改結(jié)果(李艾改為李浩)</p><p>  4. 刪除信息并查看修改結(jié)果(刪除李浩)</p><p>  5.撥號功能(撥號王楠)</p><p>  五、部分程序功能描述</p><p&

57、gt;  在實(shí)驗(yàn)負(fù)責(zé)修改和刪除程序,一下是我負(fù)責(zé)的程序源代碼,利用數(shù)組和if循環(huán)語句實(shí)現(xiàn)該功能。</p><p>  void show()//------------------------查看</p><p><b>  {</b></p><p><b>  int j,x;</b></p><p

58、><b>  if(i!=0)</b></p><p><b>  {</b></p><p>  cout<<"***********選擇3個類中的一個:************"<<endl;</p><p>  cout<<"**********

59、*******1:辦公*****************"<<endl;</p><p>  cout<<"*****************2:個人*****************"<<endl;</p><p>  cout<<"*****************3:商務(wù)*************

60、****"<<endl;</p><p><b>  cin>>x;</b></p><p><b>  switch(x)</b></p><p><b>  {</b></p><p><b>  case 1:</b>

61、;</p><p>  for(j=0;j<i;j++)</p><p>  if(a[j].sort=="辦公")</p><p><b>  {</b></p><p>  cout<<"姓名"<<" "<<&q

62、uot;號碼"<<endl;</p><p>  cout<<a[j].name<<" "<<a[j].telephone<<endl;</p><p><b>  }</b></p><p><b>  break;</b&g

63、t;</p><p><b>  case 2:</b></p><p>  for(j=0;j<i;j++)</p><p>  if(a[j].sort=="個人")</p><p><b>  {</b></p><p>  cout<&

64、lt;"姓名"<<" "<<"號碼"<<endl;</p><p>  cout<<a[j].name<<" "<<a[j].telephone<<endl;</p><p><b>  }</b

65、></p><p><b>  break;</b></p><p><b>  case 3:</b></p><p>  for(j=0;j<i;j++)</p><p>  if(a[j].sort=="商務(wù)")</p><p><

66、b>  {</b></p><p>  cout<<"姓名"<<" "<<"號碼"<<endl;</p><p>  cout<<a[j].name<<" "<<a[j].telephone&l

67、t;<endl;</p><p><b>  }</b></p><p><b>  break;</b></p><p><b>  }</b></p><p><b>  }</b></p><p>  else cout

68、<<"空間無信息!"<<endl;</p><p><b>  }</b></p><p>  void increase()//----------------------增加</p><p><b>  {</b></p><p>  string q

69、,p,r;</p><p>  cout<<"輸入要存于的數(shù)據(jù):"<<endl;</p><p>  cin>>q>>p>>r;</p><p>  for(int j=0;j<i;j++)</p><p><b>  {</b><

70、;/p><p>  if(a[j].name==q&&a[j].telephone==p)</p><p><b>  break;</b></p><p><b>  }</b></p><p><b>  if(i<15)</b></p>&

71、lt;p><b>  {</b></p><p><b>  if(j==i)</b></p><p><b>  {</b></p><p>  a[i].name=q;</p><p>  a[i].telephone=p;</p><p> 

72、 a[i].sort=r;</p><p><b>  i++;</b></p><p><b>  }</b></p><p>  else cout<<"數(shù)據(jù)錄入重復(fù)!"<<endl;</p><p><b>  }</b><

73、;/p><p>  else cout<<"存儲空間已滿!"<<endl;</p><p><b>  }</b></p><p><b>  六、測試報告</b></p><p>  在我負(fù)責(zé)的部分在在測試中存在如下問題</p><p&g

74、t;  1.一些簡單的錯誤,如忘記分號,單詞拼寫錯誤等,在看到提示后找到所在位置可以及時改正。</p><p>  2.在運(yùn)行的過程中每次增加或修改、刪除完后都應(yīng)該及時查看一下,看是否修改成功,從而得知程序運(yùn)行是否順利。</p><p><b>  七、課程總結(jié)</b></p><p>  本小組共有三人,根據(jù)本實(shí)驗(yàn)要求完成的幾個功能,在實(shí)驗(yàn)初

75、期我們做了具體的分工,函數(shù)的定義部分由大家一起完成,子函數(shù)再有專人完成,其中我負(fù)責(zé)的是查看和增加的部分。在編寫函數(shù)中我發(fā)現(xiàn)查看和增加的操作有很多的相似之處,都是需要循環(huán)語句來實(shí)現(xiàn)功能,本實(shí)驗(yàn)我們采取數(shù)組的定義方法,利用數(shù)組來完成循環(huán)。不過在運(yùn)行的時候經(jīng)常會忘記輸入數(shù)字而直接打需要增加的信息而導(dǎo)致運(yùn)行出錯,由此可見不止編寫代碼需要仔細(xì),運(yùn)行程序的過程中也需要嚴(yán)謹(jǐn)??傮w來說,本實(shí)驗(yàn)我們小組完成起來還是比較順利的,我也通過本次實(shí)驗(yàn)更加深了對于

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論