程式設計題(共3題,第一題20分,第二題30分,第三題50分,共100分。請上機編寫程式,按題目要求提交檔案。
本試題採用自動測試用例進行評分,測試用例不對考生公開,凡不滿足提交要求導致不能執行或用例不通過,不予評分)。
1、 排序演算法(20分)
l 問題描述
將給定的無序整數陣列降序排列後輸出,輸入的無序陣列長度為n,型別為unsigned int
l 要求實現函式
void dscsort (const int inputarray, unsigned int n, int outputarray)
【輸入】inputarray: 給定的無序陣列
n: 陣列長度
【輸出】outputarray: 排序後的陣列
【返回】無
l 示例
輸入:inputarray=
輸出:outputarray=
2、查詢最大的不重複數(30分)
l 問題描述
如果乙個數字十進位制表達時,不存在連續兩位相同,則稱之為「不重複數」。例如,105、1234和12121都是「不重複數」,而11、100和1225不是。給定乙個正整數a,返回大於a的最小「不重複數」。a小於100000
l 要求實現函式
unsigned int getnotrepeatnum(unsigned int lvalue)
【輸入】lvalue: 給定的數字,返回大於該值的最小不重複數
【輸出】無
【返回】大於ivalue的最小不重複數
l 示例
輸入:ivalue =54
返回: 56
輸入:ivalue =10
返回: 12
輸入:ivalue =98
返回: 101
輸入:ivalue =21099
返回: 21201
3、字串匹配(50分)
l 問題描述
判斷包含萬用字元的匹配字串是否完全匹配輸入的字串,匹配字串中包含的萬用字元僅有『*』和『?』,且萬用字元不會連續出現 。(要求完全匹配,而不是包含)
其中,萬用字元『*』:代替0個或多個字元,萬用字元『?』:代替乙個字元
l 要求實現函式
int getmatchsta (const char *arrstr, const char *keystr)
【輸入】 arrstr: 給定的字串
keystr: 包含萬用字元的匹配字串
【輸出】無
【返回】是否匹配,匹配返回1,不匹配返回0
l 示例
輸入:」 abcdefg」, 「a*'」
返回:1
輸入:「tommababcabc」 , t?m*ab*abc
返回:1
第三屆河南省程式設計大賽
includeusing namespace std int dp 200 int main int main y m 1 while su y if m x includeint main int i,j for i 2 i 32 i int n scanf d n while n include...
1016第三屆程式設計大賽 大優惠
include 廈門理工學院 計算機與資訊工程學院 黃潮欽程式描述 第三屆程式設計大賽 大優惠 time limit 1000ms memory limit 65536k total submit 1688 accepted 607 description 中國移動推出最新的手機資費優惠方案,按照這...
1019 第三屆程式設計大賽 汽車加油
description 一輛汽車加滿油後可行駛n公里。旅途中有若干個加油站。設計乙個有效演算法,指出應在哪些加油站停靠加油,使沿途加油次數最少。input 第一行有2 個正整數n和k 1 n 100,1 k 100 表示汽車加滿油後可行駛n公里,且旅途中有k個加油站。接下來的1 行中,有k 1 個整...