藍橋基礎練習 十六進製制轉十進位制

2021-07-25 08:55:37 字數 601 閱讀 3486

問題描述

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

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

樣例輸入

ffff

樣例輸出

65535

思路:16進製制轉10進製,方法就是展開每一位,最後一位*16的0次方,倒數第二位*16的一次方,倒數第三位*16的3次方。。。。

在將得到的結果相加的和就是我們要的10進製數,輸入16進製制數因為有字母用gets輸入,因為最後一位是*16的0次方,所以將陣列倒著來,假如這位數是數字將他-『0』就將字元的數字變成數字,假如是字母則-『a』在+10就得到數字,在求和。

注意:本題輸入的不超過8位的16進製制數,轉成10進製挺大的,我這裡用了double在輸出時用%.0lf,就可以解決了。

**:

#include #include #include int main(void)

if (a[i]<='f'&&a[i]>='a')

z++; //次方加1

} printf("%.0lf",s);

return 0;

}

C程式 藍橋 基礎練習 十進位制轉十六進製制

問題描述 十六進製制數是在程式設計時經常要使用到的一種整數的表示方式。它有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,以此類推...

藍橋基礎練習 十進位制轉化為十六進製制

問題描述 十六進製制數是在程式設計時經常要使用到的一種整數的表示方式。它有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,以此類推...

藍橋杯基礎練習 十進位制轉十六進製制

問題描述 十六進製制數是在程式設計時經常要使用到的一種整數的表示方式。它有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,以此類推...