藍橋杯學習記錄 21 2 26

2021-10-21 08:25:52 字數 1541 閱讀 9899

1、問題描述

資源限制

時間限制:1.0s 記憶體限制:512.0mb

問題描述

十六進製制數是在程式設計時經常要使用到的一種整數的表示方式。它有0,1,2,3,4,5,6,7,8,9,a,b,c,d,e,f共16個符號,分別表示十進位制數的0至15。十六進製制的計數方法是滿16進1,所以十進位制數16在十六進製制中是10,而十進位制的17在十六進製制中是11,以此類推,十進位制的30在十六進製制中是1e。

給出乙個非負整數,將它表示成十六進製制的形式。

輸入格式

輸入包含乙個非負整數a,表示要轉換的數。0<=a<=2147483647

輸出格式

輸出這個整數的16進製表示

樣例輸入

樣例輸出

1e

2、解題思路

(1)十進位制轉換為十六進製制,可以用不斷地除以16「取餘數」的方法得到,例如:

十進位制 17852 轉化為十六進製制,

17852/16 = 1115 餘 12 – c

1115/16 = 69 餘 11 – b

69/16 = 4 餘 5

4/16 = 0 餘 4

得到十六進製制45bc

(2)然後用強制轉化將十六進製制中的數變成字元的形式,如本題中的「a[j]=char(s[j])+48」

3、**

#include#include using namespace std;

int main()

for(j=0; j=0; i--)

cout<1、學習名稱及鏈結

[進製轉換]

(2、學習心得

(1)n進製的每位上的權值都是n

(2)十六進製制轉換成十進位制的公式是:要從右到左用二進位制的每個數去乘以16的相應次方,然後這些數字相加就是了。

例如2af5換算成10進製:

第0位: 5 * 16^0 = 5

第1位: f * 16^1 =15*16^1= 240

第2位: a * 16^2= 10* 16^2=2560

第3位: 2 * 16^3 = 8192

結果就是:5 * 16^0 + 15 * 16^1 + 10 * 16^2 + 2 * 16^3 = 10997

3、對應練習

十六進製制轉十進位制

(1)題目描述

資源限制

時間限制:1.0s 記憶體限制:512.0mb

問題描述

從鍵盤輸入乙個不超過8位的正的十六進製制數字串,將它轉換為正的十進位制數後輸出。

注:十六進製制數中的10~15分別用大寫的英文本母a、b、c、d、e、f表示。

樣例輸入

ffff

樣例輸出

(2)**#include

#include

char str[10]

;int num[10]

;int

main()

printf

("%i64d\n"

,sum);}

return0;

}

藍橋杯學習記錄1

數列特徵 給出n個數,找出這n個數的最大值,最小值,和 解題思路 在解決數列特徵問題時運用到了陣列,先利用乙個迴圈,將輸入的數字放入到陣列中,目的是為了每個數字都有下角標,在解決最大值與最小值時,先設定第乙個數字為最小值和最大值,再利用迴圈,將第二個數字和第乙個數字進行比較,依次方法最終找到最大值和...

藍橋杯學習記錄2

楊輝三角 楊輝三角形又稱pascal三角形,它的第i 1行是 a b i的展開式的係數。它的乙個重要性質是 三角形中的每個數字等於它兩肩上的數字相加。下面給出了楊輝三角形的前4行 1 11 2 1 1 3 3 1 給出n,輸出它的前n行 解題思路 在解決楊輝三角問題時,關鍵在於是否找到了楊輝三角的規...

藍橋杯學習記錄 21 2 21

1 問題描述資源限制 時間限制 1.0s 記憶體限制 256.0mb 問題描述 利用字母可以組成一些美麗的圖形,下面給出了乙個例子 abcdefg babcdef cbabcde dcbabcd edcbabc 這是乙個5行7列的圖形,請找出這個圖形的規律,並輸出乙個n行m列的圖形。輸入格式 輸入一...