當前位置:首頁 » 編程語言 » c語言俗稱
擴展閱讀
webinf下怎麼引入js 2023-08-31 21:54:13
堡壘機怎麼打開web 2023-08-31 21:54:11

c語言俗稱

發布時間: 2022-06-30 05:50:12

1. c語言算不算匯編語言,學匯編語言的人好像不多。

C語言不算是匯編語言,C就是C,匯編就是匯編.匯編是低級語言.C是高級語言.只是C被俗稱中級語言.很多學匯編的都是為了學破解和免殺的.對於工作沒什麼太大的用處.

2. 用C語言語句編寫的程序被稱為C語言的——

C語言是一種計算機程序設計語言。它既有高級語言的特點,又具有匯編語言的特點。它可以作為系統設計語言,編寫工作系統應用程序,也可以作為應用程序設計語言,編寫不依賴計算機硬體的應用程序。因此,它的應用范圍廣泛。

C語言對操作系統和系統使用程序以及需要對硬體進行操作的場合,用C語言明顯優於其它解釋型高級語言,有一些大型應用軟體也是用C語言編寫的。

C語言具有繪圖能力強,可移植性,並具備很強的數據處理能力,因此適於編寫系統軟體,三維,二維圖形和動畫。它是數值計算的高級語言。

常用的C語言IDE(集成開發環境)有Microsoft Visual C++,Borland C++,Watcom C++ ,Borland C++ ,Borland C++ Builder,Borland C++ 3.1 for DOS,Watcom C++ 11.0 for DOS,GNU DJGPP C++ ,Lccwin32 C Compiler 3.1,Microsoft C,High C,Turbo C等等......

C語言的缺點

1. C語言的缺點主要是表現在數據的封裝性上,這一點使得C在數據的安全性上做的有很大缺陷,這也是C和C++的一大區別。

2. C語言的語法限制不太嚴格,對變數的類型約束不嚴格,影響程序的安全性,對數組下標越界不作檢查等。從應用的角度,C語言比其他高級語言較難掌握。

[C語言指針]
指針就是C語言的一大特色,可以說C語言優於其它高級語言的一個重要原因就是因為它有指針操作可以直接進行靠近硬體的操作,但是C的指針操作也給它帶來了很多不安全的因素。C++在這方面做了很好的改進,在保留了指針操作的同時又增強了安全性。Java取消了指針操作,提高了安全性。

C源程序的結構特點

1.一個C語言源程序可以由一個或多個源文件組成。

2.每個源文件可由一個或多個函數組成。

3.一個源程序不論由多少個文件組成,都有一個且只能有一個main函數,即主函數。

4.源程序中可以有預處理命令(include 命令僅為其中的一種),預處理命令通常應放在源文件或源程序的最前面。

5.每一個說明,每一個語句都必須以分號結尾。但預處理命令,函數頭和花括弧「}」之後不能加分號。

6.標識符,關鍵字之間必須至少加一個空格以示間隔。若已有明顯的間隔符,也可不再加空格來間隔。

學習C語言

在初學C語言時,可能會遇到有些問題理解不透,或者表達方式與以往數學學習中不同(如運算符等),這就要求不氣餒,不明白的地方多問多想,鼓足勇氣進行學習,待學完後面的章節知識,前面的問題也就迎刃而解了,這一方面我感覺是我們同學最欠缺,大多學不好的就是因為一開始遇到困難就放棄,曾經和好多同學談他的問題,回答是聽不懂、不想聽、放棄這樣三個過程,我反問,這節課你聽過課嗎?回答又是沒有,根本就沒聽過課,怎麼說自己聽不懂呢?相應的根本就沒學習,又談何學的好?
學習C語言始終要記住「曙光在前頭」和「千金難買回頭看」,「千金難買回頭看」是學習知識的重要方法,就是說,學習後面的知識,不要忘了回頭弄清遺留下的問題和加深理解前面的知識,這是我們學生最不易做到的,然而卻又是最重要的。學習C語言就是要經過幾個反復,才能前後貫穿,積累應該掌握的C知識。
那麼,我們如何學好《C程序設計》呢?
一.學好C語言的運算符和運算順序
這是學好《C程序設計》的基礎,C語言的運算非常靈活,功能十分豐富,運算種類遠多於其它程序設計語言。在表達式方面較其它程序語言更為簡潔,如自加、自減、逗號運算和三目運算使表達式更為簡單,但初學者往往會覺的這種表達式難讀,關鍵原因就是對運算符和運算順序理解不透不全。當多種不同運算組成一個運算表達式,即一個運算式中出現多種運算符時,運算的優先順序和結合規則顯得十分重要。在學習中,只要我們對此合理進行分類,找出它們與我們在數學中所學到運算之間的不同點之後,記住這些運算也就不困難了,有些運算符在理解後更會牢記心中,將來用起來得心應手,而有些可暫時放棄不記,等用到時再記不遲。
先要明確運算符按優先順序不同分類,《C程序設計》運算符可分為15種優先順序,從高到低,優先順序為1 ~ 15,除第2、3級和第14級為從右至左結合外,其它都是從左至右結合,它決定同級運算符的運算順序.

