現在需要錄入一批學生的成績(學號,成績)。其中學號是正整數,並且錄入時,後錄入學生的學號會比前面的學號大;成績分兩等,通過(pass,錄入時用1代表),不通過(fail,錄入時用0代表)。
由於很多學號都是相鄰的,並且學號相鄰的學生成績常常相同。所以在錄入時,適當地加了速。如果當前學生的學號比前面的學號大1,且成績與前面的成績相同,則只輸入0即可。
類定義:
完成student類
裁判測試程式樣例:
#include
using
namespace std;
/* 請在這裡填寫答案 */
intmain()
else
st[i]
=new
student
(*st[i-1]
);} cout<" students"
0;i) st[i]
->
display()
;for
(i=0
;i)delete st[i]
;return0;
}
輸入樣例:
53 0
07 1
012 1
輸出樣例:
5 students
3 fail
4 fail
7 pass
8 pass
12 pass
很久沒寫程式了,手有點生疏。
首先說一下這個程式填空題的思路
首先我們觀察一下這個mian函式裡都呼叫了那些東西,就知道我們要寫什麼功能的函式
有兩個建構函式 乙個是含有兩個引數的建構函式,另乙個是帶指標的建構函式(拷貝建構函式)
輸出語句裡有乙個有乙個student類的靜態成員(注意這裡是靜態成員不是靜態函式),最後輸出乙個display的函式。最後自動呼叫了析構函式。且我們需要乙個物件陣列把這些寫物件全部放進去。
需要注意的是,在publuc裡的count是靜態成員而不是乙個函式,如果我們把count放在privat裡,半就必須建立乙個靜態函式,因為只有靜態函式才可以呼叫靜態成員。
靜態成員是在類內定義類外使用的 因此,我們在類外定義了count值恒為0.
這裡是兒子的複習鏈結
所以最終答案是這樣
#include
using
namespace std;
class
student
;int student::count=0;
student::
student
(student & s)
student::
student
(int n,
int s):no
(n),
score
(s)void student::
display()
intmain()
else
st[i]
=new
student
(*st[i-1]
);} cout<" students"
0;i) st[i]
->
display()
;for
(i=0
;i)delete st[i]
;return0;
}
mfc學生成績錄入與查詢
1 宣告結構體 struct person 2 成績錄入 在 儲存 按鈕中實現以下 updatedata true file fopen test.txt a person person updatedata true strcpy person.name,m name in 結構體字元陣列賦值 s...
快速錄入大段文字的正確姿勢
比如下面的場景 下班回家想整理一些資料,但是打字速度很慢,導致等整理完了也很晚了。很多人想寫 寫文件,感覺打字手都快酸了,很難堅持下去,或者效率很低。其實可以使用語音轉文字軟體提高輸入的速度。2.1.1各種手機輸入法語音輸入 各種手機輸入法都支援語音輸入大家可以試試。下面講專門的語音筆記。2.1.2...
PTA 學生成績錄入及查詢 20分
學生成績表中,一名學生的資訊包含如下資訊 學號 11位 姓名 數學成績 英語成績 程式設計成績 物理成績。本題要求編寫程式,錄入n條學生的資訊,並且按查詢要求顯示學生成績等資訊。輸入格式 輸入在第一行給出正整數n n 10 隨後n行,每行按格式 學號 姓名 數學成績 英語成績 程式設計成績 物理成績...