第二屆藍橋杯預賽試題 c 本科
神秘的三位數
有這樣乙個3位數,組成它的3個數字階乘之和正好等於它本身。即:abc = a! + b! + c!
下面的程式用於搜尋這樣的3位數。請補全缺失的**。
把填空的答案(僅填空處的答案,不包括題面)存入考生資料夾下對應題號的「解答.txt」中即可。
int jc = ;
int i;
for(i=100; i<1000; i++)
if(i==sum) printf("%d\n", i);
}歌賽新規則
歌手大賽的評分規則一般是去掉乙個最高分,去掉乙個最低分,剩下的分數求平均。當評委較少的時候,如果我們只允許去掉乙個分數,該如何設計規則呢?
有人提出:應該去掉與其餘的分數平均值相差最遠的那個分數。即「最離群」的分數。
以下的程式用於實現這個功能。其中x存放所有評分,n表示陣列中元素的個數。函式返回最「離群」的那個分數值。請補全缺失的**。
把填空的答案(僅填空處的答案,不包括題面)存入考生資料夾下對應題號的「解答.txt」中即可。
double score(double x, int n)
double t = x[i] - sum / (n-1);
if(t<0) t = -t;
if(t>dif)
}return bad;
}反轉串
我們把「cba」稱為「abc」的反轉串。
下面的**可以把buf中的字元反轉。其中n表示buf中待反轉的串的長度。請補充缺少的**。
把填空的答案(僅填空處的答案,不包括題面)存入考生資料夾下對應題號的「解答.txt」中即可。
void reverse_str(char* buf, int n)
n進製小數
將任意十進位制正小數分別轉換成2,3,4,5,6,7,8,9進製正小數,小數點後保留8位,並輸出。例如:若十進位制小數為0.795,則輸出:
十進位制正小數 0.795000 轉換成 2 進製數為: 0.11001011
十進位制正小數 0.795000 轉換成 3 進製數為: 0.21011011
十進位制正小數 0.795000 轉換成 4 進製數為: 0.30232011
十進位制正小數 0.795000 轉換成 5 進製數為: 0.34414141
十進位制正小數 0.795000 轉換成 6 進製數為: 0.44341530
十進位制正小數 0.795000 轉換成 7 進製數為: 0.53645364
十進位制正小數 0.795000 轉換成 8 進製數為: 0.62702436
十進位制正小數 0.795000 轉換成 9 進製數為: 0.71348853
以下**提供了這個功能。其中,dtestno表示待轉的十進位制小數。ibase表示進製數。請填寫缺失的部分。
把填空的答案(僅填空處的答案,不包括題面)存入考生資料夾下對應題號的「解答.txt」中即可。
void fun(double dtestno, int ibase)
printf("0.");
for(ino=0; ino<8; ino++) printf("%d", it[ino]);
printf("\n");
}void main ( )
輪換串「abcd」每個字元都向右移位,最右的移動到第乙個字元的位置,就變為「dabc」。這稱為對串進行位移=1的輪換。同理,「abcd」變為:「cdab」則稱為位移=2的輪換。
下面的**實現了對串s進行位移為n的輪換。請補全缺失的**。
把填空的答案(僅填空處的答案,不包括題面)存入考生資料夾下對應題號的「解答.txt」中即可。
void shift(char* s, int n)
}strcpy(s,s2);
free(s2);
}中獎計算
某**活動的規則是:每位參與者在紙上寫下乙個8位數的號碼。最後通過搖獎的辦法隨機產生乙個8位數字。參與者寫下的數字中最多有多少個連續位與開獎號碼中的相同,則稱為中了幾個號。
例如:小張寫的數字是:12345678,而開獎號碼是:
42347856。則稱小張中了3個號,因為其中最長的相同連續位是:「234」。
如果小張寫的是:87654321,則他只中了乙個號。
下面的**根據傳入的引數,返回中了幾個號。其中:a表示被評價的號碼,b表示搖號產生的數字。請填寫缺少的**。
把填空的答案(僅填空處的答案,不包括題面)存入考生資料夾下對應題號的「解答.txt」中即可。
int g(int a, int b)
}return n;
}概率問題
某個袋子中有紅球m個,白球n個。現在要從中取出x個球。那麼紅球數目多於白球的概率是多少呢?
下面的**解決了這個問題。其中的y表示紅球至少出現的次數。
這與前文的問題是等價的。因為如果取30個球,要求紅球數大於白球數,則等價於至少取出16個紅球。請根據僅存的線索,判斷程式邏輯,並補全缺少的**。
把填空的答案(僅填空處的答案,不包括題面)存入考生資料夾下對應題號的「解答.txt」中即可。
/* m: 袋中紅球的數目
n: 袋中白球的數目
x: 需要取出的數目
y: 紅球至少出現的次數
*/double pro(int m, int n, int x, int y)
方陣的主對角線之上稱為「上三角」。
請你設計乙個用於填充n階方陣的上三角區域的程式。填充的規則是:使用1,2,3….的自然數列,從左上角開始,按照順時針方向螺旋填充。
例如:當n=3時,輸出:
1 2 3
6 45
當n=4時,輸出:
1 2 3 4
9 10 5
8 6
7當n=5時,輸出:
1 2 3 4 5
12 13 14 6
11 15 7
10 8
9程式執行時,要求使用者輸入整數n(3~20)
程式輸出:方陣的上三角部分。
要求格式:每個資料寬度為4,右對齊。
要求考生把所有函式寫在乙個檔案中。除錯好後,存入與考生資料夾下對應題號的「解答.txt」中即可。相關的工程檔案不要拷入。
對於程式設計題目,要求選手給出的解答完全符合ansi c標準,不能使用c++特性;不能使用諸如繪圖、中斷呼叫等硬體相關或作業系統相關的api。
公司發了某商店的購物券1000元,限定只能購買店中的m種商品。每種商品的**分別為m1,m2,…,要求程式列出所有的正好能消費完該購物券的不同購物方法。
程式輸入:
第一行是乙個整數m,代表可購買的商品的種類數。
接下來是m個整數,每個1行,分別代表這m種商品的單價。
程式輸出:
第一行是乙個整數,表示共有多少種方案
第二行開始,每種方案佔1行,表示對每種商品購買的數量,中間用空格分隔。
例如: 輸入:
2200
300則應輸出:
22 2
5 0
輸入:2500
800則應輸出:
12 0
要求考生把所有函式寫在乙個檔案中。除錯好後,存入與考生資料夾下對應題號的「解答.txt」中即可。相關的工程檔案不要拷入。
第二屆數學競賽初賽答案
第一組填空題 1.25 104 2.這兩根繩原來長1公尺。3.來 代表1,參 代表2,加 代表3,數 代表4,學 代表5,邀 代表6,請 代表7。4.第7天她織布346.5公尺,7天共織布2100公尺。6.n個這樣的正六邊形的周長是6na。7.每組各選 1人,一共有120種選法 三組共同推選乙個代表...
藍橋杯第一到三屆初賽題目
第一屆藍橋杯預賽試題 c 本科 第一題,以下函式的功能是將任意整數進行因式分解,請完成該程式的空缺使函式能夠正常運算 void f int n if n 1 printf d n n 第二題,以下函式的功能是將給定字串進行倒序輸出,請完成該函式空缺部分。char p abcdef char q ch...
第二屆「南方杯」技能比賽方案
全市國土資源系統 第二屆 南方杯 土地勘測技能大賽方案 一 比賽時間 本次比賽初步定於4月11 12日舉行,時間共2天,具體安排如下 1 11日上午8 00 9 30報到,10 00舉行開幕式,下午進行外業測量考試 2 12日上午8 00 12 00外業測量考試,下午頒獎典禮暨2012年工作部署會。...