二.學好C語言的四種程序結構
(1)順序結構
順序結構的程序設計是最簡單的,只要按照解決問題的順序寫出相應的語句就行,它的執行順序是自上而下,依次執行。
例如;a = 3,b = 5,現交換a,b的值,這個問題就好像交換兩個杯子水,這當然要用到第三個杯子,假如第三個杯子是c,那麼正確的程序為: c = a; a = b; b = c; 執行結果是a = 5,b = c = 3如果改變其順序,寫成:a = b; c = a; b = c; 則執行結果就變成a = b = c = 5,不能達到預期的目的,初學者最容易犯這種錯誤。順序結構可以獨立使用構成一個簡單的完整程序,常見的輸入、計算,輸出三步曲的程序就是順序結構,例如計算圓的面積,其程序的語句順序就是輸入圓的半徑 r,計算s = 3.14159*r*r,輸出圓的面積s。不過大多數情況下順序結構都是作為程序的一部分,與其它結構一起構成一個復雜的程序,例如分支結構中的復合語句、循環結構中的循環體等。

(2) 分支結構
順序結構的程序雖然能解決計算、輸出等問題,但不能做判斷再選擇。對於要先做判斷再選擇的問題就要使用分支結構。分支結構的執行是依據一定的條件選擇執行路徑,而不是嚴格按照語句出現的物理順序。分支結構的程序設計方法的關鍵在於構造合適的分支條件和分析程序流程,根據不同的程序流程選擇適當的分支語句。分支結構適合於帶有邏輯或關系比較等條件判斷的計算,設計這類程序時往往都要先繪制其程序流程圖,然後根據程序流程寫出源程序,這樣做把程序設計分析與語言分開,使得問題簡單化,易於理解。程序流程圖是根據解題分析所繪制的程序執行流程圖。
學習分支結構不要被分支嵌套所迷惑,只要正確繪制出流程圖,弄清各分支所要執行的功能,嵌套結構也就不難了。嵌套只不過是分支中又包括分支語句而已,不是新知識,只要對雙分支的理解清楚,分支嵌套是不難的。下面我介紹幾種基本的分支結構。
①if(條件)
{
分支體
}
這種分支結構中的分支體可以是一條語句,此時「」可以省略,也可以是多條語句即復合語句。它有兩條分支路徑可選,一是當條件為真,執行分支體,否則跳過分支體,這時分支體就不會執行。如:要計算x的絕對值,根據絕對值定義,我們知道,當x>=0時,其絕對值不變,而x<0時其絕對值是為x的反號,因此程序段為:if(x<0) x=-x;

②if(條件)

else

這是典型的分支結構,如果條件成立,執行分支1,否則執行分支2,分支1和分支2都可以是1條或若干條語句構成。如:求ax^2+bx+c=0的根
分析:因為當b^2-4ac>=0時,方程有兩個實根,否則(b^2-4ac<0)有兩個共軛復根。其程序段如下:
d=b*b-4*a*c;
if(d>=0)
{x1=(-b+sqrt(d))/2a;
x2=(-b-sqrt(d))/2a;
printf(「x1=%8.4f,x2=%8.4f\n」,x1,x2);
}
else
{r=-b/(2*a);
i =sqrt(-d)/(2*a);
printf(「x1=%8.4f+%8.4fi\n」r, i);
printf(「x2=%8.4f-%8.4fi\n」r,i)
}

③嵌套分支語句:其語句格式為:
if(條件1) ;
else if(條件2)
else if(條件3)
……
else if(條件n)
else
嵌套分支語句雖可解決多個入口和出口的問題,但超過3重嵌套後,語句結構變得非常復雜,對於程序的閱讀和理解都極為不便,建議嵌套在3重以內,超過3重可以用下面的語句。

