c語言轉換
『壹』 c語言中如何進行數據轉換
強制轉換
比如
int
n=5;
char
c;
c=(char)n;
直接賦值
c
=
n;
不推薦
有些類型的轉換編譯器可能會給出警告
而且這樣的編程風格不好
其他方法
我
也
不
知
道
『貳』 C語言數據類型轉換
在C語言中,short類型數據的范圍是-32768~32767,下面程序段的輸出結果為0。short i=65536;printf("%d\n",i);
造成這樣的原因是發生了「溢出」。就好比假設你有一把算盤,只有四個檔位,每個檔位只有五粒珠子,當然,它能存儲的最大數就是9999,但是你要再給他加一,他就變成了0,因為他把進位給丟失了。
『叄』 c語言中如何把A和a轉換
需要准備的材料分別有:電腦、C語言編譯器。
1、首先,打開C語言編譯器,新建一個初始.cpp文件,例如:test.cpp。
『肆』 c語言,如何進行日期格式轉換
time.h 有函數 strftime 輸出各種格式,但沒有 你的 11th 13rd 格式。
簡單辦法是用查表法
#include "stdio.h"
#include "stdlib.h"
void main()
{
char dmy[20]="13/12/2010";
int i,j;
int a,b,c;
char d[32][5]={"0","1st","2nd","3rd","4th","5th","6th","7th","8th","9th","10th",
"11th","12th","13rd","14th","15th","16th","17th","18th",
"19th",.....,"31st"}; // 請自己補全
char m[13][4]={" ","Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"};
j = strlen(dmy);
printf("j=%d\n",j);
for (i=0;i<j ;i++) if ( dmy[i] =='/') dmy[i]=' ';
sscanf(dmy,"%d %d %d",&a,&b,&c);
printf("%s %s %d",d[a],m[b],c); // 列印出你要的 13rd Dec 2010
}
『伍』 c語言強制類型轉換
1、int a;int b;double c = (double) a;double c = (double) b;int a = (int) c;這就是一種強制轉變方法。
『陸』 怎麼用c語言把A轉換成B
#include<stdio.h>
intmain(void)
{
puts("請輸入字元");
if(getchar()=='A'){
putchar('B');
}
return0;
}
『柒』 c語言轉換
C語言都是向高精度的類型轉換,
有0.5參與運算,就轉成double類型了。
『捌』 怎樣用簡單C語言將A轉化成a
最簡單的方法就是:
char c = 'A'+32
void main()
{
char c='a'-32;
printf("c %c",c);
getch();
}
(8)c語言轉換擴展閱讀
算術運算符
用於各類數值運算。包括加(+)、減(-)、乘(*)、除(/)、求余(或稱模運算,%)、自增(++)、自減(--)共七種。
關系運算符
用於比較運算。包括大於(>)、小於(<)、等於(==)、 大於等於(>=)、小於等於(<=)和不等於(!=)六種。
邏輯運算符
用於邏輯運算。包括與(&&)、或(||)、非(!)三種。
位操作運算符
參與運算的量,按二進制位進行運算。包括位與(&)、位或(|)、位非(~)、位異或(^)、左移(<<)、右移(>>)六種。
『玖』 C語言中的轉換
計算機中常用的數的進制主要有:二進制、八進制、十六進制,學習計算機要對其有所了解。
2進制,用兩個阿拉伯數字:0、1;
8進制,用八個阿拉伯數字:0、1、2、3、4、5、6、7;
10進制,用十個阿拉伯數字:0到9;
16進制就是逢16進1,但我們只有0~9這十個數字,所以我們用A,B,C,D,E,F這五個字母來分別表示10,11,12,13,14,15。字母不區分大小寫。 以下簡介各種進制之間的轉換方法:
一、二進制轉換十進制
例:二進制 「1101100」
1101100 ←二進制數
6543210 ←排位方法 例如二進制換算十進制的演算法:
1*26 + 1*25 + 0*24 + 1*23 + 1* 22 + 0*21 + 0*20
↑ ↑
說明:2代表進制,後面的數是次方(從右往左數,以0開始)
=64+32+0+8+4+0+0
=108 二、二進制換算八進制
例:二進制的「10110111011」
換八進制時,從右到左,三位一組,不夠補0,即成了:
010 110 111 011
然後每組中的3個數分別對應4、2、1的狀態,然後將為狀態為1的相加,如:
010 = 2
110 = 4+2 = 6
111 = 4+2+1 = 7
011 = 2+1 = 3
結果為:2673 三、二進制轉換十六進制
十六進制換二進制的方法也類似,只要每組4位,分別對應8、4、2、1就行了,如分解為:
0101 1011 1011
運算為:
0101 = 4+1 = 5
1011 = 8+2+1 = 11(由於10為A,所以11即B)
1011 = 8+2+1 = 11(由於10為A,所以11即B)
結果為:5BB 四、二進制數轉換為十進制數
二進制數第0位的權值是2的0次方,第1位的權值是2的1次方……
所以,設有一個二進制數:0110 0100,轉換為10進制為:
計算: 0 * 20 + 0 * 21 + 1 * 22 + 0 * 23 + 0 * 24 + 1 * 25 + 1 * 26 + 0 * 27 = 100 五、八進制數轉換為十進制數
八進制就是逢8進1。
八進制數採用 0~7這八數來表達一個數。
八進制數第0位的權值為8的0次方,第1位權值為8的1次方,第2位權值為8的2次方……
所以,設有一個八進制數:1507,轉換為十進制為:
計算: 7 * 80 + 0 * 81 + 5 * 82 + 1 * 83 = 839
結果是,八進制數 1507 轉換成十進制數為 839 六、十六進制轉換十進制
例:2AF5換算成10進制
直接計算就是: 5 * 160 + F * 161 + A * 162 + 2 * 163 = 10997
(別忘了,在上面的計算中,A表示10,而F表示15)、 現在可以看出,所有進制換算成10進制,關鍵在於各自的權值不同。
假設有人問你,十進數 1234 為什麼是 一千二百三十四?你盡可以給他這么一個算式: 1234 = 1 * 103 + 2 * 102 + 3 * 101 + 4 * 100 十進制與二進制轉換之相互演算法
十進制轉二進制: 用2輾轉相除至結果為1 將余數和最後的1從下向上倒序寫 就是結果 例如302 302/2 = 151 餘0 151/2 = 75 餘1 75/2 = 37 餘1 37/2 = 18 餘1 18/2 = 9 餘0 9/2 = 4 餘1 4/2 = 2 餘0 2/2 = 1 餘0 故二進制為100101110 二進制轉十進制 從最後一位開始算,依次列為第0、1、2...位 第n位的數(0或1)乘以2的n次方 得到的結果相加就是答案 例如:01101011.轉十進制: 第0位:1乘2的0次方=1 1乘2的1次方=2 0乘2的2次方=0 1乘2的3次方=8 0乘2的4次方=0 1乘2的5次方=32 1乘2的6次方=64 0乘2的7次方=0 然後:1+2+0 +8+0+32+64+0=107. 二進制01101011=十進制107. 一、二進制數轉換成十進制數 由二進制數轉換成十進制數的基本做法是,把二進制數首先寫成加權系數展開式,然後按十進制加法規則求和。這種做法稱為"按權相加"法。 二、十進制數轉換為二進制數 十進制數轉換為二進制數時,由於整數和小數的轉換方法不同,所以先將十進制數的整數部分和小數部分分別轉換後,再加以合並。 1. 十進制整數轉換為二進制整數 十進制整數轉換為二進制整數採用"除2取余,逆序排列"法。具體做法是:用2去除十進制整數,可以得到一個商和余數;再用2去除商,又會得到一個商和余數,如此進行,直到商為零時為止,然後把先得到的余數作為二進制數的低位有效位,後得到的余數作為二進制數的高位有效位,依次排列起來。 2.十進制小數轉換為二進制小數 十進制小數轉換成二進制小數採用"乘2取整,順序排列"法。具體做法是:用2乘十進制小數,可以得到積,將積的整數部分取出,再用2乘餘下的小數部分,又得到一個積,再將積的整數部分取出,如此進行,直到積中的小數部分為零,或者達到所要求的精度為止。 然後把取出的整數部分按順序排列起來,先取的整數作為二進制小數的高位有效位,後取的整數作為低位有效位。 1.二進制與十進制的轉換 (1)二進制轉十進制<BR>方法:"按權展開求和" 例: (1011.01)2 =(1×23+0×22+1×21+1×20+0×2-1+1×2-2)10 =(8+0+2+1+0+0.25)10 =(11.25)10 (2)十進制轉二進制 · 十進制整數轉二進制數:"除以2取余,逆序輸出" 例: (89)10=(1011001)2 2 89 2 44 …… 1 2 22 …… 0 2 11 …… 0 2 5 …… 1 2 2 …… 1 2 1 …… 0 0 …… 1 · 十進制小數轉二進制數:"乘以2取整,順序輸出" 例: (0.625)10= (0.101)2 0.625 X 2 1.25 X 2 0.5 X 2 1.0 2.八進制與二進制的轉換 例:將八進制的37.416轉換成二進制數: 37 . 4 1 6 011 111 .100 001 110 即:(37.416)8 =(11111.10000111)2 例:將二進制的10110.0011 轉換成八進制: 0 1 0 1 1 0 . 0 0 1 1 0 0 2 6 . 1 4 即:(10110.011)2 =(26.14)8 3.十六進制與二進制的轉換<BR>例:將十六進制數5DF.9 轉換成二進制: 5 D F . 9 0101 1101 1111.1001 即:(5DF.9)16 =(10111011111.1001)2 例:將二進制數1100001.111 轉換成十六進制: 0110 0001 . 1110 6 1 . E 即:(1100001.111)2 =(61.E)16