1樓:百事通可可
在 c 語言中,字元在內旅唯飢存中是以 ascii 碼的形式儲存的。'a' 的 ascii 碼值是 65,'\375' 是乙個八進位的字元常量,其十進位值是 253。
當我們對兩拆返個字元進行取模運算時,實際上是對他們的 ascii 碼值進行取模運算。因此,我們計山禪算的是 65 % 253,而這個值就等於 65,因為 65 小於 253。所以,c1 % c2 的結果是 65,而不是 2。
如果你得到的結果是 2,那麼可能是環境的問題或者其他未考慮到的因素,你可以再次確認你的環境和輸入。
2樓:魔那個
#include
int main()
char c1 = a';
char c2 = 375';
printf("%d", c1 % c2);
return 0;
這段**主要分宴御為三個部分:
在第2行和第3行,定義了兩個字元型別的變數c1和c2,分別初始化為字元'a'和字元\375。字元\375是乙個八進位轉義序列,它代表十進位數字375,超出了ascii碼錶中的字元範圍(0~127),因此它的值被強制轉換為char型別後,實際上是字元-3。
在第4行,呼叫了printf()函式,使用格式化字串%d輸出變數c1對變數c2取模的結果。由於%d格式化符號表示輸出乙個整數,因此printf()函式會將c1 % c2的結果轉換為整數並輸出。
在第5行,main()函式返回了乙個整數值0,表示程式正常結束襲祥信。
因此,這段**的作用是輸出變數c1對變數c2取模的結果,即65 % 3)的結果。根據c語言的整數除法規則,當除數為負數時,商向0取整,餘數與除數符號相同。因拍輪此,65 % 3)的結果應該是2。
因此,程式的輸出結果應該是2。
char c1='b',c2='e';,則執行語句printf("%c,(c2,c1))輸出結果為
3樓:一嘆
執行語句printf(「%c」,(c2,c1))輸出結果為的結果為字元『b』。
語句的執行流程:
首先定義了兩個字元變數,分別賦值為字元b和字元c,然後執行輸出語句,當執行輸出語句時,因為輸出的是乙個表示式,所以對表示式進行分析,逗號運算子會依次執行,並且輸出最後乙個表示式的值。
所以輸出的變數c1的值,所以輸出為字元b。
4樓:網友
逗號運算子,依次執行各表示式,並以最後乙個表示式的值作為最終結果。
c2,c1,結果為c1的值,就是'b'
輸出結果為b
若有char c='\95';則變數c包含多少個字元。 a 1 b 2 c 3 d 語法錯誤?
5樓:帳號已登出
選擇答案d。
若有char c='\95';則變數c包含多少個字元。這是錯誤的。
因為'\ddd'形式的轉義字元,在\後面,可以跟1~3個八進位數符,即必須是0~7範圍內的數字,才可用來表示乙個相應ascii值的字元。
只有乙個字元,這個字元的值為ascii值95,所對應的字元就是:95=>
若用這個。#include ">
void main()
char c='\95';
printf("%c",c); 此時輸出字元'_'
c語言 有以下定義和語句 char c1='b',c2='e'; printf("%d,%c\n",c2-c1,c2-'a'+"a"); 則輸出結果是__
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",c2-c1,c2-'a'+'a');
c2-c1='e'-'b'=3
c2-'a'+'a' = 'e'
輸出結果為3,e
設有定義的語句:「char c1=92,c2=92;」,則以下表示式中的值為零的是( )。
9樓:考試資料網
答案】:aa。【解析】當段野值相同時按腔橋位異或,則為握圓喊0,按位或與 按位與時仍不變,負數也為非0。
若有char c='\95';則變數c包含多少個字元。 a 1 b 2 c 3 d 語法錯誤?
10樓:惠企百科
選擇答案d。
若有char c='\95';則變數c包含多少個枯灶伍字元。這是錯誤的。
因為'\ddd'形式的轉義字元。
在\後面,可以跟1~3個八進位數符,即必須是0~7範圍內的數字,才可用來表示乙個相應ascii值的字元。
只有乙個字元,這個字元的值為ascii值95,所對應的字元就是:95=>
若用這沒或個。
#include "
void main()
char c='\95';
printf("%c",c); 此時輸出字元'_'
11樓:寒寒家
'\375'是八進位數253,但由於這是乙個字元,所以只有乙個位元組,所以最高位是1,故為負數 -3
a'的ascii值是65
65 % 3 = 也就是 65 %3 結果是2.
已知char c1='b',c2='f';,則語句printf("%d,%c",c2-c1,c2-32);的輸出結果是
12樓:風若遠去何人留
c1和c2都是小寫字母。 所以 輸出。
c2-c1='f'-'b' 得到的是二者在字母表中的差,也就是4c2-32, 小寫字母減去32是對應的大寫字母,於是是f所以輸出為4,f
13樓:天雨下凡
輸出結果是:4,f
以%d的方式輸出c2-c1,就是輸出字元'f'與字元'b'的ascii碼之差,是4
以%c的方式輸出c2-32,就是輸出字元'f'對應的大寫字元,是'f'
c語言函式問題第10題,C語言問題求解第10題
sub1函式內會交換形參a b的值,但由於a b是形參且並非傳地址,故fun函式執行完後,對實參不會有影響。sub1 a,b 執行完後,a b仍然會維持原來的值不變,即a的值仍然是 a b的值仍然是 b putchar a putchar b 為輸出字元型變數a b的值,即輸出 ab 綜上所述,第1...
c語言基礎題,C語言基礎題
1 c語言中,程式的原 是以 cpp 為副檔名的文字檔案,在計算機語言中能夠被計算機直接識別和執行的語言是 機器語言 c程式的執行方式是 編譯連結執行 2 寫出下列表示式的值,其中a 4,b 12,則 a a a a 0 x a b?a b 12 選擇 1 請選出合法的c語言賦值語句 d a.a b...
c語言 求助,c語言題 求助
因為要從鍵盤輸入,如果時選擇的話,就不用了,用if else就不用了。因為鍵盤輸入是字元型!上面的大哥說的不錯我佔。c語言題 求助 這道題中n的最大取值為10 所以直接遍歷依次判斷再求和會超時。注意到1 n所有數的和容易求得,為sum n n 1 2 可以採用容斥原理,即先求出總體的和sum 減去其...