④switch開關語句:該語句也是多分支選擇語句,到底執行哪一塊,取決於開關設置,也就是表達式的值與常量表達式相匹配的那一路,它不同if… else 語句,它的所有分支都是並列的,程序執行時,由第一分支開始查找,如果相匹配,執行其後的塊,接著執行第2分支,第3分支……的塊,直到遇到break語句;如果不匹配,查找下一個分支是否匹配。這個語句在應用時要特別注意開關條件的合理設置以及break語句的合理應用。

(3)循環結構:
循環結構可以減少源程序重復書寫的工作量,用來描述重復執行某段演算法的問題,這是程序設計中最能發揮計算機特長的程序結構,C語言中提供四種循環,即 goto循環、while循環、do –while循環和for循環。四種循環可以用來處理同一問題,一般情況下它們可以互相代替換,但一般不提倡用goto循環,因為強制改變程序的順序經常會給程序的運行帶來不可預料的錯誤,在學習中我們主要學習while、do…while、for三種循環。常用的三種循環結構學習的重點在於弄清它們相同與不同之處,以便在不同場合下使用,這就要清楚三種循環的格式和執行順序,將每種循環的流程圖理解透徹後就會明白如何替換使用,如把while循環的例題,用for語句重新編寫一個程序,這樣能更好地理解它們的作用。特別要注意在循環體內應包含趨於結束的語句(即循環變數值的改變),否則就可能成了一個死循環,這是初學者的一個常見錯誤。
在學完這三個循環後,應明確它們的異同點:用while和do…while循環時,循環變數的初始化的操作應在循環體之前,而for循環一般在語句1中進行的;while 循環和for循環都是先判斷表達式,後執行循環體,而do…while循環是先執行循環體後判斷表達式,也就是說do…while的循環體最少被執行一次,而while 循環和for就可能一次都不執行。另外還要注意的是這三種循環都可以用break語句跳出循環,用continue語句結束本次循環,而goto語句與 if構成的循環,是不能用break和 continue語句進行控制的。
順序結構、分支結構和循環結構並不彼此孤立的,在循環中可以有分支、順序結構,分支中也可以有循環、順序結構,其實不管哪種結構,我們均可廣義的把它們看成一個語句。在實際編程過程中常將這三種結構相互結合以實現各種演算法,設計出相應程序,但是要編程的問題較大,編寫出的程序就往往很長、結構重復多,造成可讀性差,難以理解,解決這個問題的方法是將C程序設計成模塊化結構。

(4)模塊化程序結構
C語言的模塊化程序結構用函數來實現,即將復雜的C程序分為若干模塊,每個模塊都編寫成一個C函數,然後通過主函數調用函數及函數調用函數來實現一大型問題的C程序編寫,因此常說:C程序=主函數+子函數。 因此,對函數的定義、調用、值的返回等中要尤其注重理解和應用,並通過上機調試加以鞏固。

三.掌握一些簡單的演算法
編程其實一大部分工作就是分析問題,找到解決問題的方法,再以相應的編程語言寫出代碼。這就要求掌握演算法,根據我們的《C程序設計》教學大綱中,只要求我們掌握一些簡單的演算法,在掌握這些基本演算法後,要完成對問題的分析就容易了。如兩個數的交換、三個數的比較、選擇法排序和冒泡法排序,這就要求我們要清楚這些演算法的內在含義
結語:當我們把握好上述幾方面後,只要同學們能克服畏難、厭學、上課能專心聽講,做好練習與上機調試,其實C語言並不難學

