C語言程序的基本結構

1、C語言基礎知識的學習方法

1)個人課程內容是精心整理的,某些知識點可能沒有提到應用場景,但絕對不會是沒用的知識。課程中沒有提到的知識能夠了解一下,但沒必要深刻學習,意義不大。程序員

2)學習不要貪快,欲速則不達的道理你們應該明白,學習的重點是培養寫程序的感受。shell

3)不要記筆記,不要記關鍵字,不要記函數的參數,忘了就忘了,忘了是由於沒有通過實戰,因此,到了項目實戰課程的時候,忘了內容很天然的會所有想起來。服務器

4)不要用手機看視頻,看着看着就想睡覺,學習的過程是邊看邊寫,沒有看出來的程序員。趙括,知道不?就是那個空讀兵書不成器的傢伙,只看書看視頻不寫程序,和趙括沒什麼不一樣。ide

5)程序員的指法很重要,翹着二郎腿,嘴裏叨着煙,揮舞一指禪,一副吊兒郎當的樣子,是成不了程序員的。函數

6)學習的過程當中遇到的問題,若是三十分鐘解決不了,不要糾纏,在羣裏向你們請教。可是,反對遇到問題不經思考就提問的方式。學習

7)開始學習C語言以前,必須先熟悉Linux環境,掌握Linux經常使用命令和vi的基本用法。.net

8)高手都是從菜鳥開始的,只要您按視頻教程一步一個腳印的學習,必定能成爲優秀的程序員。命令行

2、C語言程序開發的流程

現階段,咱們編寫的C程序比較簡單,程序開發的流程以下:code

在這裏插入圖片描述

3、安裝C語言的編譯器

Linux下C語言的編譯器是gcc,以root用戶登陸,執行如下命令安裝它:視頻

yum  -y  install  gcc

注意,若是您的服務器沒有安裝gcc,以上命令就會安裝最新版本的gcc,若是已經安裝了gcc,就會更新到最新版本,因此,以上命令無論執行多少次都沒有問題。

安裝gcc的前提條件是服務器必須能夠訪問互聯網。

4、C程序的基本結構

C 程序主要包括如下部分:

1)註釋(說明文字)

2)預處理指令

3)主函數入口

4)主函數體

示例(book1.c)

/*
 *  程序名:book1.c,此程序用於演示C程序的基本結構。
 *  做者:C語言技術網(www.freecplus.net) 日期:20190525
*/

// 預處理指令,把頭文件stdio.h包含進來。
#include <stdio.h>     // standard input output

// 主函數main,這裏是程序執行的起點。
int main()
{
  // 調用printf函數在屏幕上輸出文字。
  printf("我心匪石,不可轉也。我心匪席,不可卷也。威儀棣棣,不可選也。\n");

  return 0; // main函數返回
}

接下來咱們講解一下上面這段程序。

一、程序的註釋

/*
 *  程序名:book1.c,此程序用於演示C程序的基本結構。
 *  做者:C語言技術網(www.freecplus.net) 日期:20190525
*/
// 預處理指令,把頭文件stdio.h包含進來。
// standard input output
// 主函數main,這裏是程序執行的起點。
// 調用printf函數在屏幕上輸出文字。
// main函數返回

以上是C程序的註釋(說明文字),註釋的目的是爲了提升程序的可讀性,是給程序員看的,不是給計算機看的,編譯器編譯程序時將忽略它。

/* */用於註釋多行文字,/*是開始,*/是結束。

// 用於註釋一行文字,能夠獨佔一行,也能夠放在代碼的後面。

二、預處理指令

#include <stdio.h>     // standard input output

這一行是(編譯)預處理指令,告訴 C
語言編譯器在編譯以前要包含stdio.h文件,程序中使用了printf函數,若是不包含它的頭文件,編譯時會出現警告或報錯。

三、主函數的入口

int main()

main是主函數,程序從這裏開始執行。在同一程序中,main函數只能有一個。

四、主函數體

printf("我心匪石,不可轉也。我心匪席,不可卷也。威儀棣棣,不可選也。\n");

  return 0; // main函數返回

主函數體的代碼在一對花括號,本程序的主函數體有兩行代碼。

第一行代碼調用了printf函數,printf函數的功能是把內容輸出到屏幕,這裏是輸出一行文字,文字結尾的\n表示換行,多個\n就能夠輸出多個換行。

第二行代碼return 0;表示主函數返回,程序退出。

注意,main函數體中的空行和每行代碼前面的空格是爲了提升程序的可讀性,對程序的功能沒有任何影響。

5、編譯並執行 C 程序

在Linux的命令行下用gcc命令編譯源程序book1.c。

gcc -o book1 book1.c

編譯完成後,將生成目標程序book1(可執行程序名由-o參數指定),加./執行它。

./book1

執行的結果是在屏幕上輸出一行文字。

我心匪石,不可轉也。我心匪席,不可卷也。威儀棣棣,不可選也。

運行效果
在這裏插入圖片描述

6、知識總結

/**/ 多行註釋。

// 單行註釋。

#include 包含其它文件的預處理指令。

main 程序執行的起點。

{} 函數體、語句塊的開始和結束。

() 函數的參數放在括號中。

"" 字符串放在雙引號中。

\n 換行符。

; 分號,一行代碼的結束。

1)以上都是C語言的語法約定,是規則,不可改變,不能質疑,必須遵照;

2)C語言嚴格區分大小寫;

3)中文的全角標點符號C語言沒法識別,編譯時會報錯;

4)C程序以分號「; 」表示一條語言的結束,多條語句能夠書寫在一行。

5)若是某行代碼只有分號「; 」,表示一條空語句,什麼也不作。

7、課後做業

1)請寫一個最簡單的C程序,實現什麼功能無所謂,代碼越少越好。

2)有一個坑,中國程序常常掉進去,但美國程序卻不會,請問這是個什麼坑?

3)在屏幕中輸出詩經《我是一隻傻傻鳥》,源程序命名爲book2.c,執行的效果以下:

在這裏插入圖片描述

4)請在屏幕中間用符號「*」拼出一個大大的字母H,源程序命名爲book3.c,執行的效果以下:

在這裏插入圖片描述

8、版權聲明

C語言技術網原創文章,轉載請說明文章的來源、做者和原文的連接。
來源:C語言技術網(www.freecplus.net)
做者:碼農有道

若是這篇文章對您有幫助,請點贊支持,或在您的博客中轉發個人文章,謝謝!!!若是文章有錯別字,或者內容有錯誤,或其餘的建議和意見,請您留言指正,很是感謝!!!

相關文章
相關標籤/搜索