简单的C语言程序介绍(重点理解),超详细基础代码解析
下面通過一個例子來簡單介紹組成一個C源程序的基本部分和書寫格式。
例1
int main() //main是主函數(shù)的函數(shù)名,表示這是一個主函數(shù)(每個C源程序都必須有,并且只能有一個主函數(shù)(main函數(shù))) {printf("Hello, world!\n"); //printf函數(shù)是一個由系統(tǒng)定義的標(biāo)準(zhǔn)函數(shù),可以在程序中直接調(diào)用return 0; //因為在函數(shù)聲明的時候?qū)懙氖莍nt main(),int就是你需要返回該函數(shù)的返回值,return 0表示main函數(shù)結(jié)束。相當(dāng)于有頭就要有腳的意思,聲明了int,就一定要有int型的返回值,如果你不希望有返回值的話,只要void main()就可以了.函數(shù)通過return語句返回一個值,返回的值類型與函數(shù)類型一樣。return語句只執(zhí)行一次,執(zhí)行完或函數(shù)體結(jié)束后退出函數(shù)。 }C語言簡單代碼介紹
代碼(該程序的功能是從鍵盤輸入一個數(shù)x,求x的正弦值,然后輸出結(jié)果):
例2
#include<math.h> #include<stdio.h> //include稱為文件包含命令,擴展名為.h的文件稱為頭文件int main() {double x,s; //定義兩個實數(shù)變量,以被后面的程序使用printf("input a number:\n"); //顯示提示信息scanf("%lf",&x); //從鍵盤獲得一個實數(shù)xs=sin(x); //求x的正弦值,并把它賦給變量sprintf("sin of %lf is %lf\n",x,s); //顯示程序運算結(jié)果return 0; //表示main函數(shù)結(jié)束 }注解:
1.在main()之前的兩行稱為預(yù)處理命令。預(yù)處理命令還有其它幾種,這里的include稱為文件包含命令,其意義是把尖括號< >或引號" "內(nèi)指定的文件包含到本程序來,成為本程序的一部分。被包含的文件通常由系統(tǒng)提供,其擴展名.h(稱為頭文件或首部文件)。
2.C語言的頭文件包括了各個標(biāo)準(zhǔn)庫函數(shù)的函數(shù)原型。凡是在程序中調(diào)用一個庫函數(shù)時,都必須包含該函數(shù)原型所在的頭文件。
3.在這個例子中,使用了三個庫函數(shù):
輸入函數(shù)scanf:數(shù)學(xué)函數(shù),其頭文件為math.h文件,因此在程序的主函數(shù)前用include命令包含了math.h。
正弦函數(shù)sin、輸出函數(shù)printf:scanf和printf是標(biāo)準(zhǔn)輸入輸出函數(shù),其頭文件為stdio.h,在主函數(shù)前也用include命令包含了stdio.h文件。
4.例2中的主函數(shù)體又分為兩個部分。一部分為說明部分,另一部分為執(zhí)行部分。
說明部分:說明部分指變量的類型說明。例1中沒有使用任何變量,所以沒有說明部分。C語言中規(guī)定,源程序中所有用到的變量都必須先說明,后使用,否則會報錯。(這也是編譯型高級程序設(shè)計語言的一個特點,與解釋型的BASIC語言是不同的)說明部分是C源程序結(jié)構(gòu)中重要的組成部分。例2中使用了兩個變量x和s,用來表示輸入的自變量和sin函數(shù)值。由于sin函數(shù)要求這兩個量必須是雙精度浮點型,所以用類型說明符double來說明這兩個變量。
執(zhí)行部分:例2說明部分的后四行為執(zhí)行部分(或稱為執(zhí)行語句部分),用以完成程序的功能。執(zhí)行部分的第一行是輸出語句,調(diào)用printf函數(shù)在顯示器上輸出提示字符串,請用戶輸入自變量x的值。第二行為輸入語句,調(diào)用scanf函數(shù),接受鍵盤上輸入的數(shù)并存入變量x中。第三行是調(diào)用sin函數(shù)并把函數(shù)值送到變量s中。第四行是用printf函數(shù)輸出變量s的值,即x的正弦值。程序結(jié)束。
6.運行本程序時,首先在顯示器上給出提示串input a number,這是由自行部分的第一行完成的。用戶在提示下從鍵盤上鍵入某一個數(shù),如8,按下回車鍵,屏幕上就會給出運算的結(jié)果。
注1:為什么C語言main前面要加一個int?
在C99標(biāo)準(zhǔn)未發(fā)布前,一般把main函數(shù)定義為void,即無返回值類型,c99標(biāo)準(zhǔn)發(fā)布后,里面明確規(guī)定定義main時要定義成int型,原因是因為main函數(shù)是系統(tǒng)調(diào)用的,在main函數(shù)運行結(jié)束后,要返回一個值給操作系統(tǒng),以此main函數(shù)是否執(zhí)行正常,如果main返回值為0說明正常結(jié)束,否則說明程序運行出錯,需要調(diào)用一些錯誤處理
(如內(nèi)存分配失敗,資源申請失敗等)。
注2:所有輸入字符必須是英文字符,比如逗號和分號等,必須是英文,如果是中文就會報錯。(注意觀察符號差別,這是許多新手必犯的錯誤)
輸入和輸出函數(shù)
(1)輸入輸出函數(shù)scanf和printf是使用最頻繁的函數(shù)。
(2)格式輸入輸出是C語言的重難點。
輸入輸出函數(shù)的格式
scanf和printf分別稱為格式輸入函數(shù)和格式輸出函數(shù),意義是按指定格式輸入輸出值。這兩個函數(shù)括號中的參數(shù)表由一下兩個部分組成:
"格式控制串", 參數(shù)表
格式控制串:是一個字符串,必須用雙引號括起來,它表示了輸入輸出量的數(shù)據(jù)類型。(printf函數(shù)中還可以在格式控制串內(nèi)出現(xiàn)非格式控制字符,這時在屏幕上將原文直接打印)參數(shù)表中給了輸入和輸出的量,當(dāng)有多個量時,用逗號間隔。例如:printf("sin of %lf is %lf \n",x,s); (其中的%lf為格式字符,表示按雙精度浮點數(shù)處理。它在格式串中出現(xiàn)了兩次,對應(yīng)了x和s兩個變量。其余字符為非格式字符則照原樣輸出在屏幕上)
總結(jié)
以上是生活随笔為你收集整理的简单的C语言程序介绍(重点理解),超详细基础代码解析的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: angular --- ngDialo
- 下一篇: 940B. Our Tanya is C