1.整型字符串排序
排序要求:按照每個正整數的後三位數字組成的整數進行從小到大排序
1)如果不足三位,則按照實際位數組成的整數進行比較
2)如果相等,則按照輸入字符串中的原始順序排序
說明(以下內容考生無須檢查,調用者保證):
1) 字符串以’\0’結尾,僅包含數字、空格
2) 字符串內正整數之間以單個空格分隔,字符串首尾沒有空格
3) 正整數格式爲十進制,大小:1~1000000,正整數的數字非零開始
示例:
如字符串內容
1223 22 3232 2016
按照規定排序後
2016 22 1223 3232
查詢排序後的第3個數是
1223
2.字符轉換Univesity
字符替換,按照替換規則,將輸入的字符串做轉換;其它字符不作處理。
詳細描述:
題目背景
字母的替換規則,如下所示,A被E替換,B被C替換,依次類推。
A B C D E F G H I J K L M N O P Q R S T U V W X Y Z
E C F A J K L B D G H I V W Z Y M N O P Q R S T U X
a b c d e f g h i j k l m n o p q r s t u v w x y z
e r w q t y g h b n u i o p s j k d l f a z x c v m
3.字符串分割
長度不是8整數倍的字符串請在後面補數字0,空字符串不處理。
例如:
輸入:abc
12345789
輸出:abc00000
12345678
90000000
接口函數設計如下:
/*****************************************************************************
功能:存儲輸入的字符創
輸入:字符串
輸出:無
返回:0表示成功,其它返回-1
******************************************************************************/
int AddString(char *strValue);
/****************************************************************************
功能:獲取補位後的二維數組的長度
輸入:無
輸出:無
返回:二維數組長度
*****************************************************************************/
int GetLength();
/*****************************************************************************
功能:將補位後的二維數組,與輸入的二維數組做比較
輸入:strInput:輸入二維數組,iLen:輸入的二維數組的長度
輸出:無
返回:若相等,返回0;不相等,返回-1.其它:-1;
******************************************************************************/
int ArrCmp(char strInput[][9],int iLen);
4.圓桌遊戲
實現以下接口:
1、設定輸入原始的圓桌遊戲的人數。以最先開始報數的人編號爲1,順時針排序。
2、設定第一個人的初始值,獲取按照規則退出圓桌的人的編號。
3、結束遊戲。
樣例:
比如初始化爲4人的遊戲:第1輪初始值爲1,退出爲3;第2輪初始值爲4,退出爲4號;第三輪初始值爲16,退出爲2號;第四輪初始值爲6,退出爲1號;
5.淵子賽馬
輸入
輸入有多組測試數據。 每組測試數據包括3行: 第一行輸入N(1≤N≤1000)。表示馬的數量。 第二行有N個整型數字,即淵子的N匹馬的速度。 第三行有N個整型數字,即對手的N匹馬的速度。 當N爲0時退出。
輸出
若通過聰明的你精心安排,如果淵子能贏得比賽,那麼輸出“YES”。 否則輸出“NO”。
樣例輸入
5
2 3 3 4 5
1 2 3 4 5
4
2 2 1 2
2 2 3 1
0樣例輸出
YES
NO接口說明
原型:char * IsYuanziWin(unsigned int num, unsigned int * speed_yz, unsigned int * speed_op)
功能:判斷yuanzi 的馬是否會贏?yuanzi 的馬贏了,返回 YES. 否則返回 NO
輸入參數:
unsigned int num: 賽馬的數量; (1<= num <=1000)
unsigned int * speed_yz: yuanzi 的馬的速度;
unsigned int * speed_op: 對手的馬的速度;
輸出參數:
無
返回值:
char * 型 的字符串,yuanzi 的馬贏了,返回 YES. 否則返回 NO;
6.英文金曲大賽
樣例輸入
10 10 10 10 10 10 9 xiaoyuanwang
0 0 0 0 0 0 0 beast樣例輸出
xiaoyuanwang 10.00\nbeast 0.00接口說明
函數原型:
void GetResult(char* pInput[], int Num, char* pResult);
輸入參數(指針指向的內存區域保證有效): char* pInputString:字符串數組,是輸入的成績和姓名。分數是0-10的整數,名字的長度不超過30個字符 int Num:整數,參賽選手的數量,2 <= Num <= 26。輸出參數(指針指向的內存區域保證有效): char* pResult:一塊buffer,輸出所有參賽者的姓名和平均分(保留2位小數)。格式要求如下: 1、姓名在前,平均分在後,中間由一個空格隔開; 2、每行參賽者的成績佔一行(最後一個參賽者成績之後不要換行符); 3、輸出成績按輸入順序排序。 返回值: void
7.一元多項式化簡
編程實現如下功能:對輸入的一元多項式,進行同類項合併,並按指數降序排序,輸出處理後的一元多項式。
說明:
l 多項式由若干個單項式組成,單項式之間爲加、減(+,-)關係。
l 單項式指數字與字母冪的乘積構成的代數式。對一元多項式,字母只有一種。
l 同類項合併指將多項式中指數相同的單項式,係數經過加減求和,合併爲一個單項式。按指數降序指多項式中,單項式按指數從大到小順序相連。
格式說明
一元多項式輸入輸出時以字符串形式表示,格式如下
l單項式之間用單個加減運算符相連,運算符:+,-
2單項式由係數、字母、指數標識符、指數依次直接相連組成,各部分均不能省略。
係數:只由若干0到9數字字符組成(係數不等於0,且不以0開頭)
字母:X
指數標識符:^
指數:只由若干0到9數字字符組成(指數可等於0,不等於0時不以0開頭)
3其他約定
輸入不爲空串,輸出若爲0則以空串表示
字符串中除以上字符,不包含空格等其他字符,字符串尾部以’\0’結束
多項式中第一個單項式前加運算時省略+符號,減運算時有-符號
注意:輸入多項式符合上述格式,無需檢查;輸出多項式格式由考生程序保證
輸入多項式滿足如下規格,考生程序無需檢查:
–0<單項式係數<=1000<>
–0<=單項式指數<=3000<>
–單項式個數不限制,但同類項合併處理後,單項式的係數小於65535。
示例
例一
輸入:
"7X^4-5X^6+3X^3"
輸出:
"-5X^6+7X^4+3X^3"
例二
輸入:
"-7X^4+5X^6-3X^3+3X^3+1X^0"
輸出:
"5X^6-7X^4+1X^0"
答案點這裏