求助嗯。。。C程入門的題嗯。。。不會。。。囧

2024-12-24 08:05:20 字數 2998 閱讀 4768

1樓:網友

我暈,乍一看我懵了,不過還好,我懂得!

char是指字元型變數。

char a=010,b=10;的意思是宣告有兩個字元型變數a,b,並把010賦值給a,把10賦值給b。

printf("%d",a^(b>>2));的意思是(%d)輸出整數型,()回車換行,,(a^(b>>2))將a和(b>>2)進行"^"位運算) 運算,首先我們先看b>>2 的意思,">的是右移運算子,就是把b的值轉換為二進位位,再將此二進位位數右移兩位,即最高位補零。(就是說b=10,他的二進位位就是1010,所以右移兩位且最高位補零後的值就是0010。)而a=010,其實也就是a=0000 0010,而b=0010,也就是b=0000 0010(因為char是八位的二進位的);下面說一下"^"的意思是位運算就是把兩個數(a,b)進行數的位置比較,如果相同位上的數字是不相同的話就表示為「真」,即輸出1,如果相同就表示為「假」,即輸出0,所以a^(b>>2)=0000 0000(因為每一位上都是相同的,所以全部輸出0)!

我也是初學者,不過我從前年就開始慢慢的接觸了,但是還是很菜,不知道能不能幫到你,希望對你能夠有幫助,我想既然都在學習c,那就一定有能夠交流的地方,如果有機會,希望能夠認識一下,501675044這是我的qq!

補充:我不明白為什麼a和b的賦值是不一樣的?

2樓:網友

b=10的二進位碼是1010

按補碼儲存仍為1010,b>>2表示右移兩位,變為二進位10(也就是十進位數2)

a=010,其中010為八進位數,也就是8,二進位為1000,補碼儲存為1000

符號^為異或運算,則a^(b>>2)=(1000)^(0010)=1010,轉化為十進位為10

則輸出為十進位數10,我就是這樣理解的,不知我的答案對不對,當做題了!

求問一道c程題目~~

3樓:冷明珠

第三個是先取指標的位址,在取值2次,即還是5;

第四個是3*(*p),即3*5=15;

第五個是不是應該以格式%p列印,意思是p的位址偏移4個單位,p是乙個int型的指標,則每個單位是2個位元組,所以偏移2*4=8個位元組,故p的位址是 5f08,若以%d輸出,轉換為int型的資料就是 24328 。

一道c程 題目

4樓:網友

<>這程式有問題吧?

你把陣列定義為int就可以輸出正常了int a[5][4];

求解一c程式題,謝謝了。

5樓:在下姓周

第二句是錯誤的。

第一句中,雖然y[3]已經賦初值'd'了,但因為它是乙個變數,可以對它重新賦值,又'『是乙個char型的常量,可以賦值給同是char 型的變數,所以y[3]=』'合法。

在c語言中char 型在計算機中是以ascii碼即整數存放的,它可以與整型一起進行加減運算,所以語句 for(k=0; k<7; k++)y[k]-=32; 也是合法的。

6樓:網友

合法的吧,都認為是整數型。

7樓:流生圖

1是不合法的/n是c程式特有的字元。

2沒語法錯誤。

8樓:匿名使用者

2 描述不正確。 因為該語句是合法的。將各個小寫字母減32變成大寫。

1表示式是合法的 y[3]為char 而''是轉義字元 就是回車轉行 是對的。

9樓:網友

兩個都是對的,沒有什麼不合法的,第乙個是去掉c以後的字元,第二個是將小寫字元轉換為大寫。

這道c程式題,謝謝

10樓:網友

重點關注點為:q++這種操作是在當下語句進行後,進行q=q+1操作。

就例如d+=q++ 是在進行d=d+q 操作之後,再進行的q=q+1。

同時,因為函式的形參傳遞的是引數值,並非位址。所以在函式中進行的q++操作,在函式進行操作後,並不會反饋給a,即主函式中的變數a不會由於函式進行a=a+1操作。

對於兩個d的問題,你可以如此理解:

當函式中有同名的變數名時,以最近的變數為準,即在函式中由於有d的定義,故而使用函式中定義的d的值,即d=5

而在主函式中沒有d的相關定義,即以全域性變數d的值為準(如果有的話就以主函式中的為準)

故而兩次輸出為:

函式中的d=d+a(形參名為q)=8

進行函式操作後(因為傳遞的是值,並不是指標)值並不會變化的a 與全域性變數d的和,為4(操作方式與函式中的同理)

沒有換行操作,故而顯示84

如有疑問或歧義可以提出,望)

這道c程式題,謝謝

11樓:網友

這道題選擇d。

關於scanf%c 接受乙個字元。

d 接受乙個整數,空格會分隔開。

s 接受一串字元,到空格會分開。

請問一道c程題

12樓:匿名使用者

m=a>b)&&n=cb,即5>6為假,所譁旁以m=0,0&&任何值都為0,所以(n=c&和||,也稱為短路運算子,這個題目考察的就是這個功能。

0&&任意值=0,1||任意值=1,後面任意閉寬值的表示式都被短路掉,不進亂態橡行運算。

一道c程題

13樓:網友

x,y被定義為整形變數int,所以賦值時要去尾。

所以d=,x=1,y=0

14樓:淡藍色de風

由於x是int,捨去小數位,實際x=1

所以:y=(1+,捨去小數位,實際y=0

所以d*y=0

c語言,程式錯在哪了,求指教,c語言求助,我的程式錯在哪了

include int sub a int a,int n int main int i,sub,n 5 sub sub a a,n printf 平均值是 d n sub int sub a int a,int n sub sum i return sub c語言求助,我的程式錯在哪了 inclu...

求助組合語言編寫分段函式,C語言編寫什麼程式可以計算分段函式?

1 整數形式 integer number dseg segment x dw 1 fx db msg db f x dseg ends cseg segment assume cs cseg,ds dsegstart mov ax,dseg mov ds,ax mov ax,x call func...

幾本好的c 入門書籍,推薦幾本好的c 入門書籍

c primer 內容太深,建議買 c primer plus 引用的對c primer書的評價 我對這本書的簡單認識是,該書確實經典,但是不適合沒有c 底子的新手來看,因為全書都是按照標準庫為基礎的,裡面的程式段也都是純c 的 並不是用c 的語法規則簡單翻譯的c語言或其他語言的偽 因此看此書時,需...