激情欧美日韩一区二区,浪货撅高贱屁股求主人调教视频,精品无码成人片一区二区98,国产高清av在线播放,色翁荡息又大又硬又粗视频

C語(yǔ)言程序的結構

時(shí)間:2024-10-17 03:39:58 計算機等級 我要投稿
  • 相關(guān)推薦

C語(yǔ)言程序的結構

  C語(yǔ)言的運算符包含的范圍很廣泛,共有34種運算符。C語(yǔ)言把括號、賦值、強制類(lèi)型轉換等都作為運算符處理。下面是小編整理的關(guān)于C語(yǔ)言程序的結構,希望大家認真閱讀!

  (1)順序結構

  順序結構的程序設計是最簡(jiǎn)單的,只要按照解決問(wèn)題的順序寫(xiě)出相應的語(yǔ)句就行,它的執行順序是自上而下,依次執行。

  例如:a = 3,b = 5,現交換a,b的值,這個(gè)問(wèn)題就好像交換兩個(gè)杯子水,這當然要用到第三個(gè)杯子,假如第三個(gè)杯子是c,那么正確的程序為:

  c = a;

  a = b;

  b = c;

  執行結果是a = 5,b = c = 3如果改變其順序,寫(xiě)成:

  a = b;

  c = a;

  b =c;

  則執行結果就變成a = b = c = 5,不能達到預期的目的,初學(xué)者最容易犯這種錯誤。順序結構可以獨立使用構成一個(gè)簡(jiǎn)單的完整程序,常見(jiàn)的輸入、計算,輸出三步曲的程序就是順序結構,例如計算圓的面積,其程序的語(yǔ)句順序就是輸入圓的半徑r,計算s = 3.14159*r*r,輸出圓的面積s。

  不過(guò)大多數情況下順序結構都是作為程序的一部分,與其它結構一起構成一個(gè)復雜的程序,例如分支結構中的復合語(yǔ)句、循環(huán)結構中的循環(huán)體等。

  (2) 分支結構

  順序結構的程序雖然能解決計算、輸出等問(wèn)題,但不能做判斷再選擇。對于要先做判斷再選擇的問(wèn)題就要使用分支結構。分支結構的執行是依據一定的條件選擇執行路徑,而不是嚴格按照語(yǔ)句出現的物理順序。分支結構的程序設計方法的關(guān)鍵在于構造合適的分支條件和分析程序流程,根據不同的程序流程選擇適當的分支語(yǔ)句。

  分支結構適合于帶有邏輯或關(guān)系比較等條件判斷的計算,設計這類(lèi)程序時(shí)往往都要先繪制其程序流程圖,然后根據程序流程寫(xiě)出源程序,這樣做把程序設計分析與語(yǔ)言分開(kāi),使得問(wèn)題簡(jiǎn)單化,易于理解。程序流程圖是根據解題分析所繪制的程序執行流程圖。

  學(xué)習分支結構不要被分支嵌套所迷惑,只要正確繪制出流程圖,弄清各分支所要執行的功能,嵌套結構也就不難了。嵌套只不過(guò)是分支中又包括分支語(yǔ)句而已,不是新知識,只要對雙分支的理解清楚,分支嵌套是不難的。下面我介紹幾種基本的分支結構。

 、賗f(條件){分支體}

  這種分支結構中的分支體可以是一條語(yǔ)句,此時(shí)“{}”可以省略,也可以是多條語(yǔ)句即復合語(yǔ)句。它有兩條分支路徑可選,一是當條件為真,執行分支體,否則跳過(guò)分支體,這時(shí)分支體就不會(huì )執行。如:要計算x的絕對值,根據絕對值定義,我們知道,當x>=0時(shí),其絕對值不變,而x<0時(shí)其絕對值是為x的反號,因此程序段為:if(x<0)x=-x;

 、

  if(條件)

  {分支1}

  else

  {分支2}

  這是典型的分支結構,如果條件成立,執行分支1,否則執行分支2,分支1和分支2都可以是1條或若干條語(yǔ)句構成。

  如:求ax^2+bx+c=0的根

  分析:因為當b^2-4ac>=0時(shí),方程有兩個(gè)實(shí)根,否則(b^2-4ac<0)有兩個(gè)共軛復根。其程序段如下:

  main()

  {

  int a,b,c,d,x,y;

  printf("Please put the number of a,b&c from the quadratic equation of one variable one by one\n");

  scanf("%d%d%d",&a,&b,&c);

  d=b*b-4*a*c;

  if(d<0)

  {

  printf("NO Root!Wrong!\n");

  }

  else

  {

  y=-b-sqrt(d)/2*a;

  x=-b+sqrt(d)/2*a;

  printf("The 1st equation root=%d\nThe 2nd equation root=%d",y,x);

  }

  }

 、跧F嵌套分支語(yǔ)句:

  其語(yǔ)句格式為:

  if(條件1) {分支1}

  else if(條件2) {分支2}

  else if(條件3) {分支3}

  ……

  else if(條件n) {分支n}

  else {分支n+1}

  FOR嵌套,其語(yǔ)句格式為:

  for(初值A;范圍A;步長(cháng)A)

  {

  for(初值B;范圍B;步長(cháng)B)

  {

  循環(huán)體

  }

  }

  FOR嵌套例子:九九乘法表

  main()

  {

  int a,b,c;

  for(a=1;a<=9;a++)

  {

  for(b=1;b<=a;b++)

  {

  c=b*a;

  printf("%dx%d=%d ",b,a,c);

  }

  printf("\n");

  }

  }

  嵌套分支語(yǔ)句雖可解決多個(gè)入口和出口的問(wèn)題,但超過(guò)3重嵌套后,語(yǔ)句結構變得非常復雜,對于程序的閱讀和理解都極為不便,建議嵌套在3重以?xún),超過(guò)3重可以用下面的語(yǔ)句。

 、躶witch開(kāi)關(guān)語(yǔ)句

  該語(yǔ)句也是多分支選擇語(yǔ)句,到底執行哪一塊,取決于開(kāi)關(guān)設置,也就是表達式的值與常量表達式相匹配的那一路,它不同if…else語(yǔ)句,它的所有分支都是并列的,程序執行時(shí),由第一分支開(kāi)始查找,如果相匹配,執行其后的塊,接著(zhù)執行第2分支,第3分支……的塊,直到遇到break語(yǔ)句;如果不匹配,查找下一個(gè)分支是否匹配。這個(gè)語(yǔ)句在應用時(shí)要特別注意開(kāi)關(guān)條件的合理設置以及break語(yǔ)句的合理應用。

  (3)循環(huán)結構:

  循環(huán)結構可以減少源程序重復書(shū)寫(xiě)的工作量,用來(lái)描述重復執行某段算法的問(wèn)題,這是程序設計中最能發(fā)揮計算機特長(cháng)的程序結構,C語(yǔ)言中提供四種循環(huán),即goto循環(huán)、while循環(huán)、do?Cwhile循環(huán)和for循環(huán)。四種循環(huán)可以用來(lái)處理同一問(wèn)題,一般情況下它們可以互相代替換,但一般不提倡用goto循環(huán),因為強制改變程序的順序經(jīng)常會(huì )給程序的運行帶來(lái)不可預料的錯誤,在學(xué)習中我們主要學(xué)習while、do…while、for三種循環(huán)。

  常用的三種循環(huán)結構學(xué)習的重點(diǎn)在于弄清它們相同與不同之處,以便在不同場(chǎng)合下使用,這就要清楚三種循環(huán)的格式和執行順序,將每種循環(huán)的流程圖理解透徹后就會(huì )明白如何替換使用,如把while循環(huán)的例題,用for語(yǔ)句重新編寫(xiě)一個(gè)程序,這樣能更好地理解它們的作用。特別要注意在循環(huán)體內應包含趨于結束的語(yǔ)句(即循環(huán)變量值的改變),否則就可能成了一個(gè)死循環(huán),這是初學(xué)者的一個(gè)常見(jiàn)錯誤。

  在學(xué)完這三個(gè)循環(huán)后,應明確它們的異同點(diǎn):用while和do…while循環(huán)時(shí),循環(huán)變量的初始化的操作應在循環(huán)體之前,而for循環(huán)一般在語(yǔ)句1中進(jìn)行的;while循環(huán)和for循環(huán)都是先判斷表達式,后執行循環(huán)體,而do…while循環(huán)是先執行循環(huán)體后判斷表達式,也就是說(shuō)do…while的循環(huán)體最少被執行一次,而while循環(huán)和for就可能一次都不執行。

  另外還要注意的是這三種循環(huán)都可以用break語(yǔ)句跳出循環(huán),用continue語(yǔ)句結束本次循環(huán),而goto語(yǔ)句與if構成的循環(huán),是不能用break和 continue語(yǔ)句進(jìn)行控制的。

  順序結構、分支結構和循環(huán)結構并不彼此孤立的,在循環(huán)中可以有分支、順序結構,分支中也可以有循環(huán)、順序結構,其實(shí)不管哪種結構,我們均可廣義的把它們看成一個(gè)語(yǔ)句。在實(shí)際編程過(guò)程中常將這三種結構相互結合以實(shí)現各種算法,設計出相應程序,但是要編程的問(wèn)題較大,編寫(xiě)出的程序就往往很長(cháng)、結構重復多,造成可讀性差,難以理解,解決這個(gè)問(wèn)題的方法是將C程序設計成模塊化結構。

  (4)模塊化程序結構

  C語(yǔ)言的模塊化程序結構用函數來(lái)實(shí)現,即將復雜的C程序分為若干模塊,每個(gè)模塊都編寫(xiě)成一個(gè)C函數,然后通過(guò)主函數調用函數及函數調用函數來(lái)實(shí)現一大型問(wèn)題的C程序編寫(xiě),因此常說(shuō):C程序=主函數+子函數。 因此,對函數的定義、調用、值的返回等中要尤其注重理解和應用,并通過(guò)上機調試加以鞏固。

  三.掌握一些簡(jiǎn)單的算法

  編程其實(shí)一大部分工作就是分析問(wèn)題,找到解決問(wèn)題的方法,再以相應的編程語(yǔ)言寫(xiě)出代碼。這就要求掌握算法,根據我們的《C程序設計》教學(xué)大綱中,只要求我們掌握一些簡(jiǎn)單的算法,在掌握這些基本算法后,要完成對問(wèn)題的分析就容易了。如兩個(gè)數的交換、三個(gè)數的比較、選擇法排序和冒泡法排序,這就要求我們要清楚這些算法的內在含義。

【C語(yǔ)言程序的結構】相關(guān)文章:

C語(yǔ)言程序設計學(xué)習技巧03-10

學(xué)習二級c語(yǔ)言程序設計的方法03-10

嵌入式開(kāi)發(fā)中C語(yǔ)言中結構體解讀201603-11

全國計算機c語(yǔ)言程序設計題庫201703-09

2017年計算機等級c語(yǔ)言程序設計試題03-09

全國計算機二級C語(yǔ)言《選擇結構》知識點(diǎn)復習03-06

經(jīng)典C語(yǔ)言面試算法題03-17

概述C++語(yǔ)言特點(diǎn)12-09

2017年全國計算機c語(yǔ)言程序設計考試試題及答案03-11

激情欧美日韩一区二区,浪货撅高贱屁股求主人调教视频,精品无码成人片一区二区98,国产高清av在线播放,色翁荡息又大又硬又粗视频