C源程序的關鍵字---------------------------------------------------------------------------------------
所謂關鍵字就是已被C語言本身使用, 不能作其它用途使用的字。例如關鍵字不能用作變數名、函數名等
由ANSI標準定義的C語言關鍵字共32個 :
auto double int struct break else long switch case enum register typedef char extern return union const float short unsigned continue for signed void default goto sizeof volatile do if while static
根據關鍵字的作用,可分其為數據類型關鍵字、控制語句關鍵字、存儲類型關鍵字和其它關鍵字四類。
1 數據類型關鍵字(12個):
(1) char :聲明字元型變數或函數
(2) double :聲明雙精度變數或函數
(3) enum :聲明枚舉類型
(4) float:聲明浮點型變數或函數
(5) int: 聲明整型變數或函數
(6) long :聲明長整型變數或函數
(7) short :聲明短整型變數或函數
(8) signed:聲明有符號類型變數或函數
(9) struct:聲明結構體變數或函數
(10) union:聲明聯合數據類型
(11) unsigned:聲明無符號類型變數或函數
(12) void :聲明函數無返回值或無參數,聲明無類型指針(基本上就這三個作用)
(2)控制語句關鍵字(12個):
A循環語句
(1) for:一種循環語句(可意會不可言傳)
(2) do :循環語句的循環體
(3) while :循環語句的循環條件
(4) break:跳出當前循環
(5) continue:結束當前循環,開始下一輪循環
B條件語句
(1)if: 條件語句
(2)else :條件語句否定分支(與 if 連用)
(3)goto:無條件跳轉語句
C開關語句
(1)switch :用於開關語句
(2)case:開關語句分支
(3)default:開關語句中的「其他」分支
D
return :子程序返回語句(可以帶參數,也看不帶參數)
3 存儲類型關鍵字(4個)
(1)auto :聲明自動變數 一般不使用
(2)extern:聲明變數是在其他文件正聲明(也可以看做是引用變數)
(3)register:聲明積存器變數
(4)static :聲明靜態變數
4 其它關鍵字(4個):
(1)const :聲明只讀變數
(2)sizeof:計算數據類型長度
(3)typedef:用以給數據類型取別名(當然還有其他作用
(4)volatile:說明變數在程序執行中可被隱含地改變

3. 編程語言 C

編程語言(programming language),是用來定義計算機程序的形式語言。它是一種被標准化的交流技巧,用來向計算機發出指令。一種計算機語言讓程序員能夠准確地定義計算機所需要使用的數據,並精確地定義在不同情況下所應當採取的行動。[1]
最早的編程語言是在電腦發明之後產生的,當時是用來控制提花織布機及自動演奏鋼琴的動作。在電腦領域已發明了上千不同的編程語言,而且每年仍有新的編程語言誕生。很多編程語言需要用指令方式說明計算的程序,而有些編程語言則屬於聲明式編程,說明需要的結果,而不說明如何計算。[1]
編程語言的描述一般可以分為語法及語義。語法是說明編程語言中,哪些符號或文字的組合方式是正確的,語義則是對於編程的解釋。有些語言是用規格文件定義,例如C語言的規格文件也是ISO標准中一部份,2011年後的版本為ISO/IEC 9899:2011,而其他語言(像Perl)有一份主要的編程語言實現文件,視為是參考實現。[1]
編程語言俗稱「計算機語言」,種類非常的多,總的來說可以分成機器語言、匯編語言、高級語言三大類。電腦每做的一次動作,一個步驟,都是按照已經用計算機語言編好的程序來執行的,程序是計算機要執行的指令的集合,而程序全部都是用我們所掌握的語言來編寫的。所以人們要控制計算機一定要通過計算機語言向計算機發出命令。 目前通用的編程語言有兩種形式:匯編語言和高級語言。[1]

4. C語言為什麼叫做C語言而不叫A,B,D..Z等語言

C語言的祖先是BCPL語言。 1967年,劍橋大學的 Martin Richards 對CPL語言進行了簡化,於是產生了BCPL(Basic Combined Programming Language)語言。 1970年,美國貝爾實驗室的 Ken Thompson。以BCPL語言為基礎,設計出很簡單且很接近硬體的B語言(取BCPL的首字母)。並且他用B語言寫了第一個UNIX操作系統。 在1972年,美國貝爾實驗室的 D.M.Ritchie 在B語言的基礎上最終設計出了一種新的語言,他取了BCPL的第二個字母作為這種語言的名字,這就是C語言。 為了使UNIX操作系統推廣,1977年Dennis M.Ritchie發表了不依賴於具體機器系統的C語言編譯文本《可移植的C語言編譯程序》。 1978年由美國電話電報公司(AT&T)貝爾實驗室正式發表了C語言。同時由B.W.Kernighan和D.M.Ritchie合著了著名的《The C Programming Language》一書。通常簡稱為《K&R》,也有人稱之為《K&R》標准。但是,在《K&R》中並沒有定義一個完整的標准C語言,後來由美國國家標准化協會(American National Standards Institute)在此基礎上制定了一個C語言標准,於一九八三年發表。通常稱之為ANSI C。 K&R第一版在很多語言細節上也不夠精確,對於pcc這個「參照編譯器」來說,它日益顯得不切實際;K&R甚至沒有很好表達它所要描述的語言,把後續擴展扔到了一邊。最後,C在早期項目中的使用受商業和政府合同支配,這意味著一個認可的正式標準是必需的。因此(在M. D. McIlroy的催促下),ANSI於1983年夏天,在CBEMA的領導下建立了X3J11委員會,目的是產生一個C標准。X3J11在1989年末提出了一個他們的報告[ANSI 89],後來這個標准被ISO接受為ISO/IEC 9899-1990。 1990年,國際標准化組織ISO(International Organization for Standards)接受了89 ANSI C 為I SO C 的標准(ISO9899-1990)。1994年,ISO修訂了C語言的標准。 1995年,ISO對C90做了一些修訂,即「1995基準增補1(ISO/IEC/9899/AMD1:1995)」。1999年,ISO又對C語言標准進行修訂,在基本保留原來C語言特徵的基礎上,針對應該的需要,增加了一些功能,尤其是對C++中的一些功能,命名為ISO/IEC9899:1999。 2001年和2004年先後進行了兩次技術修正。 目前流行的C語言編譯系統大多是以ANSI C為基礎進行開發的,但不同版本的C編譯系統所實現的語言功能和語法規則又略有差別。 2011年12月,ISO正式公布C語言新的國際標准草案:ISO/IEC 9899:2011。 新的標准修提高了對C++的兼容性,並將新的特性增加到C語言中。新功能包括支持多線程, 基於ISO/IEC TR 19769:2004規范下支持Unicode,提供更多用於查詢浮點數類型特性的宏定義和靜態聲明功能。

5. C語言題急求!~!~!~!~!~!~!~!~!~!

1.
最初的C語言是為描述和實現
UNIX
操作系統而設計的。
2.
C語言規定,標識符必須以字母或
下劃線
開頭。
3.
C語言的double型數據在內存中佔用
8
個位元組的存儲單元。
4.
×C語言的變數有
2
種存儲類型,其中
static
型變數不進行初始化時,初值自動為0
5.寫出下列表達式的求值結果:
(1)
2+3<=2
0
(2)
5/3+2
3
(3)
!
(3>2)||8!=7
1
(4)
3+7%3
4
6.已知int=12;
執行語句a*=2+4後,變數a的值為
24

7.已知int=2,b;
執行語句b=
a--;
後,變數a的值為
1
,
b的值為
2

8.若有int
a=2,b=1,c=0;
執行語句c=a++
-
b
-
-;
後,變數c的值為
1
,b的值為
0
一、
判斷題(1×5分,正確的畫√,錯誤的畫×)
(×)1.
C語言俗稱「低級語言的高級形式」,這說明C語言的功能不強。
(√)2.
C語言允許用實型表達式向整型變數賦值。
×(×)3.
C語言的全局變數只能是extern存儲類型。
×(×)4.
已知int
a[4],*p;則語句p=&a;是正確的。
(×)5.
下面的程序段構成死循環。
a=5;
while
(1)
{a--;
if
(a<0)
break
;
}
三、單項選擇題:(2×10分)
1.
在IBM-PC機中,unsigned
int類型表示的數據范圍是(
D
)。
A)0-127
B)0-255
C)0-32767
D)0-65535
2.
下列符號中,合法的C常量是(
C
)。
A)
1e8.2
B)
0XFFH
C)
『\n』
D)
089
3.語句x=3;
do{printf(「%d」,x);x--}while(x=
=0);
的執行結果是(
C
)。
A)3210
B)
321
C)3
D)無任何顯示
4.
已知p、q
是兩個同類型的指針變數,下列表達式有語法錯誤的是(
B
)。
(A)p!=NULL&&p=
=q
(B)
p*q
(C)p++,q--
(D)p-q+1
5.若k=
-1,
表達式k=
k>=0
?
(k-2)
:
(
k+2)
的值為(
D
)。
(A)-3
(B)
-2
(C)1
(D)2
×6.下面關於C函數的說法中正確的是(
B
)。
A)C函數的返回值類型必須是整型、實型或指針三者之一
B)C函數的返回值必須用return語句帶回主函數
C)C函數允許遞歸調用,也允許在函數體中定義子函數
D)任何C函數必須使用return語句帶回主程序
×7.若定義typedef
struct
user
{int
num;
char
name[21];
long
code;}
UserTp,;
則表達式
sizeof(UserTp)的值為(
D
)。
A)
0
B)
21
C)
31
D)
27
×8.已知static
int
a[
]={1,2,3,4};
int
*p;
若有p=a+2;
則*p++的值為(
C
)。
A)1
B)2
C)3
D)4
×9.定義C函數時,若預設函數返回值類型,則返回值類型為(
A
)。
A)int
B)char
C)void
D)char
*
10.
×為只讀操作打開正文(文本)文件,正確的打開方式是(
A
)。
A)
「r+」
B)
「a」
C)
「w」
D)
「rb」
四、多項選擇題(2×5分,多選或錯選不得分,少選得1分)
1.以下數據類型在內存中佔用4個位元組的是(
BC
)。
A)
int
B)
unsigned
long
C)
float
D)
unsigned
char
×2.
定義char
s[81];
後,能正確輸入一個字元串到數組s的語句是(
ABC
)。
A)gets(s);
B)scanf
(」%c」,s);
C)scanf
(」%s」,&s[0]);
D)gets(&s[0]);
3.
以下關於C源程序文件的說法中正確的是(
BCD

A)是一種二進制文件
B)是一種文本(ASCII碼)文件
C)可以用DOS的type命令顯示其內容
D)文件擴展名一般為c
×4.
下面關於C語言的說法錯誤的是(
ACD
)。
A)
C函數必須有形式參數
B)
任何復合語句體的{
}中允許定義局部變數
C)
局部變數都存儲在動態存貯區
D)
C程序的執行起點只能是main函數
5.
以下程序正確計算p=n!
(n>=0)的是(
AB
)。
A)
for(p=1.0,k=1;k<=n;)
p*=k++;
B)
p=1.0;k=0;while(k<n)
p*=++k;
C)
p=1.0;k=1;do{++k;p*=k;}
while(k<=n);
D)
p=1.0;for(k=n;k>=1;k--)
p*=k--;
五、讀程序與程序填空(共22分)
1.閱讀以下程序,寫出程序運行結果:(共3Χ4分)
×
(1)
#include
」stdio.h」
void
main()
{char
a[61],*s;int
n;
gets(a);
for(s=a;*s;s++)
if(*s>=』a』&&*s<=』z』)
*s-32;
puts(a);
}
若程序的輸入為abcb,則輸出結果為
ABCD

