當前位置:首頁 » 編程語言 » 趙山林c語言程序設計

趙山林c語言程序設計

發布時間: 2022-08-26 16:54:21

❶ 想自學c語言,哪位大神推薦本教材; (沒分啦 所以不能懸賞啦)

譚浩強的《C語言程序設計》 新手很容易上手 雖然你說算了 但是還是建議。如果非要國外的話,推薦幾本Kernighan &
Ritchie 的《The C Programming Language》,Linden 的《Expert C Programming》, Andrew&
Koening《C Traps and Pitfalls》;,Steve Maguire 的《Write Clean Code》,Steve McConnell 的
《Code Complete. Second Edition》 個人感覺新手還是譚浩強的好!

如果C學好了,建議學個C++。學C++經典的版本是C++Primer(建議英文的,雖然也有翻譯的)。C是基礎,但是找工作還是學個C++或者java。 C++學好了不愁找不到工作

C/C++我個人是建議譚浩強的C學好了,再看C++Primer。這二本書足夠了,C++譚浩強好像也出版了一個,但是不建議看。C++Primer原版或者翻譯版。我那個時候還是C++Primer 3現在應該是第5版了吧

❷ C語言課程設計報告要求

一 、 設計題目

萬年歷的設計

二 、設計要求

1、能夠顯示星期;

2、能夠顯示年月日;

3、能夠修改;

4、當系統時間變動時,能自動跳到相應的時間。

三 、 設計目的

1. 通過本項課程設計,可以培養獨立思考、 綜合運用所學有關相應知識的能力,能更好的鞏固《C語言程序設計》課程學習的內容,掌握 工程軟體設計的基本方法,強化上機動手編程能力,闖過理論與實踐相結合的難關!更加了解了c語言的好處和其可用性!同時增加了同學之間的團隊合作精神!更加也體會到以後在工作中團隊合作的重要性和必要性!

2. 通過C語言課程設計,使學生了解高級程序設計語言的結構,掌握基本的程序設計過程和技巧,掌握基本的分析問題和利用計算機求解問題的能力,具備初步的高級語言程序設計能力。為後續各門計算機課程的學習和畢業設計打下堅實基礎。

四 、設計思想及過程

【一】由於萬年歷具有以下特點:

1。平年365天(52周+1天),閏年366天(52周+2天)。平年2月28天,閏年2月29天。

由於公元1月1日設為星期六,故3月1日為星期三。 ——注意這個「三」

為使演算法達到最簡,故本演算法以「星期」為計算單位。且選3月1日為基月。

2。每400年整一閏,或每4年且不為百年的一閏。(原因:地球繞太陽一周的時間是365天5小時46秒,為了使一年的天數為整數,將一年的天數定為365天,餘下的時間積累起來,四年就是23小時15分4秒,將近一天,把這一天加在某年的二月而成29天,該年稱為閏年,其它年稱為平年。但四年加一天又多用了44分56秒,這個數積滿400年為三天。因此400年中只能有97個閏年,所以凡能被400整除,或不能被100整除但能被4整除的年份為閏年。)

所以百年%4=0閏或(年%4=0並且年<>0)閏。

3。每 4年(3個平年+1個閏年)共208周+5天 ——注意這個「5天」

每百年共100*(208周+5天)-1天=5217周+5天 ——注意這個「5天」(整百年暫設為平年)

每400年共4*(5217周+5天)+1天(整400年閏)=20871周+0天——注意這個「0天」和

「1天」(4個整百年只有一個閏年)

即400年一輪回!(原來萬年歷400年前是一家)

【二】根據萬年歷以上特點進行編寫:

首先對萬年歷年、月、日進行編寫,編寫程序先定義每月的天數為28天,如月份為1、3、5、7、8、10、12就定義天數為31天反之如果月份為4、6、9、11就輸出天數為30天,由上可見2月份為28天但是如果為閏年就有29天就要定義另一個函數#define Year(x) (x%4==0&&x%100!=0||x%400==0) ? 1:0當為閏年時可得1加上該程序便可得到每月的天數。 具體程序見(五、萬年歷程序)

再對其中的星期進行編寫:由於公元1月1日設為星期六,故3月1日為星期三,可以用萬年3月1日星期演算法(特別是那個三)

由於其公式為:

某年3月1日星期幾=(3天+百年%4*5天+年/4*5天+年%4+月星期表+日-1天)%7

某年3月1日星期幾=(百年%4*5天+年/4*5天+年%4+月星期表+日+2天)%7

或 某年3月1日星期幾=(百年%4*5天+年+年/4+月星期表+日+2天)%7

閏4百年3月1日星期演算法(百年%4=0)

其公式為:

某年3月1日星期幾=(年+年/4+月星期表+日+2天)%7

