C語言與計算機語言(內含Hello world!詳解)

目錄:

  1. 計算機語言
  2. C語言的發展歷史
  3. C語言的特點
  4. 最簡單的C程序

C語言(The C Programming Language)

C語言是一種用途廣泛,功能強大,使用靈活的過程性編程語言,既可用於編寫應用軟件,又可用於編寫系統軟件。

一、計算機語言

在這裏插入圖片描述

計算機語言分類
  1. 機器語言:0 和 1
  2. 彙編語言(符號語言):英文字母和數字
  3. 高級語言:字母、數字、符號和空格……
高級語言發展的三個階段

1非結構化語言

編程風格隨意,語法要求不嚴格,程序中流程可隨意跳轉,人們往往爲了效率採用許多“小技巧”,程序難讀、難維護。
非結構化語言:BASIC , FORTRAN 和 ALGOL……

世界上第一個計算機高級語言:

FORTRAN(20世紀50年代)

2結構化語言

C語言(面向過程的語言)具有良好特性的基本結構(順序結構、選擇結構、循環結構)

其他結構化語言:

FORTRAN77,QBASIC……

3面向對象的語言

用於處理規模較大的問題面嚮對象語言:C++、C#、Visual Basic、Java、Python、PHP、Go……

計算機語言的幾種分類

1.高級語言 和 非高級語言

2.面向對象 和 面向過程

  1. 面嚮對象語言:以對象作爲基本程序結構單位的程序設計語言,大部分屬於高級語言。

  2. 面向過程語言:語言代碼按算法過程一步一步編寫的語言,既有低級語言(彙編語言),也有高級語言(C語言)。

(3)其它分類……

二、C語言的發展歷史

1972年,美國貝爾實驗室的D.M.Ritchie在B語言的基礎上設計出了C語言。最初的C語言只是爲描述和實現UNIX操作系統提供一種工作語言而設計的。
1973年,Ken Thompson和D.M.Ritchie合作把UNIX的90%以上用C語言改寫,即UNIX第5版。
1978年以後,C語言先後移植到大、中、小和微型計算機上;C語言很快風靡全球,成爲世界上最廣泛的程序設計高級語言。
1978,以UNIX第7版中的C語言編譯程序爲基礎,Brian W.Kernighan和Dennis M.Ritchie和著了影響深遠的名著 The C Programming Language,這本書中介紹的C語言成爲後來廣泛使用的C語言版本的基礎,它是實際上第一個C語言標準。
1983年,美國國家標準協會(ANSI),根據C語言問世以來各種版本對C語言的發展和擴充,制定了第一個C語言標準草案(’83 ANSIC)。
1989年,ANSI公佈了一個完整的C語言標準——ANSI C 或C 89
1990年,國際標準化組織ISO接受C89作爲國家標準ISO/IEC 9899:1990,它和ANSI的C 89基本上是相同的。
1999年,ISO又對C語言標準進行了修訂,在基本保留原來的C語言特徵的基礎上,針對應用的需要,增加了一些功能,尤其是C++中的一些功能。並在2001年和2004年先後進行了兩次技術修正,它被稱爲C 99。 ——————內容來自《C程序設計》

C語言之所以命名爲C,是因爲 C語言源自Ken Thompson發明的B語言,而 B語言則源自BCPL語言(BCPL的第二個字母)。

三、C語言的特點

  1. 語言簡潔、緊湊,使用方便、靈活。
  2. 運算符豐富(34種)
  3. 數據類型豐富(整型、浮點型、字符型……)
  4. 具有結構化的控制語句(9種)
  5. 語法限制不太嚴謹,程序設計自由度大。
  6. C語言允許直接訪問物理地址,能進行位(bit)操作,直接對硬件操作。
  7. C語言編寫的程序可移植性好
  8. 生成目標代碼質量高,程序執行效率高。

C語言即具有高級語言的功能,也具有低級語言的許多功能。C語言原來是專門爲編寫系統軟件而設計的,許多大的應用軟件也都用C語言編寫,這因爲C語言的可移植性好,硬件控制能力高,表達和運算能力強。
目前。C語言主要用途之一是編寫嵌入式系統程序。

C語言是許多高級計算機語言的基礎,C語言與其它語言基本都是相通的,先學好C語言,再去學習其它語言,上手會很快(當然,這是對大部分人而言)。

四、最簡單的C程序

最簡單的C程序 Hello world!

程序…………………………………………

#include<stdio.h>        //編譯預處理命令
int main()               //定義主函數,主函數類型爲整型(int)
{                        //函數開始的標誌
    printf("Hello world!");   //輸出內容
    return 0;            //函數執行完畢時返回一個整數值 0
}                        //函數結束的標誌

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

(1)預處理指令#include<stdio.h>

1.作用把 stdio.h 頭文件的內容讀進來
2.其它預處理命令:#define

(2)頭文件stdio.h

stdio.h 文件中具有輸入(scanf),輸出(printf)等函數的原型聲明。

  1. std表示標準:standard
  2. i 表示輸入: input
  3. o 表示輸出:output
  4. .h 表示頭文件 head (文件後綴名)

(3)主函數main

每一個C語言程序都必須有一個main,且主函數有且僅有1個。

(4)函數的返回值return 0

主函數main的返回值爲 0 時表示程序正常退出
返回值爲非零時,表示程序異常退出

(5)註釋

C語言允許兩種註釋

第二種:以 /* 開始,以 */ 結束的多行註釋(塊式註釋)
第一種:以 // 開始的單行註釋

老師說對於新手,不會的不太懂的重要的,一定要多註釋。
因爲,多註釋有許多好處,一是方便自己以後複習時,快速弄懂要點、難點;
二是以後你工作的時候能夠讓別人在夠短時間內看懂你寫的代碼……

(5)轉義字符

通過 \n 換行符,\t 橫向空格等等一些轉義字符的結合和設計,可以讓你寫的程序,輸出內容更加美觀和有吸引力。

程序…………………………………………

#include<stdio.h>
int main()
{
    printf("\n\t***********************\n");
    printf("\t*                     *\n");
    printf("\t* 歡迎來到C語言的世界 *\n");
    printf("\t*                     *\n");
    printf("\t***********************\n"); 
    return 0;
}

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

❤下面是一個C語言心形代碼❤

送個小心給你 !!

#include<stdio.h>
#include<math.h>
int main()
{
    float y,x,z,f;
    for(y=1.5f;y>-1.5f;y-=0.1f)
    {
        for(x=-1.5f;x<1.5f;x+=0.05f)
        {
            z=x*x+y*y-1;
            f=z*z*z-x*x*y*y*y;
            putchar(f<=0.0f?"*********"[(int)(f*-8.0f)]:' ');
        }
    printf("\n");
    }
    getchar();
    return 0;
}

在這裏插入圖片描述

我目前在學譚浩強寫的《C程序設計》,以上文章中有部分內容是來自《C程序設計》,大部分內容是我經過書和視頻的學習所總結的知識。

如有錯誤……請指正……謝謝!!

在這裏插入圖片描述

在這裏插入圖片描述

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章