(2)
#include
」stdio.h」
void
main()
{
int
s=0,k=0;
while(k<4)
{s+=k;k++;printf(「%d」,s);}
}
該程序的輸出是
0136

(3)
#include
「stdio.h」
void
main(
)
{static
int
a[5]={2,-15,1,0,-7};
int
i;
for(i=0;i<5;i++)
if(a[i]<0)
a[i]
=
-a[i];
for(i=4;i>=0;i--)
printf(「%4d」,
a[i]);
}
該程序的輸出是7
0
1
15
12
(4)
×#include
「stdio.h」
#define
N
5
int
swap(int
*p,
int
*q)
{int
t;
if(p<q)
{t=*p;*p=*q;*q=t;}
return
p<q;
}
void
f(int
a[
],int
m)
{int
*p,
*q;
p=a;q=a+m;
while(swap(p,q))
{p++;
q--}
}
void
main(
)
{int
m,a[N];
for(m=0;m<N;m++)
scanf(「%d」,a+m);
f(a,N-1);
for(m=0;m<N;m++)
printf(「%d」,a[m]);
}
若程序的輸入為1
2
3
4
5,
則輸出結果為
5
4
3
2
1
2.程序填空:(共10分)
(1)
×以下程序的功能是輸入年、月、日,求該日期是這一年的第幾天,填空使之完善。
#include
「stdio.h」
int
IsLeap(int
y)
/*
此函數的功能是判斷年號y是否為閏年
*/
/*
已知閏年的條件是年號y能被4整除,但不能被100整除,或年號y能被400整除
*/
{int
r;
if(
y%4=
=0&&y%100!=0||y%400=
=0
)
r=1;
else
r=
0
;return
r;}
int
DaysofMonth(int
y,int
m)
/*
此函數的功能是求y年m月的天數
*/
{
int
days;
switch(m)
{case
4,6,9,11:days=30;break;
case
2:if(IsLeap(y))
days=28;else
days=29;break;
default:days=
31
;
}
return
days
;
}
void
main
(
)
{int
k,y,m,d,days;
printf(「Input
year,month,date:」);scanf(「%d%d%d」,&y,&m,&d);
days=0;
for(k=
1
;
k<m
;k++)days+=
DaysofMonth(y,k);
days+=d;
printf(「days=%d\n」,days);}
(2)
下面程序的功能是輸出100至1000以內的素數,請填空使之完善。
#include
「stdio.h」
#include