例:0000年3月1日星期幾=(0+0/4+0+1+2)%7=3%7=星期三

1600年3月1日星期幾=(0+0/4+0+1+2)%7=3%7=星期三

2000年3月1日星期幾=(0+0/4+0+1+2)%7=3%7=星期三

2001年3月1日星期幾=(1+1/4+0+1+2)%7=4%7=星期四

2004年3月1日星期幾=(4+4/4+0+1+2)%7=8%7=星期一

2008年3月1日星期幾=(8+8/4+0+1+2)%7=13%7=星期六

2042年3月1日星期幾=(42+42/4+0+1+2)%7=55%7=星期六

平4百年3月1日星期演算法(百年%4<>0)

其公式為:

某年3月1日星期幾=(百年%4*5天+年+年/4+月星期表+日+2天)%7

例:1700年3月1日星期幾=(17%4*5+0+0/4+0+1+2)%7=8%7=星期一(注意:1700年是平年)

1800年3月1日星期幾=(18%4*5+0+0/4+0+1+2)%7=13%7=星期六(注意:1800年是平年)

1900年3月1日星期幾=(19%4*5+0+0/4+0+1+2)%7=18%7=星期四(注意:1900年是平年)

1901年3月1日星期幾=(19%4*5+1+1/3+0+1+2)%7=19%7=星期五

1918年3月1日星期幾=(19%4*5+18+18/4+0+1+2)%7=(15+22+3)%7=40%7=星期五

1958年3月1日星期幾=(19%4*5+58/4*5+58%4+3)%7=(15+70+2+3)%7=90%7=星期六

1988年3月1日星期幾=(19%4*5+88/4*5+88%4+3)%7=(15+110+0+3)%7=128%7=星期二

1999年3月1日星期幾=(19%4*5+99/4*5+99%4+3)%7=(15+120+3+3)%7=141%7=星期一

2100年3月1日星期幾=(21%4*5+0/4*5+0%4+3)%7=(5+0+0+3)%7=8%7=星期一(注意:2100年是平年)

2101年3月1日星期幾=(21%4*5+1/4*5+1%4+3)%7=(5+0+1+3)%7=9%7=星期二

2102年3月1日星期幾=(21%4*5+2/4*5+2%4+3)%7=(5+0+2+3)%7=10%7=星期三

2103年3月1日星期幾=(21%4*5+3/4*5+3%4+3)%7=(5+0+3+3)%7=11%7=星期四

2104年3月1日星期幾=(21%4*5+4/4*5+4%4+3)%7=(5+1+0+3)%7=9%7=星期二(注意:2104年是閏年)

9999年3月1日星期幾=(99%4*5+99/4*5+99%4+3)%7=(120+15+3+3)%7=141%7=星期一

註:按400年一輪回!(400年前是一家)的說法

1600年,2000年是一樣的;

1700年,2100年是一樣的;

1800年,2200年是一樣的;

1900年,2300年是一樣的。

其中萬年某日星期演算法

其公式為:

某日星期幾=(百年%4*5天+年+年/4+月星期表+日+2天)%7

通同星期偏差表

閏年 1月 2月 3月 4月 5月 6月 7月 8月 9月 10月 11月 12月

天數 31 29 31 30 31 30 31 31 30 31 30 31

星期 3 6 0 3 5 1 3 6 2 4 0 2

平年 1月 2月 3月 4月 5月 6月 7月 8月 9月 10月 11月 12月

天數 31 28 31 30 31 30 31 31 30 31 30 31

星期 4 0 0 3 5 1 3 6 2 4 0 2

為對以上的萬年歷星期的演算法是正確的對其進行了以下的計算:

⒈對於二十世紀任意日期可以用公式某日星期幾=(百年%4*5天+年+年/4+平年月星期表+日+2天)%7=(19%4*5天+年+年/4+平年月星期表+日+2天)%7=(15天+年+年/4+平年月星期表+日+2天)%7以下就是根據上面對其進行的計算:

1900年元旦 1日=(0/4*5+0%4+1+3)%7=(0+0+4)%7=4

1月表=4(平年) 故 4+4=1 即1900年元旦是星期一

1949年國慶 1日=(49/4*5+49%4+1+3)%7=(60+1+4)%7=2

10月表=4(平年) 故 4+2=6 即1949年國慶是星期六

1999年12月31日 31日=(99/4*5+99%4+31+3)%7=(120+3+34)%7=3

12月表=2(平年) 故 2+3=5 即1999年12月31日是星期五

⒉對於二十一世紀新前年蟲演算法(20%4*5=0)可以用公式:某日星期幾=(百年%4*5天+年+年/4+閏年月星期表+日+2天)%7 =(20%4*5天+年+年/4+閏年月星期表+日+2天)%7以下就是根據上面對其進行的計算:

2000年元旦 1日=(0+0/4+1+2)%7=(0+0+1+2)%7=3

1月表=3(閏年) 故 3+3->6 即2027年元旦是星期六

2018年春節 16日=(18+18/4+16+2)%7=(18+4+16+2)%7=5

2月表=0(平年) 故 0+5=5 即2018年春節是星期五

2099年12月31日 31日=(99/4*5+99%4+31+2)%7=(120+3+33)%7=2

12月表=2(平年) 故 2+2=4 即2099年12月31日是星期四

對於上面的分析以及公式的推論和計算證明可以對萬年歷中的星期進行了編寫具體編寫程序見(五 、萬年歷程序)中。

五 、萬年歷源程序

#include"stdio.h"

#include"dos.h"

#include"conio.h"

#include"stdlib.h"

#define Year(x) (x%4==0&&x%100!=0||x%400==0) ? 1:0 /*判斷閏年*/

int numofMonth(int y,int m){

int day,t=28;

if(m==1||m==3||m==5||m==7||m==8||m==10||m==12)

day=31; /*定義以上月份為31天*/

else if(m==4||m==6||m==9||m==11)

day=30; /*定義以上月份為30天*/

else{t+=Year(y);

day=t;} /*閏年二月29天,平年28天*/

return day;}

int numofYear(int y){

int t=365; /*平年365天*/

t+=Year(y);/*閏年366天*/

return t;}

int numofbeforeDays(int y,int m,int d){

int sum=d,i;

for(i=1;i<m;i++)

sum+=numofMonth(y,i);

return sum;}

int numofafterDays(int y,int m,int d){

int sum=0,i;

for(i=m;i<=12;i++)

sum+=numofMonth(y,i);

sum-=d;

return sum;}

int isDay(int y,int m,int d){

int year=1900,month=1,week=1,i; /*定義萬年歷是從1900年開始*/

long sum=0;

for(i=year;i<y;i++)

sum+=numofYear(i);

for(i=1;i<m;i++)

sum+=numofMonth(y,i);

/* ++sum;*/

i=sum%7;

week=(week+i)%7;

return week;}

void empty(int n){

int i;

for(i=0;i<n;i++)

printf("%*c",6,' ');}

void OutPutCalender(int y,int m,int d)/*計算x年x月x是星期幾*/{

int week,i,num,t;

week=isDay(y,m,1);

printf("%6d/%02d/%02d\n",y,m,d);

printf("%6s%6s%6s%6s%6s%6s%6s\n","Sun","Mon","Tue","Wed","Thu","Fri","Sat");

empty(week);

num=numofMonth(y,m);

for(i=1;i<=num;i++){

printf("%6d",i);

t=(week+i)%7;

if(t==0)

printf("\n");} /*游標移到下一行*/

printf("\n");}

long numBTDays(int y1,int m1,int d1,int y2,int m2,int d2)/*定義兩個不同日期*/{

int i;

long sum=0;

for(i=y1+1;i<y2;i++)

sum+=numofYear(i);

if(y1==y2){ sum-=d1;

for(i=m1;i<m2;i++)

sum+=numofMonth(y1,i);

sum+=d2;}

else{sum+=numofafterDays(y1,m1,d1);

sum+=numofbeforeDays(y2,m2,d2);}

return sum;}

int Select_mean(){

int sm;

printf("1. OutPut Calender\n"); /*輸出當前月份的日歷*/

printf("2. Help\n"); /*幫助*/

printf("0. Quit\n"); /*退出*/

printf("Please enter choose(0--2):"); /*從0-2中選擇*/

do

scanf("%d",&sm); /*輸入sm*/

while(sm<0||sm>3);

return sm;}

void Help()/*輸出幫助欄的內容*/{

printf(" 1. OutPut Calender\n");

printf(" 2. System Help\n");

printf(" 0. Quit\n");

printf("Page Up: Up year\n"); /*上一年*/

printf("Page Down: next year\n"); /*下一年*/

printf(" --> : next month\n"); /*上一月*/

printf(" <-- : Up month\n");/*下一月*/}

