第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

這段代碼老得不到正確的結果,哪兒錯了?求高人指點

這段代碼老得不到正確的結果,哪兒錯了?求高人指點

C C++
DreachmeR 2016-11-29 22:41:55
/*【問題描述】 從標準輸入連續(xù)讀入n(n<10)個學生的學號(不超過int類型表示范圍)、姓名(由不超過10個英文字母組成)以及數(shù)學、英語、語文三門課的成績,計算個人的平均成績,并且按個人的總成績由高到低排序(如果總成績相同,按學號由低到高排序,但前面的排序序號不變,即兩人排名相同),將排名結果在屏幕上顯示出來(要求同一列右對齊,其中排名占4個字符、學號占10個字符,姓名占10個字符,數(shù)學、英語、語文各占5個字符)。如輸入的學生人數(shù)n大于等于10,則打印輸出“Please input 1-9.“, 然后,退出程序。 【輸入形式】 從控制臺輸入一個小于10的正整數(shù),表示學生人數(shù);然后分行輸入學號、姓名以及數(shù)學、英語、語文三門課的成績,中間用空格分隔。 【輸出形式】 1、控制臺輸出排序結果,要求輸出:排名結果、學號、姓名、數(shù)學成績、英語成績、語文成績。 2、要求同一列右對齊,其中排名占4個字符、學號占10個字符,姓名占10個字符,數(shù)學、英語、語文各占5個字符。 3、如兩人成績相同,總成績相同,按學號由低到高排序輸出,但前面的排序序號不變,即兩人排名相同。 【樣例輸入1】 8 39060415?zf 98 88 85 39060427?lzw 87 92 88 39060413?wr? 95 86 90 39060412?wp 95 85 91 39060405?syj 78 82 69 39060425?yef 85 78 93 39060419?sw 75 89 88 39060421?rr 89 88 75*/ 【樣例輸出1】 ?? 1? 39060412??????? wp?? 95?? 85?? 91 ?? 1? 39060413??????? wr?? 95?? 86?? 90 ?? 1? 39060415??????? zf?? 98?? 88?? 85 ???4? 39060427?????? lzw?? 87?? 92?? 88 ???5? 39060425?????? yef?? 85?? 78?? 93 ???6? 39060419??????? sw?? 75?? 89?? 88 ???6? 39060421??????? rr?? 89?? 88?? 75 ???8? 39060405?????? syj?? 78?? 82?? 69#include?"stdafx.h"#include?<stdlib.h>#include?<stdio.h>#include?<string.h> typedef?struct?stuInf?{?int?stuID;?char?stuName[10];?int?stuMath;?int?stuEng;?int?stuChi;?int?markAll=stuMath+stuEng+stuChi;}; void?stuArrSort(stuInf?*pStu,?int?size);//進行排序void?stuArrRakOut(stuInf?*pStu,?int?size);//進行排名并輸出 void?stuArrSort(stuInf?*pStu,?int?size)?{?/*根據(jù)總分排序*/?int?i,?j;?for?(i?=?0;?i?<?size?-?1;?i++)?{??for?(j?=?i?+?1;?j?<?size;?j++)?{???if?((pStu+i)->markAll?<?(pStu+j)->markAll){????stuInf?tmp?=?*(pStu?+?i);????*(pStu?+?i)?=?*(pStu?+?j);????*(pStu?+?j)?=?tmp;???}????}?} ?/*根據(jù)學號排序*/?for?(i?=?0;?i?<?size?-?1;?i++)?{??for?(j?=?i?+?1;?j?<?size;?j++)?{???if?((pStu?+?i)->markAll?==?(pStu?+?j)->markAll)?{????if?((pStu?+?i)->stuID?>?(pStu?+?j)->stuID)?{?????stuInf?tmp?=?*(pStu?+?i);?????*(pStu?+?i)?=?*(pStu?+?j);?????*(pStu?+?j)?=?tmp;????}???}???else?{????continue;???}??}?}} void?stuArrRakOut(stuInf?*pStu,?int?size)?{?int?i,rak=1;?printf("%d?%d?%s?%d?%d?%d\n",?rak,?(pStu?+?0)->stuID,(pStu?+?0)->stuName,(pStu+0)->stuMath,(pStu+0)->stuEng,(pStu+0)->stuChi);?for?(i?=?1;?i?<?size;?i++)?{??if?((pStu?+?i)->markAll?==?(pStu?+?(i-1))->markAll)?{???printf("%d?%d?%s?%d?%d?%d\n",?rak,?(pStu?+?i)->stuID,?(pStu?+?i)->stuName,?(pStu?+?i)->stuMath,?(pStu?+?i)->stuEng,?(pStu?+?i)->stuChi);??}??else?{???rak=i;???printf("%d?%d?%s?%d?%d?%d\n",?rak,?(pStu?+?i)->stuID,?(pStu?+?i)->stuName,?(pStu?+?i)->stuMath,?(pStu?+?i)->stuEng,?(pStu?+?i)->stuChi);??}?}} int?main(){?int?iniNum;?scanf_s("%d",?&iniNum); ?if?(iniNum?<?1?||?iniNum>9)?{??printf("Please?input?num?1-9.?\n");?}?else?{ ??stuInf?*stuArr?=?(stuInf*)malloc(sizeof(stuInf)*iniNum); ??int?i;??for?(i?=?0;?i?<?iniNum;?i++)?{???scanf_s("%d?%s?%d?%d?%d",?&((stuArr?+?i)->stuID),?((stuArr?+?i)->stuName),10,?&((stuArr?+?i)->stuMath),?&((stuArr?+?i)->stuEng),?&((stuArr+i)->stuChi));??} ??stuArrSort(stuArr,?iniNum);??stuArrRakOut(stuArr,?iniNum); ??free(stuArr); ?} ?system("pause");?return?0;}
查看完整描述

3 回答

?
wiklvrain

TA貢獻1條經(jīng)驗 獲得超0個贊

結構體定義發(fā)生了些問題= =還有就是scanf_s里面寫的具體有問題。

如果可能希望你能自己改下吧= =

查看完整回答
反對 回復 2016-11-30
?
小江xue

TA貢獻2條經(jīng)驗 獲得超0個贊

......................???????? l

查看完整回答
反對 回復 2016-11-30
?
00小伙

TA貢獻86條經(jīng)驗 獲得超30個贊

路過,看到那么長就不想看了。。。。

查看完整回答
反對 回復 2016-11-29
  • 3 回答
  • 0 關注
  • 3041 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網(wǎng)微信公眾號