計算機編程c語言
1:工欲善其事,必先利其器
這里介紹幾個學習C語言必備的東東:
一個研發環境,例如turbo C 2.0,這個曾占據了DOS時代研發程式的大半個江山。但是現在windows時代,用turbo C有感覺不方面,編輯程式起來很吃力,並且拖放,更沒有函數變數自動感應功能,查詢參考資料也不方便。建議使用Visual C ,這個東西雖然比較大塊頭,但是一旦安裝好了,用起來很方便。
一本學習教程,現在C語言教材多如牛毛,但推薦大家使用《C語言程式設計》譚浩強主編 第二版 清華大學出版社,此書編寫的很適合初學者,並且內容也很精到。
除此以外,現在有很多輔助學習的軟體,畢竟現在是Window時代了,學習軟體多如牛毛,不象我們當初學習,只有讀書做題這么老套。我向大家推薦一個「集成學習環境(C語言)」,里邊的知識點總結和常式講解都很好,更有題庫測試環境,據說有好幾千題,甚至更有一個windows下的trubo C,初學者甚至不用裝其他的編譯器,就能夠練習編程了,很適合初學者。更有一個「C語言學習系統」軟體,但是感覺只是個題庫系統,假如您覺得題做的不夠,不妨也能夠試試。
2:葵花寶典
學習電腦語言最好的方法是什麼?答曰:讀程式。 對真正的成功者來說,不論他的生存條件如何,都不會自我磨滅
沒錯,讀程式是學習C語言入門最快,也是最好的方法。如同我,現在學習新的J#,C#等其他語言,不再是抱著書本逐行啃,而是學習他們的常式。當然,對於沒有學過任何電腦語言的初學者,最好還是先閱讀教程,學習完每一章,都要認真體會這一章的任何概念,然後不放過這一章中提到的任何常式,然後仔細研讀程式,直到每一行都理解了,然後找幾個編程題目,最好是和常式類似的或相同的,自己試圖寫出這段已讀懂的程式,不要以為常式您已讀懂了,您就能夠寫出和他相同的程式,絕對不一定,不相信您就試一試吧,假如寫不出來,也不要著急,回過頭來再繼續研究常式,想想自己為什麼寫不出來,然後再去寫這段程式,反反復復,直到您手到擒來為止,祝賀您,您快入門了。
3:登峰造極
寫程式的最高境界其實就是掌控各種解決問題的手段(數據結構)和解決問題的方法(演算法)。
是不是寫出底層程式就是程式設計高手呢?非也,寫底層程式,無非是掌控了硬體的結構,況且硬體和硬體還不相同,要給一個晶元寫驅動程式,無非就是掌控這塊晶元的各種寄存器及其組合,然後寫值讀值,僅此而已。這但是是熟悉一些io函數罷了。
那麼怎樣才算精通程式設計呢?怎樣才能精通程式設計呢?舉個例子:您面前有10個人,找出一個叫「張三」的人,您該怎麼辦?第一種方法:直接對這10個人問:「誰叫張三」。第2種方法:您挨個去問「您是不是張三?」,直到問到的這個人就是張三。第三種方法:您去挨個問一個人「您認不認識張三,指給我看」。不要小看這個問題,您說當然會選第一種方法,沒錯恭喜您答對了,因為這個方法最快,效率最高,但是在程式設計中找到解決問題的最優方法和您用的手段卻是考驗一個程式員程式設計水平的重要標志,而且是不容易達到的。剛才這個問題類似於數據結構和演算法中的:Map數據結構,窮舉查找和折半查找。所以掌控好數據結構和一些常用演算法,是登峰造極的必然之路。最後給大家推薦嚴尉敏的《數據結構》清華大學出版社,希望每一個想成為程式設計高手的人研讀此書。
總結
1、先照書上的題目寫,題目的設計是有道理的鞏固基礎知識。
2、找數學題,寫個小程序解決,熟悉演算法和基礎函數。
3、自己出題目,小一點的,如自編資源管理器、自編寫字板之類,練習WINDOWS下的編程。
4、結合身邊的事,找個中等課題,或看別人的程序,自已想辦法實現。
5.把教材中的例子,自己仿照著寫一遍,上機運行,看結果.要知道,任何產品都是有例子的,有機結合或仿照。
6.從自己熟悉的事情入手,如成績統計,編制一段程序,完成一個功能.然後再完善。
7.要反復破壞代碼,從破壞中尋找代碼的規律。
8.必須經常反復上機練習。
Ⅱ 計算機編程C語言
不算,卸載軟體、自動開機,都屬於操作系統功能方面的,和演算法一毛錢關系多沒有。
演算法就是排序啊、查找啊這些,當然是代碼。
Ⅲ 計算機c語言編程
#include "stdio.h"
void main()
{
int year,month,day,result=0;
int date[12]={31,28,31,30,31,30,31,31,30,31,30,31};
printf("Input year,month,day:");
scanf("%d",&year);
scanf("%d",&month);
scanf("%d",&day);
if((year%4==0&&year%100!=0)||year%400==0) date[1]++;
for(int i=0;i<month-1;i++) result=result+date[i];
result=result+day;
printf("Result is:%d\n",result);
}
Ⅳ 計算機編程 c語言
main()
{
int i,n;
float s;
i=0;
s=1;
printf("\n 請輸入年增長率N");
scanf("%d",&n);
while (s<=2)
{
s=s*(1+n/100);
i++;
}
printf("\n %d年後翻一番",i);
}
Ⅳ 計算機編程問題C語言
void main()
{
int value=0
printf("輸入一個數");
scanf("%d",&value);
if(value<60&&value>=0)
{
printf("成績不及格");
}
else
{
if(value>=60&&value<70)
{
printf("成績及格");
}
else
{
if(value>=70&&vaule<80)
{
printf("成績為中等");
}
else
{
printf("成績無效");
}
}
}
}
關於if語句的嵌套編程建議:
1、if...else語句判斷後執行的一句,哪怕只執行一句也要用大括弧括起來,這樣邏輯清晰
2、else後面的執行語句也要用打括弧括起來,尤其是else後面的語句還是if語句的時候,直接用個大括弧括起來,使得程序看起來非常清楚。
3、所有條件都判斷後,有容錯處理
4、最後一個判斷執行語句,判斷可以不寫,因為前面的判斷語句中已經將所有情況涵蓋,那麼最後一個條件只需用一個else就可以了,比如這個程序中最後一個else後面的語句中,就不必寫
if(value>80&&value<0),當然也可以寫
Ⅵ 計算機編程,c語言的
int main()
{
char a='5',b='8';
//此處給a、b賦值,a、b均為字元串形式。
printf("a+b=%c\t(int)(a+b)=%d",a+b,(int)(a+b));
// "%c" 表示一個字元
// "\t" 表示水平製表(跳到下一個Tab位置)
// "%d" 表示一個整數
//其餘部分照樣輸出"a+b=%c\t(int)(a+b)=%d",a+b,(int)(a+b)
//將冒號後面的東西添加到冒號裡面去
//將a+b替換掉%c(字元型)ASCII碼自己去查(將a與b的ASCII碼相加以字元型輸出)
//後面將(int)(a+b)替換掉%d(將a與b的ASCII碼相加後轉換為整型輸出)
getchar();
//getchar只是從緩沖區裡面讀取一個字元
return 0;
}
Ⅶ 用C語言編寫計算機程序
我對你提出的問題的題意的理解是編一個計算器程序。。。。。。。。。如果要是那樣子的話我給出代碼: #include int main() { char cp; int a, b; scanf("%d %c %d", &a, &cp, &b); if (cp == '-')printf("%d", a - b); else if(cp == '+')printf("%d", a + b); else if (cp == '*')printf("%d", a * b); else if (cp == '%')printf("%d", a % b); return 0; } 如果要知道這幾個符號在機器中的實現機理的話: +和-不說了*就相當於多做幾遍加法。而%是用位運算之類的方法進行運算的所以%的效率最低不知道是不是你的編譯器有問題我的程序運行起來是得15的你是否正確輸入了????
Ⅷ 計算機編程,C語言
_ISR_STARTADDRESS這也是一個宏,你可以查找到它的真實值,意思就是pISR_EINT0
這個宏的值是_ISR_STARTADDRESS加上十六進制的0x20,換算成十進制就是加32.