main(){

int year=2006,year1=2006,month,day,y1,m1,d1,y2,m2,d2,c,t; /*定義運行後的日期是2006年*/

int inkeySCAN,inkey; /*輸入鍵盤操作信息*/

union REGS inregs,outregs;

inregs.h.ah=0x2a;

intdos(&inregs,&outregs);

/* year=outregs.xcx; */

month=outregs.h.dh;

day=outregs.h.dl;

year1=year;

printf("%d/%02d/%02d\n",year,month,day);

while(1)/*當選擇為1時,執行以下語句*/{

switch(Select_mean()){

case 1:

OutPutCalender(year,month,day);

while(1){

inkey=bioskey(0);

inkeySCAN=(inkey&0xFF00)>>8;

if(inkeySCAN==77){

if(month==12){month=1;year1++;

OutPutCalender(year1,month,day);/*輸出日歷*/}

else{month++;

OutPutCalender(year1,month,day);

}}

if(inkeySCAN==75){

if(month==1){month=12;year1--;

OutPutCalender(year1,month,day);}

else{month--;OutPutCalender(year1,month,day);}}

if(inkeySCAN==73){

if(year1==1900) year1=year;

else{year1--;OutPutCalender(year1,month,day);}}

if(inkeySCAN==81){

year1++;OutPutCalender(year1,month,day);}

if(inkeySCAN==28)break;}

break; /*終止循環*/

case 2:

Help();

break;

case 0:

exit(0);

default:

printf("Enter ERROR!\n");

break;} }

}

六 運行過程

1.雙擊TC

1. 當對上面的程序進行了調試後運行會出現下面所示:

第一行所顯示的就是系統時間!滿足了第一條要求「顯示年、月、日」。

而當改變系統時間後!再運行該程序上面的日期也隨系統時間改變,所以滿足第四條「當系統時間變動時,能自動跳到相應的時間。」

2. 在游標處按下「1」後回車,將會顯示:

以上的顯示也證明了條件的第2條可以「顯示星期!」

3. 在游標處按下「2」後回車,將會顯示:

按著幫助所講進行了運行可知:按「 Page Up 」鍵其下面接著會顯示上一年該月的萬年歷,按「 Page Down 」鍵其下面會接著顯示下一年該月的萬年歷;按「 ← 」鍵下面將會接著顯示當年上一個月的萬年歷,按「 → 」鍵將會接著在下面顯示去下一個月的萬年歷。

4.

由上所顯示鍵入「0」後將會退去該程序。

由以上運行的結果可知該c語言所設計的萬年歷滿足設計要求!

七、在C語言編程中常見錯誤

C語言的最大特點是:功能強、使用方便靈活。C編譯的程序對語法檢查並不象其它高級語言那麼嚴格,這就給我們留下「靈活的餘地」,但還是由於這個靈活給程序的調試帶來了許多不便,尤其對我們這些初學C語言的人來說,經常會出一些連自己都不知道錯在哪裡的錯誤。看著有錯的程序,不知該如何改起,我通過這次編程,也積累了一些C編程時常犯的錯誤:

1. 書寫標識符時,忽略了大小寫字母的區別。
編譯程序把a和A認為是兩個不同的變數名,而顯示出錯信息。C語言認為大寫字母和小寫字母是兩個不同的字元。習慣上,符號常量名用大寫,變數名用小寫表示,以增加可讀性。

2.忽略了變數的類型,進行了不合法的運算。
%是求余運算,得到a/b的整余數。整型變數a和b可以進行求余運算,而實型變數則不允許進行「求余」運算。

3.將字元常量與字元串常量混淆。
混淆了字元常量與字元串常量,字元常量是由一對單引號括起來的單個字元,字元串常量是一對雙引號括起來的字元序列。C規定以「\」作字元串結束標志,它是由系統自動加上的,所以字元串「a」實際上包含兩個字元:『a'和『\',而把它賦給一個字元變數是不行的。

4.忽略了「=」與「==」的區別。
在C語言中,「=」是賦值運算符,「==」是關系運算符。如:
if (a==3) a=b;
前者是進行比較,a是否和3相等,後者表示如果a和3相等,把b值賦給a。由於習慣問題,初學者往往會犯這樣的錯誤。

5.忘記加分號。
分號是C語句中不可缺少的一部分,語句末尾必須有分號。
a=1 b=2
編譯時,編譯程序在「a=1」後面沒發現分號,就把下一行「b=2」也作為上一行語句的一部分,這就會出現語法錯誤。改錯時,有時在被指出有錯的一行中未發現錯誤,就需要看一下上一行是否漏掉了分號。
{ z=x+y;
t=z/100;
printf("%f",t);
}
對於復合語句來說,最後一個語句中最後的分號不能忽略不寫(這是和PASCAL不同的)。

6.多加分號。
對於一個復合語句,如:
{ z=x+y;
t=z/100;
printf("%f",t);
};
復合語句的花括弧後不應再加分號,否則將會畫蛇添足。
又如:
if (a%3==0);
I++;
本是如果3整除a,則I加1。但由於if (a%3==0)後多加了分號,則if語句到此結束,程序將執行I++語句,不論3是否整除a,I都將自動加1。
再如:
for (I=0;I<5;I++);
{scanf("%d",&x);
printf("%d",x);}
本意是先後輸入5個數,每輸入一個數後再將它輸出。由於for()後多加了一個分號,使循環體變為空語句,此時只能輸入一個數並輸出它。

7.輸入變數時忘記加地址運算符「&」。
int a,b;
scanf("%d%d",a,b);
這是不合法的。Scanf函數的作用是:按照a、b在內存的地址將a、b的值存進去。「&a」指a在內存中的地址。

8.輸入數據的方式與要求不符。scanf("%d%d",&a,&b);輸入時,不能用逗號作兩個數據間的分隔符,如下面輸入不合法:
3,4
輸入數據時,在兩個數據之間以一個或多個空格間隔,也可用回車鍵,跳格鍵tab。
scanf("%d,%d",&a,&b);C規定:如果在「格式控制」字元串中除了格式說明以外還有其它字元,則在輸入數據時應輸入與這些字元相同的字元。下面輸入是合法的:
3,4
此時不用逗號而用空格或其它字元是不對的。
3 4 3:4
又如:
scanf("a=%d,b=%d",&a,&b);
輸入應如以下形式:
a=3,b=4

9.輸入字元的格式與要求不一致。
在用「%c」格式輸入字元時,「空格字元」和「轉義字元」都作為有效字元輸入。
scanf("%c%c%c",&c1,&c2,&c3);
如輸入a b c
字元「a」送給c1,字元「 」送給c2,字元「b」送給c3,因為%c只要求讀入一個字元,後面不需要用空格作為兩個字元的間隔。

10.輸入輸出的數據類型與所用格式說明符不一致。
例如,a已定義為整型,b定義為實型
a=3;b=4.5;
printf("%f%d\n",a,b);

