1樓:吉祥二進位制
本身字元型別即為整型的一種,當把大位元組的整型資料型別比如int型別以字元型別的形式輸出時,一般輸出函式會對大位元組整數型別進行截斷操作,它等同於將大位元組整型變數、常量轉換為小位元組的整型變數、常量。比如下面的**:
#include
int main(void)
把unsgined型別作為char型別輸出時,執行的結果是61即小寫字母'a'的ascii碼值。
2樓:雨辰星夜
因為0-255的整數與其對應的字元是無條件等價的。
3樓:月月相望
可以字元型資料與整數的關係
等價關係 不等價關係
char c1,c2;
c1=97; c2=99;
printf("%d,%d",c1,c2);
printf("%c,%c",c1,c2);
c1=c1-32;c2=c2-32;
printf("%d,%d",c1,c2);
printf("%c,%c",c1,c2);
不等價關係
int i; 2位元組 char c; 1位元組i=c;
如c<=127,正常
如c>127,i為負數。
原因:符號位擴充套件
4樓:吉祥弓長
可以c語言字元是用ascii的值儲存的
ascii有對應的數值可以轉換為int型的,
5樓:dota大隊長
可以。先要明白c1,c2變數的定義,是一個儲存單元,好比兩個能裝東西的「盒子」,計算機的記憶體就是由這些「盒子」構成。
但是這種「盒子」,只能裝0和1這兩種數字資訊。我們可以把97,98十進位制數字換成2進位制的0,1存進這些盒子裡。那字元怎麼存呢?
c語言裡利用ascii碼,可以把97等價於「a」字元,也就是說(97='a' ),把字元a換成數字97,再換成2進位制形式存入「盒子」裡面。【具體ascii碼有一張表,c語言書後都應該有附錄。】
在記憶體(即大盒子)裡面,字元資料(如:a)以ascii碼(即換化成相應的數字)儲存,其儲存形式就與整數的儲存形式類似。因此字元型資料與整形資料間可以通用。
c語言怎麼用printf函式分別以字元形式和整數形式輸出字母,求高手解答
6樓:亂世傾塵心
#include
void main()
就是這樣的,因為c語言中字元型和int型的資料是可以交換的,你所謂的68是d這個字元的ascii碼,希望你能明白。
7樓:飄e小鞋
# include
int main()
char c;
c = 'd';
printf("%c ",c); //%c是字元輸出控制符控制printf("%d\n",c); //每個字母都有對應的ascii值(十進位制)%d是十進輸出控制符
return 0;
執行結果:
--------- 物聯網校企聯盟技術部
8樓:我是楊凱凱
printf("%d %c",c,c);
%d 輸出十進位制
%c 輸出字元型
9樓:
printf("%c %d\n",c,c);
c語言中如何將字串轉化成整數型並輸出?
10樓:刺蝟
在c語言中將字串轉化成整型有兩種方法。
1 用atoi函式。
atoi的功能就是將字串轉為整型並返回。其宣告為int atoi(char *str);
比如atoi("1234");會返回整型1234。
2 用sscanf。
sscanf與標準格式化輸入函式scanf類似,不過源並非是標準輸入,而是字串。
用sscanf可以處理更復雜的字串。
比如字串char * str = "a=1, b=2";
定義int a,b;後
可以用
來將a,b值提取,計算後,a=1, b=2。
11樓:匿名使用者
number 必定是字元陣列
char number[5]="1234"; //字元 1,2,3,4 的ascii值分別是81,82,83,84 所以減去『0』(80)
int i,j=0,k=1;
for(i=0;number[i];i++)number[i]-='0';
i--;
for(;i>=0;i--)
printf("%d",j); //這樣就轉換成數字1234了用printf輸出的話 字元陣列中存放的是字串可以直接全部輸出其他的陣列就只有一個個的輸出了
12樓:金色潛鳥
用 sscanf。
char s[20]="1234 5678";
int number,n2;
printf("number is: %d and number2 is: %d\n",number, n2);
*****===
陣列,用迴圈語句輸出:
int numbers[10]=;
int i;
for (i=0;i<10;i++) printf("%d ",numbers[i]);
13樓:匿名使用者
char a[10];
int s=0,i=0;
while(a[i])
14樓:匿名使用者
強制型別轉換啊!char a,int b; b=int(a)
15樓:匿名使用者
#include
#include
void main()
;int n;
n=atoi(number);
printf("%s\n",number); //後面的問題沒看懂是什麼需求}
[c語言]怎樣把整型轉變為字元型?
16樓:四舍**入
使用itoa函式。
原型:extern char *itoa(int i);
參考**:
#include
#include
int main()
/*擴充套件資料:注意事項
itoa() 函式專有3個引數屬:第一個引數是要轉換的數字,第二個引數是要寫入轉換結果的目標字串,第三個引數是轉移數字時所用的基數(進位制)。在上例中,轉換基數為10,就意味著以10為轉換進位制。
10:十進位制;2:二進位制。
itoa 並不是一個標準的c函式,它是windows特有的,如果要寫跨平臺的程式,請用sprintf。
標準庫中有sprintf,功能比這個更強,用法跟printf類似:
17樓:匿名使用者
整型轉成字串可以使用:庫函式itoa,需要引入標頭檔案stdlib.h。
itoa:
原型:回itoa (int,char*,int)功能:把整數答i轉換成字串。
itoa()函式有3個引數:第一個引數是要轉換的數字,第二個引數是要寫入轉換結果的目標字串,第三個引數是轉移數字時所用的基數。10:十進位制;2:二進位制...
參考**:
#include
#include
int main()
/*執行結果:
125*/
18樓:千鋒教育
//可以使用 itoa 函式
#include
void main()
19樓:匿名使用者
itoa
原型:extern char *itoa(int i);
用法:#include
功能:把整數i轉換成字串
說明:返回指向轉換後的內字串的指標
舉例容:
// itoa.c
#include
#include
main()
20樓:匿名使用者
可以這復樣用ascii碼來轉換
ascii碼從
制48~58分別是0,1,2...9
int a=3;
char b;
b=char(a+48);
然後b就是字元'3'了
bai#include
char mychar[100];//定義一個無限du大的字元陣列來存zhi
放所生成的字元 不過最好使用
daoc的動態記憶體分配
int i=0;
char* function(int a)function(a/10);
mychar[i++]=char(48+a%10);//轉化為字串使用ascii碼來轉換
return mychar;
}void main()
c語言char輸出字串是亂碼,C語言,字串輸出是亂碼
重點是creatlist這個函式,datac必須是malloc分配出來的記憶體,不然就會出問題.應該是這樣的 p pdata malloc 256 scanf s p pdata 傑大哥哈哈哈 asadrcvs5 2 f amng bkuqte lzlr kxojfrc eqsauzx 夫婿久離別,...
C語言,字串陣列的輸出,C語言 如何定義字串陣列
自我程式設計 getch 這句多餘,只是列印而已不需要這個函式接收字元。printf s n ch 0 printf s n ch 1 printf s n ch 2 這3句列印,第2個傳參和printf函式形參型別不一致,函式需要的是char 而你給的是char 12 執行可以,但會有警告。你想要...
c 怎麼輸入字串,C語言輸入輸出字串
c 中常見的幾種輸入字串的方法如下 cin 狹義 通過閱讀 聽講 研究 觀察 理解 探索 實驗 實踐等手段獲得知識或技能的過程,是一種使個體可以得到持續變化 知識和技能,方法與過程,情感與價值的改善和昇華 的行為方式。例如通過學校教育獲得知識的過程。廣義 是人在生活過程中,通過獲得經驗而產生的行為...