C語言畫毛頭
A. 學習c語言應遵循哪些步驟
第1步:定義程序的目標
在動手寫程序之前,要在腦中有清晰的思路。想要程序去做什麼首先自己要明確自己想做什麼,思考程序需要哪些信息,要進行哪些計算和控制,以及程序應該要報告什麼信息。在這一步驟中,不涉及具體的計算機語言,應該用一般術語來描述問題。
第2步:設計程序
對程序應該完成什麼任務有概念性的認識後,就應該考慮如何用程序來完成它。除此之外,還要決定在程序(還可能是輔助文件)中如何表示數據,以及用什麼方法處理數據。
學習C語言之初,遇到的問題都很簡單,沒什麼可選的。
第3步:編寫代碼
設計好程序後,就可以編寫代碼來實現。也就是說,把設計的程序翻譯成C語言。這里是真正需要使用C語言的地方。可以把思路寫在紙上,但是最終還是要把代碼輸入計算機。
程序清單1.1C源代碼示例
#include <stdio.h>
int main(void)
{
int dogs;
printf("How many dogs do you have? ");
scanf("%d", &dogs);
printf("So you have %d dog(s)! ", dogs);
return 0;
}
在這一步驟中,應該給自己編寫的程序添加文字注釋。最簡單的方式是使用C的注釋工具在源代碼中加入對代碼的解釋。
第4步:編譯
接下來的這一步是編譯源代碼。再次提醒讀者注意,編譯的細節取決於編程的環境,稍後馬上介紹一些常見的編程環境。現在,先從概念的角度講解編譯發生了什麼事情。
編譯器是把源代碼轉換成可執行代碼的程序。可執行代碼是用計算機的機器語言表示的代碼。這種語言由數字碼表示的指令組成。如前所述,不同的計算機使用不同的機器語言方案。C編譯器負責把C代碼翻譯成特定的機器語言。
此外,C編譯器還將源代碼與C庫(庫中包含大量的標准函數供用戶使用,如printf()和scanf())的代碼合並成最終的程序(更精確地說,
編譯器還會檢查C語言程序是否有效。如果C編譯器發現錯誤,就不生成可執行文件並報錯。理解特定編譯器報告的錯誤或警告信息是程序員要掌握的另一項技能。
第5步:運行程序
傳統上,可執行文件是可運行的程序。在常見環境(包括Windows命令提示符模式、UNIX終端模式和Linux終端模式)中運行程序要輸入可執行文件的文件名,而其他環境可能要運行命令(如,在VAX中的VMS[2])或一些其他機制。
例如,在Windows和Macintosh提供的集成開發環境(IDE)中,用戶可以在IDE中通過選擇菜單中的選項或按下特殊鍵來編輯和執行C程序。最終生成的程序可通過單擊或雙擊文件名或圖標直接在操作系統中運行。
第6步:測試和調試程序
程序能運行是個好跡象,但有時也可能會出現運行錯誤。查找並修復程序錯誤的過程叫調試。學習的過程中不可避免會犯錯,學習編程也是如此。因此,把所學的知識應用於編程時,最好為自己會犯錯做好心理准備。
第7步:維護和修改代碼
創建完程序後,發現程序有錯,或者想擴展程序的用途,這時就要修改程序。例如,用戶輸入以Zz開頭的姓名時程序出現錯誤、想到了一個更好的解決方案、想添加一個更好的新特性,或者要修改程序使其能在不同的計算機系統中運行,等等。
B. C語言簡單問題,謝謝
你那程序沒得問題
估計是你編譯器的問題
按程序的意思會輸出兩句話
{#ifdef HEL
printf("hello ge pi\n");
這里因為你定義了宏HEL,所以輸出
#else
printf("bushiba");
這里不成立,不輸出
#endif
這是表示前面的#if語句的結束,沒多大意思,但C中規定不能省略
printf("jiu shi hello\n");
這里是輸出語句
VC++6.0里估計是你那個預定義的宏沒有參數
#define HEL
你在後面加個參數
#define HEL 1
隨便加個,其實不加也行的,估計是那裡的兼容問題
#define的原型為
#define 宏名 字元串
你剛剛那個定義的為#define HEL
只有宏名,沒有字元串也就是參數
VC++6.0是正規版的撒,
其實在DC++里是可以編譯通過的
但不建議你用那種方法,還是在後面加參數好些
畢竟程序要嚴謹些
C. C語言 求詳細解釋
#include<stdio.h>
#include<string.h>
#include<conio.h>
/*程序目的是驗證輸入字元串PStr2是否是pStr1的字串,採用依次從截取pStr1截取pStr2等長的字串再比較*/
intfnMystrcat(char*pStr1,char*pStr2)
{
inti=0,j=0,a,b;
charpTemp[11];//最好分配內存給臨時數組
while(pStr1[i]!='