語法錯
邏輯錯 運行錯
0.忘記定義變數:
main()
{x=3;y=6;
printf(「%d\n」,x+y);

11.C語言的變數一定要先定義才能使用;

12.輸入輸出的數據的類型與所用格式說明符不一致
int a=3;float b=4.5;printf(「%f%d\n」,a,b);
它們並不是按照賦值的規則進行轉換(如把4.5轉換為4),而是將數據在存儲單元中的形式按格式符的要求組織輸出(如b佔4個位元組,只把最後兩個位元組的數據按%d,作為整數輸出)

13.未注意int型數據的數值范圍
int型數據的數值范圍(-32768~32768)
int num=89101;
printf(「%d」,num);
會將超過低16位的數截去從而得到23563
注意:定義了long型,而在輸出時仍用」%d」說明符,仍會出現以上錯誤
14.輸入變數時忘記使用地址符
scanf(「%d%d」,a,b);
15.輸入時數據的組織與要求不符
對scanf函數中格式字元串中除了格式說明符外,對其他字元必須按原樣輸入
16.誤把」=「作為」等於」比較符
「=「為附值運算符
「==「為比較運算符
17.語句後面漏分號
{
t=a;
a=b;
b=t
}
它是pascal的語法
18.不該加分號的地方加了分號
if(a>b);
printf(「a is larger than b\n」);
for(i=0;i<10;i++);
{
scanf(「%d」,&x);
printf(「%d\n」,x*x);
}
19.對應該有花括弧的復合語句,忘記加花括弧
sum=0;
i=1;
while(i<=100)
sum=sum+1;
i++;
20.括弧不配對
while((c=getchar()!=『#』)

putchar(c);
11.在用標識時,忘記了大寫字母和小寫字母的區別
{
int a,b,c;
a=2;
b=3;
C=A+B;
printf(「%d+%d=%D」,A,B,C);
}
12.引用數組元素時誤用發圓括弧
{
int i,a(10);
for(i=0;i<10;i++)
scanf(「%d」,&a(i));
}
13.在定義數組時,將定義的」元素個數」誤認為是」可使用的最大下標值
{
int a[10]={1,2,3,4,5,6,7,8,9,10};
int i;
for(i=1;i<=10;i++)
printf(「%d」,a[i]);
}
14.對二維或多維數組的定義和引用的方法不對
{
int a[5,4];

printf(「%d」,a[1+2,2+2]);

}
15.誤以為數組名代表數組中全部元素
{int a[4]={1,2,3,4};
printf(「%d%d%d%d」,a);
}
16.混淆字元數組與字元指針的區別
main()
{
char str[40];
str=「Computer and c」;
printf(「%s\n」,str);
}
17.在引用指針變數之前沒有對它賦予確定的值
{
char *p;
scanf(「%s」,p);
}
{
char *p,c[20];
p=c;
scanf(「%s」,p);
}
18.switch語句的各分支中漏寫 break語句
混淆字元和字元串的表示形式

char sex;
sex=「M」;

19.使用自加(++)和自減(--)運算符時出的錯誤
{
int *p,a[5]={1,3,5,7,9};
p=a;
printf(「%d」,*p++);
}
注意於*(++p)的區別;
20.所調用的函數在調用語句之後才定義,而又在調用前未加說明
main()
{float x,y,z;
x=3.5;y=-7.6;
z=max(x,y);
printf(「%f」,z);
}
編譯時不給出出錯信息,但運行結果將與原意不符。這種錯誤尤其需要注意。

八、心得體會

1. 目前流行的計算機日歷程序,比較典型的是Windows各版本中的日歷程序以及基礎於該程序所開發的各種應用程序中的日歷程序。然而,這些程序都千篇一律的局限在一個很短的時間范圍內。(Windows各個版本一般都局限在1980年至2099年這一范圍內),但是,在很多情況下,特別是在眾多的科學研究領域中,一個時間跨度較大的日歷程序是很有參考價值的。C程序設計語言充分發揮了其自身無與倫比的優越性,用極短的程序文本填補了這一領域的空白,同時用鐵的事實強有力的告訴世人:C程序設計語言作為計算機語言家族的新生事物,其發展前景是極為廣闊的。

2. 經過上一個學期對《C程序設計》的學習,我們學習了理論知識,了解了C語言程序設計的思想,這些知識都為我們的下一步學習打下了堅實的基礎。通過課程設計,一方面是為了檢查我們一個學期來我們學習的成果,另一方面也是為了讓我們進一步的掌握和運用它,同時也讓我們認清自己的不足之處和薄弱環節,加以彌補和加強。

3. 通過對c語言萬年歷的設計進一步的鞏固了用c語言編寫程序,並且有利於更好的掌握c語言!

4. 在萬年歷的編寫過程中也體會到了做事情一頂要細心、認真。更加知道了要掌握好基礎知識。還有體會到了成功的感覺!在萬年歷的設計過程中更加體會到了團隊合作的重要性,「一個諸葛亮比不上三個臭皮匠。」知道了只有團隊合作才會更好的完成設計!也體會到以後在工作中團隊合作的必要性和重要性!

5. 通過本項課程設計也培養了我獨立思考、 綜合運用所學有關相應知識的能力,掌握 工程軟體設計的基本方法,強化上機動手編程能力,闖過理論與實踐相結合的難關!

6. 由於C語言是近年在國內外得到迅速推廣應用的一種語言。C語言功能豐富,表達能力強,使用靈活方便,應用面廣,目標程序效率高,可移植性好,既具有高級語言的優點,又具有低級語言的許多特點。通過這次的c語言程序設計更加了解了c語言的好處和其可用性!

7. 在這次課程設計中也知道了自己的動手能力不強有待進一部的提高!在設計過程中不能夠把書本上的知識與實踐相結合,這也就增加了設計不好該程序的想法!在設計過程中的一次次設計錯誤增加了我放棄的想法!不過經過大家的努力終於完成了課程設計!完成該程序後想起自己以前的每一次對自己失去信心,就覺得並不是在知識掌握上打敗了,而是自己對自己缺乏信心!只要自己對自己不失去信心相信就可以完成那些以前認為完成不了的事情!也讓我懂得了要想成功首先就必須有很強的自信心!懂得了自己以後要在做任何事情時都要自信!當自己都不相信自己能夠成功時還可能會獲得成功嗎?

8. 在C語言程序設計的過程中也知道了自己在以前的學習中有很大的不足導致在設計過程中出現了很多的問題,有些地方看不懂也不知道怎麼去設計,但是在設計過程中也學習了很多,掌握了自己以前沒有學好的知識,雖然一時可以掌握完以前沒有學好的知識,不過也給自己敲響了警鍾,在學習中不可以伏於表面,要想學好每一門課程都要踏踏實實,做什麼都不是給別人看的!都是要更好的掌握該門知識,提高自己的自身的修養,提高自己的能力!為以後的工作打下良好的知識基礎和技能基礎!

九、參考文獻

⒈譚浩強編著.C程序設計第二版〔M〕.北京:清華大學出版社,1999

⒉陳朔鷹,陳英編著.C語言趣味程序百例精解〔M〕.北京:北京理工大學出版社,1994

⒊電腦知識與技術學術交流版〔J〕2005.2 (備註:來自網路資源)

⒋Herbert Schildit著. 戴健鵬譯. C語言大全 (第二版)〔M〕.北京:電子工業出版社,1994

⒌譚浩強,張基溫,唐永炎編著. C語言程序設計教程.〔M〕北京: 高等教育出版社,1992

⒍秦友淑,曹化工編著. C語言程序設計教程. 〔M〕武漢:華中理工大學出版社,1996

⒎曹衍龍,林瑞仲,徐慧 編著.C語言實例解析精粹 〔M〕北京:人民郵電出版社,2005.3

⒏黃明等編著.21世紀進階輔導C語言程序設計. 〔M〕大連理工大學出版

❸ c語言入門自學書籍都有哪些

c語言入門自學書籍都有:《C程序設計》、《C#圖解教程》、《C語言入門經典》。

1、《C程序設計》

如果你只是想要學習C語言來考個計算機等級證書,僅此而已,那麼《C程序設計》對於考級來說絕對是本好書。

3、《C語言入門經典》

《C語言入門經典》例子簡單生活化,而且每個例子分析很細。章節安排合理,章末的例子還特別注重思路的引導,而且分析起來特別有成就感。

❹ 請各位朋友推薦一些用c語言做實例的書,謝謝。

回答:小瞄3721
學弟
2月7日 20:58 教材
(1)潭浩強的主編的《C語言程序設計》(第二版) 高教出版社 [(1)比(2)難些]
(2)趙山林 高媛 等編著 《C程序設計》 人民郵電出版社 28.00元/本
(3)《全國計算機等級考試二級教程---C語言程序設計》 由教育部考試中心編著
高等教育出版社 25.80元/本

網上有視頻,你先登錄分享互聯網,它的網址是www.VeryCD.com,後下載一個叫電螺的免費軟體後,再到網頁的左側查找計算機方面的資料,它裡面資料較全(耐心點不難找到你想要的!)

揪錯 ┆ 評論1 ┆ 舉報

❺ C語言哪本書最好

潭浩強
清華大學出版社
學C語言的99%都用他的書
以下在網路上看到對他的書的評價
按∶
譚浩強
教授編寫的
《C程序設計
》一書受到廣泛的歡迎和高度評價。下面刊登幾所大學講授C語言
課程
的老師對《C程序設計》一書的評價意見。
清華大學計算機與信息管理中心
承擔著清華大學非
計算機專業
的「計算機軟體技術基礎」課,自1994年起選用清華大學出版的譚浩強教授編寫的《C程序設計》一書作為本課程教材,取得了很好的教學效果,深受師生們的歡迎,現正使用第二版作為
教材
。此書的特點及對教學的
促進作用
主要表現在以下幾方面:
1.內容全面,實用性強
此書涵蓋了程序設計
基礎知識
及C語言程序設計的全部內容,並介紹了大量常用
演算法
。通過學習此教材,初學程序設計的學生可以達到熟練運用C語言進行小規模應用開發的能力。
2.講解透徹,深入淺出
此書對
概念
講解透徹,使初學
計算機程序設計
的學生不僅學習了一種
高級語言
,而且能夠對相關基礎知識有準確深入的理解,例如在介紹
變數
的存儲類型時、介紹指針時都對
計算機

存儲管理
做了清楚的論述,使讀者知其然也知期所以然。廣大非計算機專業的學生學習
計算機課程
的學時很少,沒有足夠的
時間系統
地學習計算機專業基礎知識。因此像這樣將必要的基礎知識融會貫通到程序設計課程中,對學生的
知識結構
建設以及今後的深造和提高都大有裨益。
3.通俗易懂,易於自學
此書的一個突出優點就是,語言優美、舉例生動、
淺顯易懂
。學生在學習C語言之前,普遍有些畏難情緒,因為聽說C語言比較難學。的確C語言最初是面向專業
開發人員
的。但是讀了
這本書
之後,學生們不再懼怕C語言。很多學生說,讀這本書不僅
學會
了C語言,而且讀的
過程
本身就是一種享受,不像有些專業書籍,堆砌大量技術
名詞
,艱澀難懂。由於這本書易於自學,給我們的教學工作帶來很大幫助,使我們可以達到精講多練,逐步實現教師指導下的學生自主式
學習模式

4.結構清晰,循序漸進
由於本書結構清晰,
知識點
明確,循序漸進的內容組織方式非常符合
初學者
的認知
規律
,因此給教師組織
課堂教學
提供了很好的指導。我們按照這本書的內容結構組織教學,取得了學生和
教務處
的一致好評。
5.習題豐富,利於復習
計算機程序設計是一門實踐性很強的課程,因此僅僅通過閱讀教科書或聽課是不可能掌握的,學習程序設計的最重要環節就是實踐。本書每章都附有大量習題,並且有配套的習題解答,非常有利於學生復習鞏固課上所學的知識。也便於教師設計
實驗課

教學內容

❻ 來年三月份考二級c語言 可現在只學了C語言程序設計 趙山林 高媛主編的 誰能

二級c加油站,很多C語言資料,上級環境。網盤、文庫也有很多資源
http://hi..com/jsj08/

❼ C語言中c+=1代表什麼意思

c+=1 表示c=c+1
同樣c*=c c\=c c-=c都是一樣的道理
C語言中方便表達

❽ 《C程序設計語言第2版·新版》pdf下載在線閱讀全文,求百度網盤雲資源

《C程序設計語言(第2版·新版)》([美] Brian W. Kernighan)電子書網盤下載免費在線閱讀

鏈接: https://pan..com/s/1txJqYzmjYS-BSw43eLWrnQ

提取碼: sejp

書名:C程序設計語言(第2版·新版)

作者:[美] Brian W. Kernighan

譯者:徐寶文

豆瓣評分:9.4

出版社:機械工業出版社

出版年份:2004-1

頁數:258

內容簡介:

在計算機發展的歷史上,沒有哪一種程序設計語言像C語言這樣應用廣泛。本書作者是C語言的設計者之一Dennis M. Ritchie和著名計算機科學家Brian W. Kernighan合著的一本介紹C語言的權威經典著作。我們現在見到的大量論述C語言程序設計的教材和專著均以此書為藍本。

原著第1版中介紹的C語言成為後來廣泛使用的C語言版本——標准C的基礎。人們熟知的「hello,World"程序就是由本書首次引入的,現在,這一程序已經成為眾多程序設計語言入門的第一課。原著第2版根據1987年制定的ANSIC標准做了適當的修訂.引入了最新的語言形式,並增加了新的示例,通過簡潔的描述、典型的示例,作者全面、系統、准確地講述了C語言的各個特性以及程序設計的基本方法。

對於計算機從業人員來說,本書是一本必讀的程序設計語言方面的參考書。

作者簡介:

Brian W. Kernighan,貝爾實驗室計算科學研究中心高級研究人員,著名的計算機科學家。參加了UNIX系統、C語言、AWK語言和許多其他系統的開發,同時出版了許多在計算機領域具有影響的著作,如《The Elements of Programming Style》《The Practice of Programming》《The UNIX Programming Environment》《The AWK Language》《Software Tools》等。

Dennis M. Ritchie,1967年加入貝爾實驗室。他和 Ken L. Thompson 兩人共同設計並實現的C語言改變了程序設計語言發展的軌跡,是程序設計語言發展過程中的一個重要里程碑。與此同時,他們還設計並實現了UNIX操作系統。正是由於這兩項巨大貢獻,Dennis M. Ritchie 於1983年獲得了計算機界的最高獎——圖靈獎。此外,他還獲得了ACM、IEEE、貝爾實驗室等授予的多種獎項.。

❾ C程序設計譚浩強版本的第四版和第三版有什麼區別

一、指代不同

1、C程序設計譚浩強版本的第四版:是2010年清華大學出版社出版的圖書,作者是譚浩強。

2、C程序設計譚浩強版本的第三版:被普遍認為是學習C語言的好教材,並被全國大多數高校選用。

二、特點不同

1、C程序設計譚浩強版本的第四版:內容先進,體系合理,概念清晰,講解詳盡,降低台階,分散難點,例題豐富,深入淺出,文字流暢,通俗易懂,是初學者學習C程序設計的理想教材,可作為高等學校各專業的正式教材。

2、C程序設計譚浩強版本的第三版:累計發行了700多萬冊,創同類書的全國最高記錄,是學習C語言的主流用書。


三、影響不同

1、C程序設計譚浩強版本的第四版:該書被大多數高校用作C語言學習的教材,更正了第三版中的不足。

2、C程序設計譚浩強版本的第三版:曾榮獲原電子工業部優秀教材一等獎、高校出版社優秀暢銷書特等獎、全國高等院校計算機基礎教育研究會優秀教材一等獎。

熱點內容
如何帳戶密碼 發布:2025-01-17 07:56:11 瀏覽:612
伺服器內網ip地址安全 發布:2025-01-17 07:33:18 瀏覽:186
華為新演算法 發布:2025-01-17 07:31:43 瀏覽:56
希沃如何存儲 發布:2025-01-17 07:31:00 瀏覽:552
演算法研讀 發布:2025-01-17 07:19:37 瀏覽:280
我的世界橙子生存之旅伺服器ip 發布:2025-01-17 07:19:27 瀏覽:618
用戶名密碼錯誤導致認證失敗是什麼意思 發布:2025-01-17 06:58:24 瀏覽:329
安卓空調遙控器在哪裡 發布:2025-01-17 06:43:54 瀏覽:196
安卓版什麼做視頻軟體好用 發布:2025-01-17 06:43:14 瀏覽:337
神超電腦配置哪個好 發布:2025-01-17 06:35:50 瀏覽:575