1樓:匿名使用者
考慮什麼時候word==0,只有2種情況
一種是程式剛開始word=0,
另一種是if(c==' '),也就是遇到空格的時候
所以當你遇到不是空格,並且word==0時,是不是說明,遇到一個新的單詞了,那麼word=1說明進入到一個單詞,計數,num++。
舉個例子,比如輸入是hello my friend
當遇到第一個字元,也就是h的時候,word肯定等於0,因為程式一開始,我們就是讓word=0,此時h不是空格,那麼進入else if(word==0) word=1,num++
接下來遇到e這個字元,此時,e不是空格,那麼單詞數要不要加呢?不用,因為此時word=1,我們無法進入else if(word==0),word=1,num++ 這裡面,以此類推,直到遇到第一個空格,也就是m前面那個空格,於是if(c==' ') word=0;
再接下來,遇到m了,m不是空格,並且word==0,那麼進入else if(word==0) word=1,num++,此時num=2了,正好符合事實,的確我們已經遇到第二個單詞了
綜上所述,這裡的else if(word==0) 的意思就是從一個空格進入一個新的單詞,進入了新的單詞,當然要num++
2樓:風過層雲
是為了防止行尾出現空格被記錄在內,所以哪怕是sting[0]出現空格,只有在sting[1]有字元的時候才會被計算在內.不過因為初始值的原因,最後的結果會比實際的空格數多1
3樓:匿名使用者
純屬個人理解,可能有誤。
c語言程式設計怎樣入門
4樓:匿名使用者
一、工欲善其事,必先利其器
這裡介紹幾個學習c語言必備的裝置和書籍:
a)開發環境
例如turbo c 2.0,這個曾經佔據了dos時代開發程式的大半個江山。但是現在windows時代,用turbo c有感覺不方面,編輯程式起來很吃力,並且拖放,更沒有函式變數自動感應功能,查詢參考資料也不方便。
建議使用visual c++,這個平臺雖然體積大,但是一旦安裝好了,用起來很方便。
b)一本學習教程
現在c語言教材多如牛毛,推薦大家使用《c語言程式設計》第二版。此書很適合初學者,並且內容也很精到。
c)利用輔助學習軟體
畢竟現在是windows時代了,學習軟體多如牛毛,這裡向大家推薦一個“整合學習環境(c語言)”,裡邊的知識點總結和例程講解都非常好,有好幾千題的題庫測試環境,包括一個windows下的trubo c,初學者甚至不用裝其它的編譯器,就可以練習程式設計了。還有一個“c語言學習系統”軟體,不過感覺只是一個題庫系統,如果你覺得題做的不夠,不妨也可以試試。
二、葵花寶典
學習計算機語言最好的方法是什麼?答曰:讀程式。
沒錯,讀程式是學習c語言入門最快,也是最好的方法。我們大家都應該有個體驗——在最初學習windows系統操作或microsoft words如果操作的過程中,剛開始總是正兒八經地買來教材,結果讀來讀去卻雲裡霧裡,而當我們將教材丟在一邊,拿起滑鼠反覆地試,幾個小時就搞定。包括學習j#,c#等其他語言,在今天的windows時代,也不再提倡抱著書本逐行啃,而是學習它們的例程。
當然,對於沒有學過任何計算機語言的初學者,多少要先閱讀教程,認真體會所有概念,然後不放過這一章中提到的所有例程,仔細研讀,直到每一行都理解了,再找幾個程式設計題目,最好是和例程類似的或一樣的,自己試圖寫出這段已經讀懂的程式。如果寫不出來,回過頭來再繼續研究例程,想想自己為什麼寫不出來,然後再去寫這段程式,反反覆覆,直到你手到擒來為止。
三、登峰造極
寫程式的最高境界其實就是掌握各種解決問題的手段(資料結構)和解決問題的方法(演算法)。
是不是寫出底層程式就是程式設計高手呢?非也,寫底層程式,無非是掌握了硬體的結構,況且硬體和硬體還不一樣,要給一個晶片寫驅動程式,無非就是掌握這塊晶片的各種暫存器及其組合,然後寫值讀值,僅此而已。這不過是熟悉一些i/o函式罷了。
那麼怎樣才算精通程式設計呢?怎樣才能精通程式設計呢?舉個例子:
你面前有10個人,找出一個叫“張三”的人,你該怎麼辦?第一種方法:直接對這10個人問:
“誰叫張三”。第2種方法:你挨個去問“你是不是張三?
”,直到問到的這個人就是張三。第三種方法:你去問一個人“你認不認識張三,指給我看”。
不要小看這個問題,你說當然會選第一種方法,那麼恭喜你答對了,因為這個方法最快,效率最高,但是在程式設計中找到解決問題的最優方法和你用的手段卻是考驗一個程式設計師程式設計水平的重要標誌,而且是不容易達到的。剛才這個問題類似於資料結構和演算法中的:map資料結構,窮舉查詢和折半查詢。
所以掌握好資料結構和一些常用演算法,是登峰造極的必然之路。
5樓:終迎絲僕昕
剛開始學時,大家不用急著去程式設計序,先搞清楚程式的作用,寫程式的目的,搞清楚程式的大體結構,如果有條件的話在電腦上把書上的程式打幾遍,沒有電腦的話,就抄上幾遍,接著從最簡單的程式編起,比如寫個最簡單的小學應用題........
當對程式有了一定的認識的時候,在試著去編些比較複雜的(不是很複雜的。。相對來說)
程式設計序不要怕有錯誤,每一個錯誤都是對你的一個提高,還有程式設計序要敢大膽的設想,就算結果是錯的.....
當你自己能編一個小小的程式時,那種成就感很大的。。。以後會對他越來約來感興趣的........
6樓:四川新華陳老師
相對於其他程式語言,c語言還是比較難的。初學者需要注意一下幾點:
一是學習順序
7樓:江西新華電腦學院
現在都是資訊化的時代,沒有一門好的技術是難以在社會之中立足的,
現在的電腦技術飛速增長,每家公司都需要電腦人才,你可以去學習電腦專業,
在這個領域中還是有很大的發展空間的,只要自己好好學習,以後的前景不可限量。
8樓:周幽
建議你這樣試試看:
1:看一看kr的c語言程式設計;
2:買一本關於資料庫的書學一下;
3:多做題,掌握一些經典c語言的解題技巧,比如漢諾塔等。
這樣做的好處:雖然笨拙,但是基礎會很堅固的。
注意事項:一定要堅持,學這個很容易感到枯燥乏味。
9樓:year醫海無邊
s是字元指標陣列。 對應4個字串。
迴圈中 i=3 2 1 0
對於不同的i,j有不同取值
3: 第一次判斷就不成立, 直接退出。 不做操作2: j=3
1: j=3 2
0:j=3 2 1
輸出的是s[i]+j
也就是 從s[i]字串的第j個字元開始輸出所以輸出是
while
akeak
tinue
ntinue
ontinue
10樓:匿名使用者
買一本有頭的書看一下,。再下一個軟體是c++就可以了。不會很難的。
11樓:beni花花
這種入門到工作的課程,現在人都可以直接在三人行慕課的平臺上學到的。
c語言程式設計問題,初學者,不太會,謝謝(*°∀°)=3?
12樓:匿名使用者
#include
int main(int argc, char *ar**)printf("%d\n\n",s);
s=0;n=1;
for(;n!=0;)
printf("%d\n\n",s);
s=0;
dowhile(n!=0);
printf("%d\n\n",s);
getchar();
return 0;}
c語言程式設計問題
13樓:手機使用者
解題思bai路:完全跟百錢買百雞的問題是du一樣的!設大zhi馬,中馬,小馬dao的匹數分別為x,y,z;可以得到回兩個方程:
x+y+z=100; 3*x+2*y+z/2=100; 將第二個
答方程變形為:6*x+4*y+z=200; 從第二個方程變形的方程中,我們可以看到,x的最大值為200/6=33.3;即中馬,小馬都不用,只用大馬最多用34;1<=x<=34; 同樣中馬y的最大值為200/4=50;1<=y<=50;再將第三個方程減去第一方程變成5*x+3*y=100;這個方程就是我們簡化後的判斷條件用列舉法求可的如下的程式:
#include
int main()}
c語言程式設計問題,初學者不太會,謝謝(*°∀°)=3?
14樓:匿名使用者
#include
void main()
if ( b!=0 ) s+=i*i;
}printf("%d\n",s);}
c語言程式設計問題,初學者,不太會,謝謝(*°∀°)=3?
15樓:匿名使用者
#include
int main(int argc, char *ar**)printf("%d\n\n",s);
s=1;
for(i=1;i<=8;i++)
printf("%d\n\n",s);
i=1;s=1;
dowhile(i<=8);
printf("%d\n\n",s);
getchar();
return 0;}
C語言程式設計問題,c語言程式設計問題?
小黑哎啊 include include 數學函式標頭檔案 include void fun1 函式宣告 void fun2 int main while 1 int x for int i 0 i 20 i printf printf n1,求整數n的立方 n printf 2,判斷是否能構成三角...
c語言程式設計問題,c語言程式設計問題?
聽不清啊 include int main int i,n double sum 0 scanf d n for i 1 i n i sum i i 1.0 i 1 printf f n sum return 0 威爾史密斯 include void main c語言程式設計問題 手機使用者 解題思...
c語言程式設計問題,C語言程式設計問題。
你的scanf中間錯了,應改為scanf d d m,n 另外d a c b 將d改為float型別比較好。c語言出現了一個問題,導致程式停止正常工作,請關閉程式 1 野指標,你使用的指標指向未知區域 2 scanf函式輸入整形 字元 的時候缺少了 3 緩衝區溢位,也就是說你使用陣列時不經意間越界了...