math.h

void
main
(
)
{
int
m,k,j;
for(m=100;m<=1000;m++)
{k=sqrt(m);
for(j=2;
j<=k
;j++)
if(m%j
=
=
0)
break;
if(
j>k或
j>=k+1
)
printf(「%5d」,m);
}
}
六、根據題意編寫程序:(3Χ6+10=28分)
1.
編程序,從鍵盤輸入a0,a1,a2,…,an計算s=ao+a1x+a2x2+…+anxn
×2.編程序,將正文(文本)文件中的小寫字母變成大寫並統計輸出文件有多少個字元,
要求文件名由鍵盤輸入。
×3.編程序,輸入n個英文單詞(n用#define定義為8),然後將這些單詞按英文字典順
序輸出。
×4.編程序,從鍵盤輸入n個學生的姓名、學號和住址,按照學號次序把它們串成一個單向鏈表。
1.
main(
)
{float
x,a[n+1],s=0.0;
int
i,n;printf(「請輸入n和x的值」);scanf(「%d,%f」,n,x);printf(「請輸入所有系數的值」);
for(i=0;i<=n;i++)scanf(「%f」,&a[i]);
for(i=0;i<=n;i++)
s=s+a[i]*pow(x,i);printf(「s=%f」,s」);}
2.
#include
「stdio.h」
main
(
)
{int
i;char
ch,name[80];
FILE
*fp;
i=0;
printf(「please
input
the
filename:」);
scanf(「%s」,name);
if((fp=fopen(name,」r+」))==NULL)
{
printf(「cannot
open
the
file」);
exit(0);}
ch=fgetc(fp);
i++;
if((ch>=』a』)&&(ch<=』z』))
ch=ch-32;
fputc(ch,fp);
printf(「字元總數為%」,i);
fclose(fp);
}
3.
#include
"stdio.h"
#include
"string.h"
#define
n
8
void
main(
)
{char
*p,*s[n],t[21];
int
i,j;
for(i=0;i<n;i++)
{scanf("%s",t);
s[i]=(char
*)malloc(strlen(t)+1);
strcpy(s[i],t);
}
for(i=0;i<n-1;i++)
for(j=i+1;j<n;j++)
if(strcmp(s[i],s[j])>0)
{p=s[i];s[i]=s[j];s[j]=p;}
for(i=0;i<n;i++)
printf("%s\n",s[i]);
}
輸入
basic
good
well
c
pascal
morning
hlr
cpp
輸出:
basic
c
cpp
good
hlr
morning
pascal
well

6. 為什麼計算機有個叫C語言而不叫A B 語言

C 語言是1972年由美國的Dennis Ritchie設計發明的, 並首次在UNIX操作系統
的 DEC PDP-11 計算機上使用。 它由早期的編程語言 BCPL( Basic Combind
Programming Language) 發展演變而來。在1970年, AT&T 貝爾實驗室的 Ken
Thompson根據BCPL語言設計出較先進的並取名為 B的語言, 最後導了C 語言的問世。
隨著微型計算機的日益普及, 出現了許多C 語言版本。由於沒有統一的標准,
使得這些C 語言之間出現了一些不一致的地方。為了改變這種情況, 美國國家標准
研究所(ANSI)為C 語言制定了一套ANSI標准, 成為現行的C語言標准。

C 語言發展如此迅速, 而且成為最受歡迎的語言之一, 主要因為它具有強大的
功能。許多著名的系統軟體, 如DBASE Ⅲ PLUS、DBASE Ⅳ 都是由C 語言編寫的。
用C 語言加上一些匯編語言子程序, 就更能顯示C 語言的優勢了, 象PC- DOS 、
WORDSTAR等就是用這種方法編寫的。歸納起來C 語言具有下列特點:
1. C是中級語言
它把高級語言的基本結構和語句與低級語言的實用性結合起來。C 語言可以象
匯編語言一樣對位、位元組和地址進行操作, 而這三者是計算機最基本的工作單元。
2. C是結構式語言
結構式語言的顯著特點是代碼及數據的分隔化, 即程序的各個部分除了必要的
信息交流外彼此獨立。這種結構化方式可使程序層次清晰, 便於使用、維護以及調
試。C 語言是以函數形式提供給用戶的, 這些函數可方便的調用, 並具有多種循
環、條件語句控製程序流向, 從而使程序完全結構化。
3. C語言功能齊全
C 語言具有各種各樣的數據類型, 並引入了指針概念, 可使程序效率更高。另
外C 語言也具有強大的圖形功能, 支持多種顯示器和驅動器。而且計算功能、邏輯
判斷功能也比較強大, 可以實現決策目的。
4. C語言適用范圍大
C 語言還有一個突出的優點就是適合於多種操作系統, 如DOS、UNIX,也適用於
多種機型。

7. C和VC有什麼區別

C和VC的區別如下:

1、概念上的區別

C是一種編程語言,是軟體編程的一般規范,而VC是一種編程環境或工具。 VC是Microsoft公司在C的基礎上提供一些Windows圖形界面庫。 可以說VC是C加上Windows圖形庫。

2、學習方式上的區別

VC教科書假定用戶已經掌握了C語言,假如沒有C的基礎,是無法了解有關MFC的任何知識的。

3、使用上的區別

C是一種編程語言,而VC是一種工具。 C與平台無關。 VC只能在Windows上運行。 學習VC,是學習Windows編程。 學習者應該首先學習一種編程語言,例如C,然後再專門學習與平台相關的知識,例如VC。

8. 計算機語言有幾種名稱是什麼

計算機語言的種類非常的多,總的來說可以分成機器語言,匯編語言,高級語言三大類。

計算機語言(Computer Language)指用於人與計算機之間通訊的語言。計算機語言是人與計算機之間傳遞信息的媒介。計算機系統最大特徵是指令通過一種語言傳達給機器。

為了使電子計算機進行各種工作,就需要有一套用以編寫計算機程序的數字、字元和語法規劃,由這些字元和語法規則組成計算機各種指令(或各種語句)。這些就是計算機能接受的語言。

(8)c語言俗稱擴展閱讀:

一、相關特點

在沒有程序語言以前,計算機科學家們寫程序都是以開關電閘(即用二進制)來實現(表示)的,後來有了匯編,在後來有了C,直到今天有了C++、JAVA、VB、Delphi等等各種各樣的編程語言層出不窮。

可就在計算機語言不斷的演化過程中,每一種語言都有一些共性是不變的.。這些共性可概括為以下三點:

其一是:內存電位的設置。(置1或0)

其二是:條件判斷(if,else)該功能可通過邏輯門實現。

其三是:循環,也就是程序下一條指令地址可設置。

二、高級語言的發展

特別要提到的:在C語言誕生以前,系統軟體主要是用匯編語言編寫的。由於匯編語言程序依賴於計算機硬體,其可讀性和可移植性都很差;但一般的高級語言又難以實現對計算機硬體的直接操作(這正是匯編語言的優勢),於是人們盼望有一種兼有匯編語言和高級語言特性的新語言——C語言。

高級語言的發展也經歷了從早期語言到結構化程序設計語言,從面向過程到非過程化程序語言的過程。相應地,軟體的開發也由最初的個體手工作坊式的封閉式生產,發展為產業化、流水線式的工業化生產。

高級語言的下一個發展目標是面向應用,也就是說:只需要告訴程序你要干什麼,程序就能自動生成演算法,自動進行處理,這就是非過程化的程序語言。

9. 為什麼C語言叫C語言呢

C語言只是簡稱而已,大家習慣那樣叫了,
C語言其根源可以追溯到ALGOL60,在此基礎推出了CPL,繼而簡化為BCPL (B語言,取其第一個字母),後來又做了進一步改進,區別起見取其第二個字母C,即為現在的C語言了
全名是CombinedProgammingLanguage
樓上說的AB語言, B語言確實存在,B語言進化改編而來成C語言,至於A語言在下目前沒有聽過。
C語言後來被人們經過改編進化成C++,寫出來的代碼相對於C語言要假簡潔強大,大家普遍使用Visual C++編寫程序 不過Visual C++只是一個編譯C語言和C++的編譯器,至於C++全稱可以分為很多大類,各式各樣的C++,有用於PC的別的C++,有用於其它平台的C++。
就如 unix 是 統稱,具體的unix 有Sun的,HP的,SGI的,DEC的,linux 等。
要想學好C++ 建議先學C語言