欧美极品高清xxxxhd,国产日产欧美最新,无码AV国产东京热AV无码,国产精品人与动性XXX,国产传媒亚洲综合一区二区,四库影院永久国产精品,毛片免费免费高清视频,福利所导航夜趣136

標題: C語言學習中遇到很多問題如圖(做硬件的 剛學) [打印本頁]

作者: QWE4562012    時間: 2020-7-21 16:38
標題: C語言學習中遇到很多問題如圖(做硬件的 剛學)
#include <stdio.h>
/* count digits, white space, others */
main()
{
int c, i, nwhite, nother;
int ndigit[10];
nwhite = nother = 0;
for (i = 0; i < 10; ++i)
ndigit[ i] = 0;[ i]
while ((c = getchar()) != EOF)
if (c >= '0' && c <= '9')
++ndigit[c-'0'];
else if (c == ' ' || c == '\n' || c == '\t')
++nwhite;
else
++nother;
printf("digits =");
for (i = 0; i < 10; ++i)
printf(" %d", ndigit[ i]);[ i]
printf(", white space = %d, other = %d\n",
nwhite, nother);
}
當把這段程序本身作為輸入時,輸出結果為:
digits = 9 3 0 0 0 0 0 0 0 1, white space = 123, other = 345


學習中遇到很多問題如圖(做硬件的  剛學C)

51hei圖片20200721151721.png (158.08 KB, 下載次數: 53)

51hei圖片20200721151721.png

51hei圖片20200721153445.png (97.78 KB, 下載次數: 73)

51hei圖片20200721153445.png

51hei圖片20200721155238.png (102.98 KB, 下載次數: 60)

51hei圖片20200721155238.png

作者: xxpp2011    時間: 2020-7-21 17:45
圖1:
1、賦值語句,從右往左運算
2、沒有輸出,if...eise if...else是條件選擇語句,滿足條件則執行下面{}中的語句,只有一句可以省略大括號。||是或,幾個條件||并列時滿足一個就可以
3、++i;單獨一行時與i=i+1;i++差不多,在有些情況下不一樣,如for(i=0;i<5;i++){;}是先循環一次再加一,for(i=0;i<5;++i){;}是先加一,再進行循環
4、printf是輸出語句,%d是占位符, %是引導符,d表示十進制整數的形式輸出,實際輸出的是后面對應位置的變量的數值,根據前面的運算得到結果
作者: QWE4562012    時間: 2020-7-21 17:50
xxpp2011 發表于 2020-7-21 17:45
圖1:
1、賦值語句,從右往左運算
2、沒有輸出,if...eise if...else是條件選擇語句,滿足條件則執行下面 ...

printf后面括號里面怎么有那么多變量值打印
作者: QWE4562012    時間: 2020-7-21 17:51
xxpp2011 發表于 2020-7-21 17:45
圖1:
1、賦值語句,從右往左運算
2、沒有輸出,if...eise if...else是條件選擇語句,滿足條件則執行下面 ...

還有那個自加1是為了干嘛?計算輸入內容的個數?
作者: xxpp2011    時間: 2020-7-21 17:56
圖2:
1、定義變量不一定要賦初值,可以在后面需要的時候賦值,定義變量時會分配對應長度的寄存器,初始值通常為不確定值(有的初值為0)
2、&&為與,選擇語句中兩個條件&&并列時需要都滿足才執行下面的語句,運算符有>=和<=和=,沒有=>或=<
3、和經驗+3一樣沒什么目的,只是為了讓你算

圖3:
printf語句“”里面的其他字符按原樣輸出,%d替換成以十進制整數輸出的對應變量數值
作者: QWE4562012    時間: 2020-7-21 18:30
xxpp2011 發表于 2020-7-21 17:56
圖2:
1、定義變量不一定要賦初值,可以在后面需要的時候賦值,定義變量時會分配對應長度的寄存器,初始值 ...

那&和&&在邏輯上有何不一樣?
作者: QWE4562012    時間: 2020-7-21 18:33
xxpp2011 發表于 2020-7-21 17:56
圖2:
1、定義變量不一定要賦初值,可以在后面需要的時候賦值,定義變量時會分配對應長度的寄存器,初始值 ...

不是有三個prinft嗎?分別輸出些什么東西?
怎么后面那個prinft括號里面有那么多變量
作者: xxpp2011    時間: 2020-7-21 18:45
QWE4562012 發表于 2020-7-21 18:33
不是有三個prinft嗎?分別輸出些什么東西?
怎么后面那個prinft括號里面有那么多變量

1、輸出什么你的圖例已經給答案了
2、怎么有那么多變量值打印?==>想輸出一百個變量都可以,沒有為什么,占位符按順序與后面的變量對應
3、&是兩個變量按位相與,&&是兩個表達式的真假同時為真則為真
4、基本概念還是要看書的,或者看視頻,沒有編程基礎直接接觸例程怎么學


