習題4-11 兔子繁衍問題 (15 point(s))
一對兔子,從出生後第3個月起每個月都生一對兔子。小兔子長到第3個月後每個月又生一對兔子。假如兔子都不死,請問第1個月出生的一對兔子,至少需要繁衍到第幾個月時兔子總數才可以達到N對?
輸入格式:
輸入在一行中給出一個不超過10000的正整數N。
輸出格式:
在一行中輸出兔子總數達到N最少需要的月數。
輸入樣例:
30
輸出樣例:
9
#include<stdio.h> int main(){ int N,i; int x1=1,x2=1,x=0; scanf("%d",&N); if(N==1) i=1; else for( i=2;x<N;i++){ x=x1+x2; x1=x2; x2=x; } printf("%d",i); return 0; }
相關推薦
習題4-11 兔子繁衍問題 (15 point(s))
一對兔子,從出生後第3個月起每個月都生一對兔子。小兔子長到第3個月後每個月又生一對兔子。假如兔子都不死,請問第1個月出生的一對兔子,至少需要繁衍到第幾個月時兔子總數才可以達到N對? 輸入格式: 輸入在一行中給出一個不超過10000的正整數N。 輸出格式: 在一行中輸出兔子總數達到N最
習題4-11 兔子繁衍問題 (15 分)(遞迴演算法)(陣列演算法)
一對兔子,從出生後第3個月起每個月都生一對兔子。小兔子長到第3個月後每個月又生一對兔子。假如兔子都不死,請問第1個月出生的一對兔子,至少需要繁衍到第幾個月時兔子總數才可以達到N對? 輸入格式: 輸入在一行中給出一個不超過10000的正整數N。 輸出格式: 在一行中輸出兔子總數達到N對
習題4-11 兔子繁衍問題(15 分)
#include<stdio.h> int main() { int N,sum=1,now=0,increase=0,month=1; scanf("%d",&N); if(sum==N) printf("%
習題4-10 猴子吃桃問題 (15 point(s))
習題4-10 猴子吃桃問題 (15 point(s)) 一隻猴子第一天摘下若干個桃子,當即吃了一半,還不過癮,又多吃了一個;第二天早上又將剩下的桃子吃掉一半,又多吃了一個。以後每天早上都吃了前一天剩下的一半加一個。到第N天早上想再吃時,見只剩下一個桃子了。問:第一天共摘了多少個桃子? 輸入格
習題4-9 列印菱形圖案 (15 point(s))
習題4-9 列印菱形圖案 (15 point(s)) 本題要求編寫程式,列印一個高度為n的、由“*”組成的正菱形圖案。 輸入格式: 輸入在一行中給出一個正的奇數n。 輸出格式: 輸出由n行星號“*”組成的菱形,如樣例所示。每個星號後跟一個空格。 輸入樣例: 7 輸出
習題4-7 最大公約數和最小公倍數 (15 point(s))
本題要求兩個給定正整數的最大公約數和最小公倍數。 輸入格式: 輸入在一行中給出兩個正整數M和N(≤1000)。 輸出格式: 在一行中順序輸出M和N的最大公約數和最小公倍數,兩數字間以1空格分隔。 輸入樣例: 511 292 輸出樣例: 73 2044 #incl
習題4-1 求奇數和 (15 point(s))
習題4-1 求奇數和 (15 point(s)) 本題要求計算給定的一系列正整數中奇數的和。 輸入格式: 輸入在一行中給出一系列正整數,其間以空格分隔。當讀到零或負整數時,表示輸入結束,該數字不要處理。 輸出格式: 在一行中輸出正整數序列中奇數的和。 輸入樣例: 8 7
習題7-8 字串轉換成十進位制整數 (15 point(s))
習題7-8 字串轉換成十進位制整數 (15 point(s)) 輸入一個以#結束的字串,本題要求濾去所有的非十六進位制字元(不分大小寫),組成一個新的表示十六進位制數字的字串,然後將其轉換為十進位制數後輸出。如果在第一個十六進位制字元之前存在字元“-”,則代表該數是負數。 輸入格式: 輸
習題5-7 使用函式求餘弦函式的近似值 (15 point(s))
習題5-7 使用函式求餘弦函式的近似值 (15 point(s)) 本題要求實現一個函式,用下列公式求cos(x)的近似值,精確到最後一項的絕對值小於e: cos(x)=x0/0!−x2/2!+x4/4!−x6/6!+⋯ 函式介面定義: double func
習題6-8 統計一行文字的單詞個數 (15 point(s))
習題6-8 統計一行文字的單詞個數 (15 point(s)) 本題目要求編寫程式統計一行字元中單詞的個數。所謂“單詞”是指連續不含空格的字串,各單詞之間用空格分隔,空格數可以是多個。 輸入格式: 輸入給出一行字元。 輸出格式: 在一行中輸出單詞個數。 輸入樣例: Let
習題7-6 統計大寫子音字母 (15 point(s))
習題7-6 統計大寫子音字母 (15 point(s)) 英文子音字母是除A、E、I、O、U以外的字母。本題要求編寫程式,統計給定字串中大寫子音字母的個數。 輸入格式: 輸入在一行中給出一個不超過80個字元、並以回車結束的字串。 輸出格式: 輸出在一行中給出字串中大寫子音字母的個
習題6-1 分類統計字元個數 (15 point(s))
習題6-1 分類統計字元個數 (15 point(s)) 本題要求實現一個函式,統計給定字串中英文字母、空格或回車、數字字元和其他字元的個數。 函式介面定義: void StringCount( char s[] ); 其中 char s[] 是使用者傳入的字串。函式StringC
練習7-11 字串逆序 (15 point(s))
練習7-11 字串逆序 (15 point(s)) 輸入一個字串,對該字串進行逆序,輸出逆序後的字串。 輸入格式: 輸入在一行中給出一個不超過80個字元長度的、以回車結束的非空字串。 輸出格式: 在一行中輸出逆序後的字串。 輸入樣例: Hello World! 輸出
習題7-3 判斷上三角矩陣 (15 point(s))
習題7-3 判斷上三角矩陣 (15 point(s)) 上三角矩陣指主對角線以下的元素都為0的矩陣;主對角線為從矩陣的左上角至右下角的連線。 本題要求編寫程式,判斷一個給定的方陣是否上三角矩陣。 輸入格式: 輸入第一行給出一個正整數T,為待測矩陣的個數。接下來給出T個矩陣的資訊:每個
習題4-5 換硬幣 (20 point(s)
習題4-5 換硬幣 (20 point(s)) 將一筆零錢換成5分、2分和1分的硬幣,要求每種硬幣至少有一枚,有幾種不同的換法? 輸入格式: 輸入在一行中給出待換的零錢數額x∈(8,100)。 輸出格式: 要求按5分、2分和1分硬幣的數量依次從大到小的順序,輸出各種換法。每行輸出
練習4-3 求給定精度的簡單交錯序列部分和 (15 point(s))
練習4-3 求給定精度的簡單交錯序列部分和 (15 point(s)) 本題要求編寫程式,計算序列部分和 1 - 1/4 + 1/7 - 1/10 + ... 直到最後一項的絕對值不大於給定精度eps。 輸入格式: 輸入在一行中給出一個正實數eps。 輸出格式: 在一行中按照“s
練習7-9 計算天數 (15 point(s))
練習7-9 計算天數 (15 point(s)) 本題要求編寫程式計算某年某月某日是該年中的第幾天。 輸入格式: 輸入在一行中按照格式“yyyy/mm/dd”(即“年/月/日”)給出日期。注意:閏年的判別條件是該年年份能被4整除但不能被100整除、或者能被400整除。閏年的2月有29天。
練習7-10 查詢指定字元 (15 point(s))
練習7-10 查詢指定字元 (15 point(s)) 本題要求編寫程式,從給定字串中查詢某指定的字元。 輸入格式: 輸入的第一行是一個待查詢的字元。第二行是一個以回車結束的非空字串(不超過80個字元)。 輸出格式: 如果找到,在一行內按照格式“index = 下標”輸出該字元在
習題6-7 簡單計算器 (20 point(s))
習題6-7 簡單計算器 (20 point(s)) 模擬簡單運算器的工作。假設計算器只能進行加減乘除運算,運算數和結果都是整數,四種運算子的優先順序相同,按從左到右的順序計算。 輸入格式: 輸入在一行中給出一個四則運算算式,沒有空格,且至少有一個運算元。遇等號”=”說明輸入結束。 輸
習題4-4 特殊a串數列求和 (20 point(s))
習題4-4 特殊a串數列求和 (20 point(s)) 給定兩個均不超過9的正整數a和n,要求編寫程式求a+aa+aaa++⋯+aa⋯a(n個a)之和。 輸入格式: 輸入在一行中給出不超過9的正整數a和n。 輸出格式: 在一行中按照“s = 對應的和”的格式輸出。 輸入樣例