求C語言經典題目,誰有C語言的經典題目

2023-02-14 05:10:14 字數 2061 閱讀 7602

1樓:匿名使用者

c語言名題精選百則技巧篇 很不錯的一本書,你去看看。

誰有c語言的經典題目

c語言經典題目

2樓:網友

最短時間是這樣的。

以本例子說。

最快2人過 時間2

最快人回 時間1

最慢2人過 時間10

最快人回 時間2

最快2人過 時間2

一共17演算法就是這樣過河以最快2人和最慢2人交替進行,回來時候都是對岸最快的人回來。

ps:這個是**的acm?

這樣寫出**不難吧。

就是先將時間排序,然後按上面演算法計算。

3樓:匿名使用者

試用例次數的整數t是什麼。

船是兩邊來回送人,還是單向送人。

看不懂問題。

4樓:匿名使用者

1.正確的演算法:

如果n=3, 過河時間為a+b+c

如果n<=2, 好算, 不費口舌了。

如果n>=4, 這個是重點:

每次優先考慮把最慢兩人送過河。

把n人中最快兩人記為a,b, 最慢兩人記為c,d(過河時間a記ab過河, a回, cd過河, b回, 為方法x, 實質是利用最快兩人進行優化, 耗時a+2b+d

記ad過河, a回, ac過河, a回, 為方法y, 實質是利用最快一人來過河, 耗時2a+c+d

每次比較這兩個方法, 如果x快, 使用x方法, 如果y快, 則用y, 並且, 一旦某次使用y方法後, 以後都不用比較了, 全部使用y方法過河。

2.演算法正確性證明:

為什麼每次先讓最慢兩人過河? 因為他們遲早要過河。早過晚過一樣, 而晚過的話, 有可能時間不能被優化, 所以選擇最先過。

為什麼是兩人, 不是三人? 因為這船一次只能兩人, 三人問題和兩人問題的優化一樣, 所以一次考慮三人毫無意義, 同理, 三人以上不加考慮。

為什麼某次用y過河後不用再比較xy了?

先看這個例子:

用x方法是99+1+101+99= 300

y方法是 101+1+100+1 = 203

y比x快的原因是2a+c+d < a+2b+d, 即 a+c<2b

容易想到, 從此以後a+c都會小於2b了(因為c越來越小)

3.補充:演算法分析就到這裡了, 至於具體的程式。樓主既然是acmer, 這個應該不困難。

當然, 如果樓主需要的話, 也可以給出程式。

5樓:匿名使用者

有些不懂。我也是初學者。進來看看141 5 2 10

那麼最短時間不應該是。

5+1+2+1+10=19 麼?

我錯了?!`

誰有c語言經典題目?

求c語言經典例題與答案

6樓:匿名使用者

我這裡有一份。

是基礎的。傳你郵箱了。

求c語言典型題目 可追加分!!!

一道經典的c語言題目。不看後悔。

7樓:匿名使用者

define 巨集定義 不作任何修改的帶進去 在程式編譯階段就替換 不佔程式的執行時間 例如 #define f(a,a) a*a

f(3+3,3+3)=3+3*3+3

它不做任何調整 只是把定義了的替換。

8樓:于于祥祥

把巨集定義直接帶進去就可以了,得自己試試,不能老是讓別人幫你,真心的。

9樓:網友

簡單的要死 去看下預處理命令這一章就知道怎麼做了。

10樓:網友

把巨集定義帶進去就行了,自己算一下。

求c語言經典例題100道,word版或電子書版,,謝謝,非常感謝。

11樓:普通卡

樓上正解。你去c語言吧問,我當初是在那找到的。

經典的c語言指標問題題目,一個經典的c語言指標問題題目

for p m 1 p 其中的p m 1並不改變p的值,所以p仍然指向a 0 因此,多加了a 0 和a 1 其中的p m 1並不改變p的值,所以p仍然指向a 0 因此,多加了a 0 和a 1 如果按我說的是 p a m 1 那麼p a 3 1 a 2,也就是說p從a 2 開始加,a 2 是3,從3開...

c語言題目,求詳細解答,c語言題目,求詳細解答步驟,謝謝。

x x 0 x 0 x 10 x 10 x 20 分解為x x x x 這樣就比較清楚了 c語言題目,求詳細解答步驟,謝謝。x 5,y 10,呼叫fun時,開設臨時變數x和臨時變數y,與主程式中並非同一變數,因此內可以寫成 void fun int xx,int yy fun xx 5,yy指向y,...

C語言結構體題目,c語言結構體題目

p為結構 st的指標 陣列a 3 為結構 st的陣列 既有3個st,每個結構 st裡有2個元素,所以有6個數值 第三問 a為陣列a 3 第一個元素a 0 的地址 p a,將陣列a的地址賦值給p,p指向a 0 p x 即為a 0 x 樓主學結構應該知道 dt 0 指取dt 0 的地址 第二問 a 0 ...