1樓:
當執行下面兩個語句後,輸出的結果為97 b。
a的ascii碼是97,b的ascii碼是98。
%d表示資料版按十進位制有符號
權整型數輸入或輸出,%d列印的是整形為97。
%c列印的是字元,為b。
所以,輸出的結果為97 b。
擴充套件資料printf中分別代表的輸出型別
%a(%a):浮點數、十六進位制數字和p-(p-)記數法(c99)%f:浮點數(包括float和doulbe)%e(%e):
浮點數指數輸出[e-(e-)記數法]%g(%g):浮點數不顯無意義的零"0"
%i:有符號十進位制整數(與%d相同)
%u:無符號十進位制整數
%o:八進位制整數 e.g. 0123
%x(%x):十六進位制整數0f(0f) e.g. 0x1234%p:指標
%s:字串
%%:"%"
2樓:匿名使用者
a的ascii是97;b的是98
%d列印的是整形為97
%c列印的是字元為b
結果是97,b
c語言 有以下定義和語句 char c1='b',c2='e'; printf("%d,%c\n",c2-c1,c2-'a'+"a"); 則輸出結果是__ 20
3樓:匿名使用者
輸出結果為: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。
4樓:匿名使用者
字元會被轉成asc碼當整數計算!!!c2-c1 = 'e'-'b' = 3;中間相隔三個嘛,連續的字元肯定是相隔1的,不然就專
不符合屬設計原理!! c2-'a'+'a' 不用想,肯定是小寫轉大寫,應該是'e'; 乙個大寫字元和小寫字元做差,就是大寫字元和小寫字元之間的asc碼差碼!!再加上乙個小寫字元,就是小寫轉大寫
5樓:匿名使用者
應該是printf("%d,%c\n",c2-c1,c2-'a'+'a');
c2-c1='e'-'b'=3
c2-'a'+'a' = 'e'
輸出結果為3,e
c語言中for語句是怎麼用的c語言中兩個for語句的是怎樣迴圈的
c語言中for語句用法 for是c語言中的乙個關鍵字,主要用來控制迴圈語句的執行。舉例 int i for i 0 i 3 i i 0是初始化部分 i 3是迴圈判斷條件部分 當滿足此條件時才進入執行for迴圈中的語句 i 是執行完迴圈體語句後的操作 上面的for語句就是控制輸出3次helloworl...
c語言兩個for語句怎麼迴圈的,比如像下圖的那樣
裡面bai 就才乙個for啊,你這個程式是du 將陣列c 10 裡的數依zhi次輸出吧,dao結果應該是 1234567890pressanykeytocontinue因為你的回printf n 沒包含答在for裡面,所以只能是到最後輸出0了才有乙個回車,結束程式。而你的另乙個函式voidfun i...
c語言中斜槓的註釋和兩個斜槓的註釋完全相同嗎
沒有三個斜槓的 表示這一行註釋 表示這段裡面註釋 doxygen 中可以通過 來標明這條註釋會被用於文件生成。當然,在正常編譯過程中這和普通的註釋都會被直接忽略。現在的c語言中有雙斜槓註釋嗎 最新的標準是支援的,可以單行 也可以多行 以前的c89貌似不行 如何編乙個c語言程式,功能是去掉 中的雙斜槓...