在C語言中,設有char a Cb A執行語句printfd

2021-04-20 14:50:39 字數 1653 閱讀 9059

1樓:聽不清啊

設有char a='c' ,b='a' ;執行語句printf("%d,%d",b,a-b);後,輸出結果是

a、65,2

因為在c中,char 等同於一個8位有符號整數,只是內作「字元」解讀。容所以,char a='c' ,b='a' ;等同於char a=67 ,b=65; 在以%d格式輸出時的值就是 65,2

2樓:匿名使用者

選擇a,這個就是把對應的字母轉換成ascii碼值進行運算

c語言 main() { char a='1',b='2'; printf("%c",b++);printf("%d\n",b-a)} 結果是什麼?說明一下。

3樓:右傾的墮落主義

答案是:22

分析:char a='1'b='2'; //賦值,注意a b的型別為char

printf("%c",b++); //以字元型列印列印b後b才自加,所以是現打

//印出「2」後

//b的ascii碼值是50,自加後是51printf("%d\n",b-a) //這句是b的ascii碼值減去a的ascii碼值後

//以整型輸出,即51-49=2,所以輸出「2」

4樓:匿名使用者

輸出結果 22

main()

5樓:匿名使用者

22 第一個2是字元第二個2是數字

printf("%c",b++);先輸出b,再b++,b變成'3'了

printf("%d\n",b-a);b-a也就是'3'-'1'=2

c語言 有以下定義和語句 char c1='b',c2='e'; printf("%d,%c\n",c2-c1,c2-'a'+"a"); 則輸出結果是__ 20

6樓:匿名使用者

輸出結果為:3,e。

解析:c語言中的字元型別是用 ascii 碼儲存運算的回,運算 c2-c1時,等答

於 'e'-'b',等於'e'的 ascii 碼 101 -  'b'的 ascii 碼 98,等於 3 ,又因為 printf 輸出式樣化字串中使用規定符%d輸出,所以是直接輸出整型資料 3。

而運算 c2-'a'+"a"等價於 'e'-'a'+"a",等價於'e'的ascii 碼-'a'的ascii 碼+"a"的ascii 碼='e'的ascii 碼。而printf 輸出式樣化字串中使用規定符%c輸出結果,說以是輸出字元 e。

因此,最終輸出結果為:3,e。

7樓:匿名使用者

字元會被轉成asc碼當整數計算!!!c2-c1 = 'e'-'b' = 3;中間相隔三個嘛,連續的字元肯定是相隔1的,不然就專

不符合屬設計原理!! c2-'a'+'a' 不用想,肯定是小寫轉大寫,應該是'e'; 一個大寫字元和小寫字元做差,就是大寫字元和小寫字元之間的asc碼差碼!!再加上一個小寫字元,就是小寫轉大寫

8樓:匿名使用者

應該是printf("%d,%c\n",c2-c1,c2-'a'+'a');

c2-c1='e'-'b'=3

c2-'a'+'a' = 'e'

輸出結果為3,e

在c語言中以下合法的字元常量是在C語言中,以下合法的字元常量是

選ca 有雙引號,是字串 b 單引號裡只能一個字元 d 0表明是8進位制,只能出現0 7的數字e 書寫不完整,右半邊的單引號沒了 答案是c。各答案解析 a 有雙引號,是字串 b 單引號裡只能一個版字元 d 0表明是8進位制,只 能出現權0 7的數字 e 書寫不完整,右半邊的單引號沒了 拓展 在c語言...

在c語言中,intppintmalloc

int 是一個整體,被編譯器識別解釋為整型指標,而不是你想當然的認為是 int p,你學的譚浩強的書?坑人不淺啊。永遠跟著型別,而不是變數。除非你想間址 malloc 是一個函式,int 的意思是分配的空間轉強制換成變數p的型別 因為p是 int 型別,也就是整型指標 你去看下動態連結串列的建立方法...

Is在C語言中什麼意思想知道c語言中is表示什麼意思

is 是你這個程式裡自己設定的變數吧。吧程式發出來 就知道了 is不是c的關鍵字,算了我把這個表複製給你,你看不在這裡面的就證明不是c的關鍵字,沒有特別的意思 關鍵字共有 32個 p375 auto break case char const continue default dodouble el...