?? yuanma.cpp
字號:
//【例12-7】學生成績信息采集程序,利用異常處理,對輸入信息進行檢查。
#include <iostream.h>
#include <iomanip.h>
#define max 3 //定義宏max
class Info //定義類Info
{ protected: //定義保護類的成員變量
int no;
char name[8];
float score;
public:
Info() {}
void getInfo() //定義獲取信息的子函數
{ cout<<"輸入學號,姓名,成績:";
cin>>no>>name>>score;
if (no<=0||no>max) //若學號超出了有效范圍,拋出int類型的異常
throw no;
if (score<=0.0||score>=100.0)
throw score; //若成績超出有效范圍,拋出float類型的異常
}
void show() //定義顯示學生成績信息的子函數
{ cout<<" "<<setw(4)<<no<<setw(8)<<name<<setw(6)<<score<<endl;
}
};
void main()
{ Info student[max]; //定義對象數組
cout<<"請輸入信息:"<<endl;
for (int i=0;i<max;i++)
{ try
{ student[i].getInfo(); //調用對象的成員函數
}
catch(int x) //捕獲int類型的異常
{ cout<<"學號輸入不正確"<<endl;
}
catch(float y) //捕獲float類型的異常
{ cout<<"成績輸入不正確"<<endl;
}
}
cout<<"輸入的數據為:"<<endl;
for (i=0;i<max;i++)
student[i].show(); //輸出所有學生的信息
}
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -