假定Dataquery類為封裝后的數據庫結果集對象,調用Dataquery.getData可以返回Data1類型的對象,該對象結構如下:class Data1{String xsxh; //學號String xsxm; //姓名String kcdm; //課程代碼float kcxf; //課程學分float kscj; //成績String kcsx;//課程屬性}Dataquery的數據指針只能向前移動,每次調用Dataquery.next()方法都會檢查結果集中當前指針指向位置后面是否還有數據,如果有則向前移動指針,指向下一個元素,否則直接返回false。已知Dataquery中的數據已經按照唯一關鍵字“學號”進行了排序,示例數據:95001 張三 001 2 92 必修95001 張三 002 3 70 選修95002 李四 003 5 88 必修95002 李四 005 3 98 選修因Dataquery結果集非常大,不允許使用數組等結構來緩存結果集全部數據。請編寫函數,使用Dataquery為輸入參數,計算每個學生的平均成績(僅成績不小于60分參與計算),學分和(僅成績不小于60分,且屬性為必修課參與計算),并以下面的格式輸出:學號:95001|姓名:張三|平均成績:78|學分和:80
2 回答

蠱毒傳說
TA貢獻1895條經驗 獲得超3個贊
如果是要訪問整個單鏈表的話,就直接可以從head->next開始一一遍歷;
如果是要訪問單鏈表中某個結點的話,那就設個while循環從頭結點開始直到遍歷到要訪問的結點(比如為q)結束。具體程序如下:x為要訪問的結點值(假如是int 型)
p=head;
while(p->next->data!=x)
p=p->next;
if(p)
printf("%d",p->data);
else
printf("not exsit this element!");

GCT1015
TA貢獻1827條經驗 獲得超4個贊
Dataquery既然是對象必然已經進入內存了,否則怎么稱為對象,對象是類在內存中的實例化。
如果是個文件的話,就用IO流處理。如果是數據庫的輸出結果,就用接口函數,用不著緩沖數據。
- 2 回答
- 0 關注
- 117 瀏覽
添加回答
舉報
0/150
提交
取消