作者: QWE4562012    時間: 2020-7-22 08:40
xxpp2011 發表于 2020-7-21 17:45
圖1:
1、賦值語句,從右往左運算
2、沒有輸出,if...eise if...else是條件選擇語句,滿足條件則執行下面 ...

非常感謝,我要好好看看
作者: QWE4562012    時間: 2020-7-22 08:43
xxpp2011 發表于 2020-7-21 18:45
1、輸出什么你的圖例已經給答案了
2、怎么有那么多變量值打印?==>想輸出一百個變量都可以,沒有為什么 ...

在看C程序設計語言這本書。。這個就是打基礎的  第三個prinft怎么一來就一個逗號?為什么第二個prinft一來沒有逗號
作者: SKYLAR123    時間: 2020-7-22 08:59
想讓第二prinft與第三prinft在同一行顯示,又想區分開,就用了一個逗號,你運行一下不就知道啦
作者: SKYLAR123    時間: 2020-7-22 09:01
'0'是字符不是數0對應碼表可以查詢,樓主你好好補補C的基礎知識
作者: QWE4562012    時間: 2020-7-22 09:10
xxpp2011 發表于 2020-7-21 18:45
1、輸出什么你的圖例已經給答案了
2、怎么有那么多變量值打印?==>想輸出一百個變量都可以,沒有為什么 ...

printf(", white space = %d, other = %d\n",------------------------這里怎么一來有逗號?而前面沒有參數
作者: QWE4562012    時間: 2020-7-22 09:11
SKYLAR123 發表于 2020-7-22 08:59
想讓第二prinft與第三prinft在同一行顯示,又想區分開,就用了一個逗號,你運行一下不就知道啦

我用的是keil  學的是單片機C語言
作者: QWE4562012    時間: 2020-7-22 09:44
SKYLAR123 發表于 2020-7-22 09:01
'0'是字符不是數0對應碼表可以查詢,樓主你好好補補C的基礎知識

現在就是在學基礎啊  
作者: QWE4562012    時間: 2020-7-22 09:50
SKYLAR123 發表于 2020-7-22 08:59
想讓第二prinft與第三prinft在同一行顯示,又想區分開,就用了一個逗號,你運行一下不就知道啦

同一行顯示?那為什么第二個prinft()括號里面第一個不是逗號

51hei圖片20200722094734.jpg (26.38 KB, 下載次數: 61)

51hei圖片20200722094734.jpg

作者: SKYLAR123    時間: 2020-7-22 10:45
本帖最后由 SKYLAR123 于 2020-7-22 11:43 編輯
QWE4562012 發表于 2020-7-22 09:50
同一行顯示?那為什么第二個prinft()括號里面第一個不是逗號

printf("digits =");輸出的是digits

作者: SKYLAR123    時間: 2020-7-22 10:51
QWE4562012 發表于 2020-7-22 09:50
同一行顯示?那為什么第二個prinft()括號里面第一個不是逗號

就是這種運行,然后你就可以去掉逗號試試效果,
%d后面加上\t或者\n
這種程序各種效果多嘗試就理解了;你要補充的C的基礎知識例如字符、進制、printf()的輸出格式,通常這個是在一本書的最前面,再好好看看吧
作者: QWE4562012    時間: 2020-7-22 11:11
SKYLAR123 發表于 2020-7-22 10:45
那好好給你解釋一下printf("digits =");輸出的是digits =
for (i = 0; i < 10; ++i)
                printf(" %d", n ...

1.沒有雙引號 輸出的是文本?不是 字符本身?

2.這個打印函數括號里面是不是有個對應的關系,比如prinft(小紅,小黑,小白,100,200,300)
那小紅=100,小黑=200,小白=300?輸出之間有沒有逗號或者空格?
作者: SKYLAR123    時間: 2020-7-22 11:28
QWE4562012 發表于 2020-7-22 11:11
1.沒有雙引號 輸出的是文本?不是 字符本身?

2.這個打印函數括號里面是不是有個對應的關系,比如prin ...

求你看看書,再問吧,糾結的點沒有意義。我想表達就是你想要什么效果就輸出什么,雙引號內加入逗號,或者空格的目的是什么,就是對應關系,或者表述有問題,是字符,你運行printf,你想要問什么,就去隨意運行,自己嘗試啊,不行看看書上有什么規定。
向這種看似一頓操作感覺很用功,但是你沒有試過就來問,好像有點不好,就像這個逗號問的,你試試不就知道
作者: QWE4562012    時間: 2020-7-24 08:57
SKYLAR123 發表于 2020-7-22 11:28
求你看看書,再問吧,糾結的點沒有意義。我想表達就是你想要什么效果就輸出什么,雙引號內加入逗號,或者 ...

我就是在看書啊  經常卡住啊  




歡迎光臨 (http://m.raoushi.com/bbs/) Powered by Discuz! X3.1