1樓:匿名使用者
#include
int main()
2樓:匿名使用者
num是double型輸出的時候格式串要用 %lf
c語言菜鳥求教:請問下面這段解釋中“*(a+1)表示的是陣列a[1]中第一個元素的地址”是不是錯的
3樓:奮力衝
對啊,*(a+1)就是表示a[1]的儲存位置的,*(a+num)表示的實質就是a[num],只是寫法不一樣,*(a+num)更接近本質。
4樓:匿名使用者
他沒錯,你也沒說自錯,但你理解不到位。
*(a+1)是陣列元素。但a是二維陣列,那你就要再進一步理解了。
因為a是二維陣列名,即是一維陣列a[0] 、a[1] 、a[2] 的首地址。
a+1就是 a[1]的地址。
*是取指標的值。
那麼*(a+1)就是取 a[1]的值。
它是什麼呢?它又是一個陣列: a[1][0], a[1][1] ,a[1][2]。
而且 a[1]是它們的首地址。
即 a[1]的值就是 a[1][0]的地址。
5樓:野獸fight美女
是錯的,a表示的是啊a[1]的首地址
c語言菜鳥求問下列程式段的輸出是,並說明原因
6樓:匿名使用者
奇數才列印*#,1 3<5且是奇數所以
*#*#
其實這題就算你判斷錯誤那偶數2 4一樣也只有兩個
7樓:匿名使用者
這怎麼回答為什麼呢,就是1~5,非偶數列印*#
~~~~~~
c語言菜鳥問題
8樓:匿名使用者
等於32
c語言中逗號“,”也是一種運算子,稱為逗號運算子。 其功能是把兩個表示式連線起來組成一個表示式, 稱為逗號表示式。
其一般形式為: 表示式1,表示式2 其求值過程是分別求兩個表示式的值,並以表示式2的值作為整個逗號表示式的值。
void main()
a<--2,b<--4,c<--6,x<--0,y<--0
x<--a+b,y<---b+c
本例中,y等於整個逗號表示式的值,也就是表示式2的值,x是第一個表示式的值。對於逗號表示式還要說明兩點:
1.逗號表示式一般形式中的表示式1和表示式2 也可以又是逗號表示式。例如:
表示式1,(表示式2,表示式3) 形成了巢狀情形。因此可以把逗號表示式擴充套件為以下形式: 表示式1,表示式2,…表示式n 整個逗號表示式的值等於表示式n的值。
2.程式中使用逗號表示式,通常是要分別求逗號表示式內各表示式的值,並不一定要求整個逗號表示式的值。
3.並不是在所有出現逗號的地方都組成逗號表示式,如在變數說明中,函式參數列中逗號只是用作各變數之間的間隔符。
9樓:匿名使用者
c語言裡面,逗號表示式的基本形式為
exp1, exp2,..., expn;
求值順序為從左到右依次求值,規定整個逗號表示式的值為最後一個子表示式(就是分號前那個expn)的值。所以你這條語句執行後x的值就是k的值32
10樓:匿名使用者
我放在vc++6.0裡執行得到
32我也是菜鳥,我也不知道是為什麼,看到高手的解答明白了
謝啦~~~
11樓:
x=32,一般等於最後那個逗號的值
12樓:匿名使用者
x=32.因為口號內是逗號,最後的有效;
怎樣能從一個什麼都不懂的菜鳥學會c語言?
13樓:baby凱旋城住戶
不管說什麼,想更快的學習 c語言,具體措施是:
1、看書自學:先看c語言入門的書,比如 c語言小白表怪獸,啊哈c語言,都是傻子都能看懂的書;緊接著,可以看一些進階的書,有很多,基本上這時候所有的書你都能瞭解個大概,根據自己的興趣,找一些書看。
2、找人輔導:如果你想最快又好的學完 c語言,找人輔導幫你是很有必要的,在學習過程中可以做到,有問題隨時解決,這種學習才是有效的,如果沒有老師幫你,要麼是你的學習速度提不上來,要麼就是看書看得囫圇吞棗。
3、理論與實踐相結合:光看書並沒什麼卵用,關鍵是實踐,c語言實踐就是多做題,多做專案,可以試著做一些簡單的專案,資訊管理系統,貪吃蛇,推箱子這些小遊戲。
以上這些,都是齊頭並進,並不是一個做完做另一個,這些都做到,c語言完整的學習,估計最多兩個月就能拿下。
c語言菜鳥,求答案和解釋!解釋是關鍵
14樓:卡農小土豆
(1),c 輸入格式為"%c%c%d字元,字元,數值型,所以輸入的1,2個值均作為字元處理,而最後一個作為數字處理
printf("%c %c %d\n",a,b,c);在scanf中輸入格式,若中間有逗號,輸入時候也要有逗號中間為空格中間輸入時也是空格
printf("%c,%c,%d\n",a,b,c);原因同2
15樓:匿名使用者
cprintf
scanf("%c,%c,%d",&a,&b.&c);
printf("\"%c\"\"%c\"%d\a",a,b,c);
16樓:江凌風贇
問題四,,要修改輸入輸出語句就行啊,還有ab的定義
c語言什麼意思 輸出i j c 求意思 菜鳥
17樓:匿名使用者
hi c 規定,%d 是代表以十進位制形式輸入、輸出。
用 int(即整形) 定義了 i j 兩個整形變數,用 char 定義了一個 c (即字元變數),
然後用scanf()函式分別以%d(十進位制形式) 和 %c (字元形式)進行輸入。分別把從鍵盤輸入的資料存入整形變數 i 、j 以字元形式存入c.
不過你寫錯了,正確的應該是:
int i,j;
char c;
scanf("%d%c%d",&i,&c,&j);
18樓:
你的輸入是什麼?
你只要搞清楚scanf裡面所有的各種格式化修飾符的意思就一目瞭然了!
scanf用於從標準輸入獲取格式化輸入
第一個%d,表示期望輸入一個整數,scanf引數列表的後面有一個對應引數
第二個d,表示你第二個輸入與第一個輸入以字母d分開,否則算非法輸入
第三個%c,表示期望輸入一個字元,scanf引數列表的後面有一個對應引數
第四、五個%*d,本來是%d表示期望輸入一個整數,中間插入了個*,改變了意思:忽略掉該整數輸入,也就是你輸入了整數但是不會賦給對應的變數啦
最後一個%d:表示期望輸入一個整數,scanf引數列表的後面有一個對應引數
最後說明一點,對於任意一個欄位,如果不符合要求就算是非法輸入,結果可能就不是你預期的了。你可以嘗試不同的輸入,看看結果究竟咋樣?
菜鳥求解 c語言中 表示式運算結果 中為啥1+15 1+20是double型別1+2就是int呢?難道是書列印錯了?
19樓:
現在的書,讀起來要用破密碼的精神;你還那麼信任書?肯定是書上錯了……
20樓:聽不清啊
這個沒問題是書上印錯了。如果1+1.5才是double。
21樓:匿名使用者
不對啊,1+15的結果應該是整型的
c語言菜鳥問題:為什麼有人說 雙精度變數的格式符為“le”,也有“lf”。哪個才是正確的??
22樓:威
雙精度變數的格式符用“lf”。
23樓:奧列格南樂
float表示的是單精度型,雙精度型是double定義;數字後面的f是表示單精度實型,雙精度實型用l
c語言第4題為什麼選b,C語言,第4題為什麼選B?
a,二維陣列定義時必須有列數,a錯 b,二維陣列可以預設行數,每列元素個數無誤,正確c,行數不對,定義是2行,但初始化有三行 d,第二行初始化不正確 希望對你有用,純手打不容易,望採納。b int 3 注意二維陣列的含義,前面個方括弧 裡的值代表的是後面第一層即最外層花括號 裡的元素的個數 注意此時...
C語言,這題當以x和c兩種形式輸出的時候,結果各為多少呢?為什麼
x 是39 c 是 9 39和9。因為聯和只儲存int部分的內容。c語言對中文字串按位元組讀,用printf x輸出全都是前六位是f的八位十六進位制數字,為什麼?這個是因為中文字元的編碼方式 和ascii是不一樣的,你用的是gbk編碼方式,每個中文漢字是兩個位元組,且編碼上高位的位元組都是1,這是編...
日語何為什麼有兩種讀音日語為什麼有兩種讀音
般地,當 何 當 什麼 講的時候,在 行假名前讀 其餘假名前讀 讀 的典型例子有 何 何 何 何 何 等等。讀 的典型例子有 何 何 何 等等。但是,當 何 當 幾 講的時候,都讀作 如何人 何枚 何時間 等。一個比較有趣的例子是 何語 當 什麼語言 講時,讀 當 幾個詞 講時,讀 o o 日語的讀...