C 程式設計題集(包括部分牛客程式設計題)(一)

2021-10-07 05:52:43 字數 2965 閱讀 4115

//最大的求冪值位數

int result[n]

;int temp[n]

;int

main()

result[0]

=1;int m =0;

int cs[6]

=;//用來儲存去掉小數點後的整數,

int pos;

for(

int i = str.

size()

-1; i >=

0; i--

)//去除小數點

else pos = i;

//記錄小數點的位置

}int point =(5

- pos)

*n;//小數點在這個位置的前一位

for(

int i =

0; i < n; i++

)for

(int j =

0; j <

5; j++

)for

(int k =

0; k < n; k++

)//處理進製 }}

for(

int j =

0; j < n; j++

) result[j]

= temp[j]

;//轉存

}int l =0;

while

(!result[l]

&& l < point) l++

;int r = n -1;

//r=149

while

(!result[r]

&& r >= point) r--

;for

(int i = r; i >= point; i--

) cout << result[i]

;//先輸出小數點後面的

if(l < point) cout <<

".";

//如果是小數,那麼輸出小數點

for(

int i = point -

1; i >= l; i--

) cout << result[i]

;//再輸出小數點前面的

cout << endl;

}return0;

}當n值不是大時,我們可以採用較為簡單,且易懂的方式來寫。

#include

using

namespace std;

intmain()

cout<

return0;

}

但當這個n值太大時,這個**就不行了

那麼對於大數問題,我們就需要考慮用陣列來做了。

#include

using

namespace std;

const

int maxx =

5000

;int str[maxx]

;void

cal(

int n)

str[1]

=1;int j;

int len=

1, c =0;

for(

int i =

2; i <= n; i++

)while

(c>0)

len = j -1;

}for

(int j = len; j >=

1; j--

) cout << str[j]

; cout <<

"\n";}

intmain()

}

#include

using

namespace std;

intmain()

a[m]

= n;

//儲存最後一位

for(

int i = m; i >=

0; i--

)//倒著輸出

牛客 程式設計題 洗牌C

鏈結 洗牌在生活中十分常見,現在需要寫乙個程式模擬洗牌的過程。現在需要洗2n張牌,從上到下依次是第1張,第2張,第3張一直到第2n張。首先,我們把這2n張牌分成兩堆,左手拿著第1張到第n張 上半堆 右手拿著第n 1張到第2n張 下半堆 接著就開始洗牌的過程,先放下右手的最後一張牌,再放下左手的最後一...

牛客網程式設計題

參考了排行榜大神 1.計算字串最後乙個單詞的長度,單詞以空格隔開 a raw input b a.split print len b 1 2.寫出乙個程式,接受乙個有字母和數字以及空格組成的字串,和乙個字元,然後輸出輸入字串中含有該字元的個數。不區分大小寫 a raw input lower b r...

牛客 程式設計題 組隊競賽c

牛牛舉辦了一次程式設計比賽,參加比賽的有3 n個選手,每個選手都有乙個水平值a i.現在要將這些選手進行組隊,一共組成n個隊伍,即每個隊伍3人.牛牛發現隊伍的水平值等於該隊伍隊員中第二高水平值。例如 乙個隊伍三個隊員的水平值分別是3,3,3.那麼隊伍的水平值是3 乙個隊伍三個隊員的水平值分別是3,2...