c編程學習入門-ag真人国际官网
『壹』 學習c語言需要掌握哪些基本知識
1.入門程序
#include
int main()
{
printf("hello world!");
return 0;
}
2.數據類型
數據類型:
1.基本數據類型:
1.1. 整型:int 4個位元組
1.2. 字元型:char 1個位元組
1.3. 實型(浮點型)
1.3.1.單精度型:float 4個位元組
1.3.2.雙精度型:double 8個位元組
%d:十進制整數;
%c:單個字元;
%s:字元串;
%f:6位小數;
- #include
- int main()
- {
- int age = 18;
- float height = 1.85;
- char unit = 'm';
- printf("小明今年%d歲 ", age);
- printf("小明身高%f%c ", height, unit);
- printf("小明現在在慕課網上學習it技術 ");
- return 0;
- }
- #include
- #define pocketmoney 10 //定義常量及常量值
- int main()
- {
- printf("小明今天又得到%d元零花錢 ", pocketmoney);
- return 0;
- }
表達式1 ? 表達式2 : 表達式3;
- #include
- int main()
- {
- //定義三位數num,個位數sd,十位數td,百位數hd
- int num, sd, td, hd;
- //循環所有三位數
- for( num=100 ; num<1000 ; num )
- {
- //獲取三位數字num百位上的數字
- hd = num/100 ;
- //獲取三位數字num十位上的數字
- td = num/10 ;
- //獲取三位數字num個位上的數字
- sd = num ;
- //水仙花數的條件是什麼?
- if(num ==hd*hd*hd td*td*td sd*sd*sd )
- {
- printf("水仙花數字:%d ", num);
- }
- }
- return 0;
- }
- #include
- int main()
- {
- int i, j, k;
- for(i=1; i<5; i )
- {
- /* 觀察每行的空格數量,補全循環條件 */
- for( j=i ; j<5 ; j )
- {
- printf(" "); //輸出空格
- }
- /* 觀察每行*號的數量,補全循環條件 */
- for( k=0 ; k<2*i-1 ; k )
- {
- printf("*"); //每行輸出的*號
- }
- printf(" "); //每次循環換行
- }
- return 0;
- }
- #include
- int main()
- {
- int sum = 0;
- int i;
- for(i=1; i<=10; i )
- {
- printf("%d ", i);
- if(i==3){
- goto loop;//滿足條件就執行goto語句
- }
- }
- //執行goto
- loop:printf("結束for循環了...."); //請選擇合適位置添加標識符
- return 0;
- }
形參只有在被調用時才分配內存單元,在調用結束時,即刻釋放所分配的內存單元。因此,形參只有在函數內部有效。函數調用結束返回主調函數後則不能再使用該形參變數。
實參可以是常量、變數、表達式、函數等,無論實參是何種類型的量,在進行函數調用時,它們都必須具有確定的值,以便把這些值傳送給形參。因此應預先用賦值等辦法使實參獲得確定值。
在參數傳遞時,實參和形參在數量上,類型上,順序上應嚴格一致,否則會發生類型不匹配」的錯誤。
- #include
- int getpeachnumber(int n) //這里要定義n,要不編譯器會報錯!
- {
- int num;
- if(n==10)
- {
- return 1;
- }
- else
- {
- num = (getpeachnumber(n 1) 1)*2;
- printf("第%d天所剩桃子%d個 ", n, num);
- }
- return num;
- }
- int main()
- {
- int num = getpeachnumber(1);
- printf("猴子第一天摘了:%d個桃子。 ", num);
- return 0;
- }
用關鍵字auto定義的變數為自動變數,auto可以省略,auto不寫則隱含定為「自動存儲類別」,屬於動態存儲方式。
用static修飾的為靜態變數,如果定義在函數內部的,稱之為靜態局部變數;如果定義在函數外部,稱之為靜態外部變數。
為了提高效率,c語言允許將局部變數的值放在cpu中的寄存器中,這種變數叫「寄存器變數」,用關鍵字register作聲明。
用extern聲明的的變數是外部變數,外部變數的意義是某函數可以調用在該函數之後定義的變數。
- #includ
- //來源公眾號:c語言與cpp編程
- int main()
- {
- //定義外部局部變數
- extern int x;
- return 0;
- }
- int x=100;
數據類型 數組名稱[長度n] = {元素1,元素2,元素3,......};
數據類型 數組名稱[] = {元素1,元素2,元素3,......};
數類類型 數組名稱[長度n]; 數組名稱[0] = 元素1;數組名稱[1] = 元素2;...... 注意: 1、數組的下標均以0開始; 2、數組在初始化的時候,數組內元素的個數不能大於聲明的數組長度; 3、如果採用第一種初始化方式,元素個數小於數組的長度時,多餘的數組元素初始化為0; 4、在聲明數組後沒有進行初始化的時候,靜態(static)和外部(extern)類型的數組元素初始化元素為0,自動(auto)類型的數組的元素初始化值不確定。
- #include
- int main()
- {
- int arr[] = {0, 1, 2, 3, 4, 5, 6, 7, 8, 9};
- int i;
- for(i=0;i<10;i )
- {
- printf("%d ",arr[i]);
- }
- return 0;
- }
數組的冒泡排序
字元串與數組
char 字元串名稱[長度] = "字元串內容";
char 字元串名稱[長度] = {'字元串1','字元串2',....,'字元串n',''};
[]中的長度可以省略不寫;
採用第二種方式最後一個元素必須是'',表示結束;
第二種方式不能寫中文!; 輸出字元串時,要使用:printf("%s",字元數組名);或puts(字元數組名);
strlen(s):獲取字元串s的長度;
strcmp(s1,s2):比較字元串;比較的時候會把字元串轉換成ascii碼再進行比較,返回結果為0表示s1和s2的ascii碼值相等,返回結果為1表示s1比s2的ascii碼大,返回結果為-1表示s1比s2的acsii碼小;
strcpy(s1,s2):字元串拷貝;s2會取代s1中的內容;
strcat(s1,s2)將s2拼接到s1後面;注意:s1的length要足夠才可以!
atoi(s1)將字元串轉為整數!
數據類型 數組名稱[常量表達式1][常量表達式2]...[常量表達式n] = {{值1,..,值n},{值1,..,值n},...,{值1,..,值n}};
數據類型 數組名稱[常量表達式1][常量表達式2]...[常量表達式n]; 數組名稱[下標1][下標2]...[下標n] = 值;
採用第一種始化時數組聲明必須指定列的維數。因為系統會根據數組中元素的總個數來分配空間,當知道元素總個數以及列的維數後,會直接計算出行的維數;
採用第二種初始化時數組聲明必須同時指定行和列的維數。
title
author
subject
book id
- struct tag {
- member-list
- member-list
- member-list
- ...
- } variable-list ;
- struct books
- {
- char title[50];
- char author[50];
- char subject[100];
- int book_id;
- } book;
- //此聲明聲明了擁有3個成員的結構體,分別為整型的a,字元型的b和雙精度的c
- //同時又聲明了結構體變數s1
- //這個結構體並沒有標明其標簽
- struct
- {
- int a;
- char b;
- double c;
- } s1;
- //此聲明聲明了擁有3個成員的結構體,分別為整型的a,字元型的b和雙精度的c
- //結構體的標簽被命名為simple,沒有聲明變數
- struct simple
- {
- int a;
- char b;
- double c;
- };
- //用simple標簽的結構體,另外聲明了變數t1、t2、t3
- struct simple t1, t2[20], *t3;
- //也可以用typedef創建新類型
- typedef struct
- {
- int a;
- char b;
- double c;
- } simple2;
- //現在可以用simple2作為類型聲明新的結構體變數
- simple2 u1, u2[20], *u3;
- #include
- #include
- //來源公眾號:c語言與cpp編程
- struct books
- {
- char title[50];
- char author[50];
- char subject[100];
- int book_id;
- };
- int main( )
- {
- struct books book1; /* 聲明 book1,類型為 books */
- struct books book2; /* 聲明 book2,類型為 books */
- /* book1 詳述 */
- strcpy( book1.title, "c programming");
- strcpy( book1.author, "nuha ali");
- strcpy( book1.subject, "c programming tutorial");
- book1.book_id = 6495407;
- /* book2 詳述 */
- strcpy( book2.title, "telecom billing");
- strcpy( book2.author, "zara ali");
- strcpy( book2.subject, "telecom billing tutorial");
- book2.book_id = 6495700;
- /* 輸出 book1 信息 */
- printf( "book 1 title : %s ", book1.title);
- printf( "book 1 author : %s ", book1.author);
- printf( "book 1 subject : %s ", book1.subject);
- printf( "book 1 book_id : %d ", book1.book_id);
- /* 輸出 book2 信息 */
- printf( "book 2 title : %s ", book2.title);
- printf( "book 2 author : %s ", book2.author);
- printf( "book 2 subject : %s ", book2.subject);
- printf( "book 2 book_id : %d ", book2.book_id);
- return 0;
- }
- #include
- #include
- union data
- {
- int i;
- float f;
- char str[20];
- };
- int main( )
- {
- union data data;
- printf( "memory size occupied by data : %d ", sizeof(data));
- return 0;
- }
- #include
- int main ()
- {
- int var = 20; /* 實際變數的聲明 */
- int *ip; /* 指針變數的聲明 */
- ip = &var; /* 在指針變數中存儲 var 的地址 */
- printf("address of var variable: %p ", &var );
- /* 在指針變數中存儲的地址 */
- printf("address stored in ip variable: %p ", ip );
- /* 使用指針訪問值 */
- printf("value of *ip variable: %d ", *ip );
- return 0;
- }
- #include
- int main()
- {
- file *fp = null;
- fp = fopen("/tmp/test.txt", "w ");
- fprintf(fp, "this is testing for fprintf... ");
- fputs("this is testing for fputs... ", fp);
- fclose(fp);
- }
- #include
- int main()
- {
- file *fp = null;
- char buff[255];
- fp = fopen("/tmp/test.txt", "r");
- fscanf(fp, "%s", buff);
- printf("1: %s ", buff );
- fgets(buff, 255, (file*)fp);
- printf("2: %s ", buff );
- fgets(buff, 255, (file*)fp);
- printf("3: %s ", buff );
- fclose(fp);
- }
2.構造類型:
2.1.枚舉類型
2.2.數組類型
2.3.結構體類型
2.4.共用體類型
3.指針類型:
4.空類型:
3.格式化輸出語句
學好c 才是入職大廠的敲門磚! 當年要是有這課,我的c 也不至於這樣
已失效
4.常量
值不發生改變的量成為常量;
定義字元常量(注意後面沒有;)
5.運算符
5.1.算數運算符: ,-,*,/,%, ,--;前 /--,先運算,再取值.後 /--,先取值,再運算;
5.2.賦值運算符:
5.3.關系運算符;
5.4.邏輯運算符;
5.5.三目運算符:
6.水仙花數計算
輸出所有三位數的水仙花數字
所謂「水仙花數」是指一個三位數,其各位數字立方和等於該數,如:153就是一個水仙花數,153=111 555 333。
7.列印正三角形的*
8.臭名遠揚的goto語句
很少使用
9.形參與實參
形參:形參是在定義函數名和函數體的時候使用的參數,目的是用來接收調用該函數時傳入的參數;
實參:實參是在調用時傳遞該函數的參數。
函數的形參和實參具有以下特點:
10.函數返回值注意
注意:void函數中可以有執行代碼塊,但是不能有返回值,另void函數中如果有return語句,該語句只能起到結束函數運行的功能。其格式為:return;
11.遞歸
12.變數存儲類別 !
12.1.生存周期劃分存儲方式
c語言根據變數的生存周期來劃分,可以分為靜態存儲方式和動態存儲方式。
靜態存儲方式:是指在程序運行期間分配固定的存儲空間的方式。靜態存儲區中存放了在整個程序執行過程中都存在的變數,如全局變數。
動態存儲方式:是指在程序運行期間根據需要進行動態的分配存儲空間的方式。動態存儲區中存放的變數是根據程序運行的需要而建立和釋放的,通常包括:函數形式參數;自動變數;函數調用時的現場保護和返回地址等。
12.2.存儲類型劃分
c語言中存儲類別又分為四類:自動(auto)、靜態(static)、寄存器的(register)和外部的(extern) ;
注意:靜態局部變數屬於靜態存儲類別,在靜態存儲區內分配存儲單元,在程序整個運行期間都不釋放;靜態局部變數在編譯時賦初值,即只賦初值一次;如果在定義局部變數時不賦初值的話,則對靜態局部變數來說,編譯時自動賦初值0(對數值型變數)或空字元(對字元變數)
注意:只有局部自動變數和形式參數可以作為寄存器變數;一個計算機系統中的寄存器數目有限,不能定義任意多個寄存器變數;局部靜態變數不能定義為寄存器變數。
13.內部函數外部函數 !
在c語言中不能被其他源文件調用的函數稱為內部函數 ,內部函數由static關鍵字來定義,因此又被稱為靜態函數,形式為:
static [數據類型] 函數名([參數])
這里的static是對函數的作用范圍的一個限定,限定該函數只能在其所處的源文件中使用,因此在不同文件中出現相同的函數名稱的內部函數是沒有問題的。
在c語言中能被其他源文件調用的函數稱為外部函數 ,外部函數由extern關鍵字來定義,形式為:
extern [數據類型] 函數名([參數])
c語言規定,在沒有指定函數的作用范圍時,系統會默認認為是外部函數,因此當需要定義外部函數時extern也可以省略。 extern可以省略; 14.數組 數組:一塊連續的,大小固定並且裡面的數據類型一致的內存空間, 數組的聲明:數據類型 數組名稱[長度n]
15.數組遍歷
冒泡排序的思想:相鄰元素兩兩比較,將較大的數字放在後面,直到將所有數字全部排序。
在c語言中,是沒有辦法直接定義子字元串數據類型的,需使用數組來定義所要的字元串,形式如下:
注:
16.字元串函數
17.多維數組
數據類型 數組名稱[常量表達式1]...[常量表達式n];
多維數組的初始化與一維數組的初始化類似也是分兩種:
多維數組初始化要注意以下事項:
18.多維度數組的遍歷
使用嵌套循環
注意:多維數組的每一維下標均不能越界!
19.結構體
c 數組允許定義可存儲相同類型數據項的變數,結構是 c 編程中另一種用戶自定義的可用的數據類型,它允許您存儲不同類型的數據項。
結構用於表示一條記錄,假設您想要跟蹤圖書館中書本的動態,您可能需要跟蹤每本書的下列屬性:
定義結構
為了定義結構,您必須使用 struct 語句。struct 語句定義了一個包含多個成員的新的數據類型,struct 語句的格式如下:
tag 是結構體標簽。
member-list 是標準的變數定義,比如 int i; 或者 float f,或者其他有效的變數定義。
variable-list 結構變數,定義在結構的末尾,最後一個分號之前,您可以指定一個或多個結構變數。下面是聲明 book 結構的方式:
在一般情況下,tag、member-list、variable-list 這 3 部分至少要出現 2 個。以下為實例:
訪問結構成員
為了訪問結構的成員,我們使用成員訪問運算符(.)。成員訪問運算符是結構變數名稱和我們要訪問的結構成員之間的一個句號。您可以使用 struct 關鍵字來定義結構類型的變數。下面的實例演示了結構的用法:
學好c 才是入職大廠的敲門磚! 當年要是有這課,我的c 也不至於這樣
已失效
20.共用體
共用體是一種特殊的數據類型,允許您在相同的內存位置存儲不同的數據類型。您可以定義一個帶有多成員的共用體,但是任何時候只能有一個成員帶有值。共用體提供了一種使用相同的內存位置的有效方式。
21.指針
22.文件讀寫
寫入文件
讀取文件
c語言與c 學習路線
23.排序演算法
十大經典排序演算法(動態演示 代碼)
24.查找演算法
九種查找演算法
25.面試知識
c語言與c 面試知識總結
26.字元串操作
字元串操作的全面總結
27.c語言常用標准庫解讀
c語言常用標准庫解讀
28. c語言最常用的貪心演算法
c語言最常用的貪心演算法就這么被攻克了
29. 常見的c語言內存錯誤及對策
常見的c語言內存錯誤及對策
30. c語言實現面向對象的原理
c語言實現面向對象的原理
31. c語言/c 內存管理
看完這篇你還能不懂c語言/c 內存管理?
32. 再談c語言指針
再談指針:大佬給你撥開 c 指針的雲霧
c語言函數指針之回調函數
c語言指針詳解(文末有福利)
33. c語言預處理命令
長文詳解:c語言預處理命令
34. c語言高效編程與代碼優化
c語言高效編程與代碼優化
35. c語言結構體
c語言之結構體就這樣被攻克了!值得收藏!
36. 原碼, 反碼, 補碼 詳解
原碼, 反碼, 補碼 詳解
37. c語言宏定義
簡述c語言宏定義的使用
38. c語言之共用體union、枚舉、大小端模式
c語言之共用體union、枚舉、大小端模式
『貳』 c語言編程怎樣入門
第一:c語言語法結構很簡潔精妙,寫出的程序也很高效,很便於描述演算法,大多數的程序員願意使用c語言去描述演算法本身,所以,如果你想在程序設計方面有所建樹,就必須去學它。
第二:c語言能夠讓你深入系統底層,你知道的操作系統,哪一個不是c語言寫的?所有的windows,unix,linux,mac,os/2,沒有一個里外的,如果你不懂c語言,怎麼可能深入到這些操作系統當中去呢?更不要說你去寫它們的內核程序了。
『叄』 c語言入門必收藏,可以參考的學習網站
c語言入門,可以參考的學習網站?
1、cplusplus:一個優秀的c 學習網站,除了提供相應的教程之外,還有一個很棒的論壇。和其它網站相比,它的價值更多體現在參考上,因為裡面解釋了許多編程概念。
2、c source codes:345個比較全面的關干c 的源代碼清單。
3、c faq:c 常見問題,項目工程中遇到的很多問題都有,涉及c 高效編程。
4、learncpp:免費學習c 編程。
5、tutorialspoint:一個很好的網站!想學的技術(包括升模c ),它幾乎都提供了詳細的教程。保存好就對了,超級有用。漏笑檔
6、the c standard library:這是一個收集了數c/c 網站鏈接列表的網頁。
7、free c/c libraries:免費c 開源庫和其它有用的工具。
8、c and c users group:c和c 的用戶團體提供了免費的涵蓋各種編程領域 c 項目返亂的源代碼,包括 ai、動畫、編譯器、資料庫、調試、加密、游戲、圖形、gui、語言工具、系統編程等。
『肆』 我是小白,想自學編程c語言,需要哪種入門書籍自學!
我是小白,想自學編程c語言,需要哪種入門書籍自學!
《c語言入門經典》
多說幾句:
c語言是一個基礎語言,很多語言來自c,但實際很少用到(除非做一些操作系統或者一些基礎底層的介面開發),建議你直接學些實用性的編程語言:
-
如果想做蘋果手機或者蘋果筆記本上開發程序,學習swift(原來是object c 也是c語言的一個分支,但是現在慢慢被swift代替了) 。
-
如果想編寫windows的桌面程序,學習c#或者delphi(這個確實有點年頭了,很多人都不學習了,但是我一直在用delphi 開發各種應用,工作在win8,win10 下,也沒有感覺有什麼問題)
-
如果想做網頁的前端開發,學習,css,js
-
如果想學習網頁的後台開發,學習php,java,c#
-
如果你對工業控制領域有興趣,可以學習單片機知識和匯編語言
這些需要你自己設定方向以後,然後學習就可以了,學習的方式
-
買一些相關的書籍,簡單入門的,循序漸進,最好有視頻和案列,看著視頻,自己敲敲代碼,就應該很快入門,然後再提高學習
-
去一些專門的培訓機構,學習幾個月
這都是我的一些個人看法,有問題可以探討,希望能幫助到你。
自學c語言推薦幾本入門書籍
推薦書籍:
《c語言程序設計:現代方法(第2版)》
小白,想自學電腦編程,求推薦入門書籍
譚浩強的c
下來就要看你想從事的方向。一個方向是學習c ,一個是學習java
目前這兩個方向待遇方面還可以。
我想自學c語言編程,入門選什麼書自學好啊?
推薦學習c語言的書籍是: c primer plus中文版 因為是全面的講解 手冊 非常合適初學者必備
開發工具是: vs2008 或者 vs2010 或者vs2013
網路一下, 80x86匯編小站 網站裡面有篇文章是針對初學c/c 寫的,寫得不錯. 標題是:
如何正確的入門windows系統下c/c 學習領域.
希望這篇文章對你有幫助,其實入門學習c語言,重要的是選擇一本好書和一個好的開發工具,如果有條件可以配備一個老師,這樣你學習效率將會有很大的提升,當然最重要還是你的學習態度 和 毅力.
c語言自學書籍推薦(入門)
就推薦2本:
譚浩強的c程序設計,累積銷量超過1000萬冊。
k&r寫的c程序設計語言,最經典最權威的c教程,也容易懂。
電腦編程c語言入門(自學)
1、程語語言其實是一個很初級的工具,但是又必須熟練的掌握它,學懂一門編程語言就好像學會了寫字,但是會寫字的人不見得會寫文章,而會寫文章又不見的寫得好。可是如果不會寫字,那就一定寫不出文章來。
2、在學習c語言之前,應該學好計算機基礎。裡面的很多概念對於c程序員都是非常重要的。如果在著手學習c之前,或者已經開始學習c,但是碰到了很多問題,應該再把計算機基礎的書拿來好好看看。如果有足夠的耐心,十足的毅力,應該再學習c語言之前學學匯編,這會對許多比較細膩的概念有清醒的認識。那麼可以在看完一遍c語言的教材後再看,但是一定要看一遍,一定會受益匪淺。不管看什麼書,先認真地看懂,不要貪速度,應該力求深入的理解。如果能夠比較熟練的解決一本教材上的所有習題,那麼就應該轉入對演算法的學習,盡管此時的c語言還稱不上精通,有許多細節問題還不了解,許多問題還沒有碰到,但是這些問題會在後面的工作和學習中得到解決的。
3、不需要多少資料,掌握一本《the c programming language》就足夠了。繼續學習就更加容易。建議不要找捷徑,通過考試除外,真正的水平提高是建立在編程實踐積累基礎上的,必須一個一個程序的完成才能提高。
自學韓國語言入門書籍
要是自學的話 實際肯定不能難理解了 一定要簡單一點 容易理解一點. 給你推薦 延世大學出版的韓國語教程 這本教材相對於其他教材還是比較容易的 裡面的內容很容易理解和掌握. 我入門的時候就用的這本書 感覺挺好的. 推薦給你.
請大家推薦一些c 的入門書籍。我想自學編程
現在已經工作了,同事的朋友有做程序員的,經驗是,在學校書看的不要多,看看基礎的就可以了,因為在學校都是漫無目的的看書,正因為這樣會越來越乏味,剛開始覺得有意思時間長了就厭倦了,沒有人走到最後,舉個例子吧你平時你聽歌用的千千靜聽軟體就是用編程語言寫出來的,不一定就是c ,但是c 可以寫出來這種軟體,你得知道你學習的目的是什麼就會堅持下來,呵呵 說的偏離主題了,至於入門書籍很多他們推薦的都不錯,但是不一定就適合你,你得自己去圖書館去找,回家看,看完這本再看另一本,同樣講的是基礎,但是你看這本這個知識點就能看明白,那個知識點這本就講的不明白,另一本你能看明白,所以自己去多看多查就好了,基礎的看上幾遍就不要一味的看書,因為這時候你的基礎肯定有不明白的地方,這時候去抄寫別人的案例找一本c 案例大全,去照貓畫虎,理解每句含義,就知道自己的基礎掌握的程度了,這時候要把書當做字典,回去查他們深層次理解基礎,比天天看書有趣多了,找些好玩的案例小游戲什麼的,自己就愛學了,我只是擔心你一味的看書會厭倦,以後必須寫程序,呵呵,說的不好見諒,當然首先必須看書但是不一定哪本,自己去一本本大量看,之後再選擇,在仔細看這本,在實踐,在看書......加油吧推薦csdn搜索一下就知道了很好的網站,
請大家推薦一下c 的入門書籍。我想自學編程。
本來我不推薦看c primer
因為我看過第三版,感覺確實不適合初學者,
但我最近看過一下第四版,好像很多內容的編排都不同了,
所以你可以試試看《c primer》 第四版
如果感覺還是比較難懂,可以先看錢能的《c 程序設計》
想自學編程,哪種語言最適合入門呢
編程有很多領域,應該先從你興趣開始,有興趣再決定編程領域,有了編程領域在決定語言.不同的語言對應著不同編程領域,只有確定這些信息了,才知道要看什麼書籍。如果你要學完那是有點不現實.因此你要回想一下你興趣來源是什麼?比如喜歡做黑客,喜歡研究反病毒,喜歡為windows桌面開發一些實用的小軟體等等.要分析好興趣來由,在決定你的發展方向,就好了.比如你喜歡為windows開發軟體,那麼 c語言是必備基礎,學好好瞭然後在擴展一門面向對象的語言比如c c# java 等.這些是不錯的選擇。然後光有語言不行,為了軟體的質量保證,還需要研究一下系統理論基礎,這樣你的軟體才能做到對系統的作家兼容性和獲取最佳性能。
也可網路一下, 80x86匯編小站 這個網站裡面有幾篇關於編程入門文章或許會對你有幫助, 或者 你直接聯系 這個站長 跟他交流編程方面的事情
『伍』 自學編程 應該學習些什麼內容
1、c 語言:c 語言作為一種簡單靈活的高級編程語言,它是一個面向過程的語言,一般是作為計算機專業的基礎入門語言課程。2、python:python是一種面向對象、互動式計算機程序設計語言。它的特點是語法簡捷而清晰。由於它的易學、易讀的特性,有些學校用它代替c語言作為基礎入檔談門的語言。同時python且具有豐富和強大的類庫,基本上能勝任平時需要的編程工作,而且它對一些新興的技術行慶碰例如大數據、機器學習等也有較好的支持 。3、c :c 語言保留了c語言的有效性、靈活性等特點,又添加了面向對象編程的支持,具有強大的編程功能,可方便地模擬現實問題的過程和操作。它編寫出的程序具有結構清晰、易於擴充等優良特性,適合於各種大型應用軟體、系統軟體的開發和設計。它的問題在於c太過復雜,作為一個門課程來講,一個學差配期的學習只是對c 來說時間太短,只能做一個概念性的了解。4、javascript:javascript是一種輕量級的編程語言,它是一個腳本語言,可以嵌入到html頁面中,由來瀏覽器來解釋執行,用來實現瀏覽器和用戶之間的交互。它的應用場景主要是基於web的開發。5、java:是較為傳統的面向對象語言,特點是支持跨平台的開發。jav語言是基於面向對象的思想來設計的 , 但是刪去了c 中幾乎不用或很難用好的一些面向對象的特徵。jav語言隨著互聯網的發展逐漸流行,而且大量的開源框架和類庫支持java在各個場景的開發實踐。6、swift:swift是apple發布的一門編程語言,用來支持apple設備上的osx和ios應用程序,在ios程序設計課程中需要講授swift語言。7、r:r作為一種統計分析語言,集統計分析與圖形顯示於一體。隨著大數據、機器學習等技術的迅速發展,r作為一個數據分析統計工具日益得到重視。一些學校也陸續開設了r語言的課程。參考資料來源: