學習程式設計 從這裡開始
選擇一門程式語言,開始您的程式設計之旅。我們提供從零基礎到進階的完整教學內容, 讓您循序漸進地掌握程式設計技能。
選擇您想學習的程式語言
HTML
入門網頁開發的基礎語言,用於創建網頁的結構和內容,是所有前端開發者的必學第一步。
主要特色:
- 網頁結構基礎
- 語義化標籤
- 跨瀏覽器支援
Python
初學者最適合初學者的程式語言,語法簡潔易懂,廣泛應用於數據科學、人工智慧、網頁開發等領域。
主要特色:
- 語法簡潔易學
- 豐富的函式庫
- 數據科學首選
JavaScript
初學者網頁開發的核心語言,可以創建互動式網頁,也能用於後端開發和行動應用程式開發。
主要特色:
- 前端開發必備
- 即時互動效果
- 全端開發可能
C#
中級微軟開發的現代化程式語言,語法簡潔優雅,適合Windows應用程式和網頁開發。
主要特色:
- .NET框架支援
- 跨平台開發
- 強型別系統
Java
中級企業級開發的首選語言,具有強大的跨平台能力,廣泛用於大型系統開發和Android應用。
主要特色:
- 跨平台執行
- 企業級應用
- 強型別系統
C
中級系統程式設計的基礎語言,學習程式設計核心概念的最佳選擇,廣泛應用於作業系統和嵌入式開發。
主要特色:
- 系統程式設計
- 記憶體管理
- 高效能執行
C++
進階物件導向程式語言,結合C語言效能與現代程式設計概念,適合遊戲開發和高效能應用。
主要特色:
- 物件導向設計
- 高效能執行
- 遊戲開發
為什麼選擇我們的教學平台?
零基礎友善
從最基礎的概念開始,循序漸進學習
實作導向
豐富的程式範例和實作練習
現代化設計
美觀直覺的介面,支援深淺色主題
自主學習
按照自己的節奏學習,隨時隨地存取
C 語言教學
系統程式設計的基礎語言
學習目標
- • 了解 C 語言基本語法和概念
- • 掌握變數、資料型別和運算子
- • 學會條件判斷和迴圈控制
- • 理解函數和指標的使用
- • 掌握陣列和結構體
- • 學會記憶體管理
- • 能夠編寫完整的 C 程式
1. C 語言簡介與環境設置
基礎了解 C 語言的歷史、特色,以及如何設置開發環境。
程式碼範例:
#include <stdio.h>
int main() {
printf("Hello, World!\\n");
return 0;
}
重點說明:
- • C 語言是系統程式設計的基礎
- • #include <stdio.h> 引入標準輸入輸出函式庫
- • printf() 用於輸出文字
- • main() 是程式的進入點
2. 變數與資料型別
基礎學習 C 語言的基本資料型別和變數宣告方式。
程式碼範例:
#include <stdio.h>
int main() {
int age = 25;
float height = 175.5;
char grade = 'A';
printf("年齡: %d\\n", age);
printf("身高: %.1f 公分\\n", height);
printf("等級: %c\\n", grade);
return 0;
}
重點說明:
- • int:整數型別
- • float:浮點數型別
- • char:字元型別
- • printf() 格式化輸出:%d (整數)、%f (浮點數)、%c (字元)
2. 變數與資料型別
基礎學習 C 語言中的基本資料型別和變數宣告方式。
程式碼範例:
#include <stdio.h>
int main() {
// 整數型別
int age = 25;
short year = 2024;
long population = 23000000L;
// 浮點數型別
float height = 175.5f;
double weight = 68.5;
// 字元型別
char grade = 'A';
// 輸出變數值
printf("年齡: %d\\n", age);
printf("身高: %.1f 公分\\n", height);
printf("體重: %.1f 公斤\\n", weight);
printf("成績: %c\\n", grade);
return 0;
}
重點說明:
- • int:整數 (通常 4 bytes)
- • float:單精度浮點數 (4 bytes)
- • double:雙精度浮點數 (8 bytes)
- • char:字元 (1 byte)
- • printf() 格式化字串:%d 整數、%f 浮點數、%c 字元
3. 運算子與表達式
基礎學習 C 語言中的各種運算子和表達式的使用方法。
程式碼範例:
#include <stdio.h>
int main() {
int a = 10, b = 3;
// 算術運算子
printf("a + b = %d\\n", a + b); // 加法
printf("a - b = %d\\n", a - b); // 減法
printf("a * b = %d\\n", a * b); // 乘法
printf("a / b = %d\\n", a / b); // 除法
printf("a %% b = %d\\n", a % b); // 餘數
// 比較運算子
printf("a > b: %d\\n", a > b); // 大於
printf("a == b: %d\\n", a == b); // 等於
printf("a != b: %d\\n", a != b); // 不等於
// 邏輯運算子
int x = 1, y = 0;
printf("x && y: %d\\n", x && y); // 邏輯 AND
printf("x || y: %d\\n", x || y); // 邏輯 OR
printf("!x: %d\\n", !x); // 邏輯 NOT
return 0;
}
重點說明:
- • 算術運算子:+、-、*、/、% (餘數)
- • 比較運算子:>、<、>=、<=、==、!=
- • 邏輯運算子:&& (AND)、|| (OR)、! (NOT)
- • 在 C 語言中,0 代表 false,非 0 代表 true
4. 輸入與輸出
基礎學習如何使用 scanf() 接收使用者輸入和 printf() 格式化輸出。
程式碼範例:
#include <stdio.h>
int main() {
char name[50];
int age;
float height;
// 接收使用者輸入
printf("請輸入您的姓名: ");
scanf("%s", name);
printf("請輸入您的年齡: ");
scanf("%d", &age);
printf("請輸入您的身高 (公分): ");
scanf("%f", &height);
// 格式化輸出
printf("\\n=== 個人資料 ===\\n");
printf("姓名: %s\\n", name);
printf("年齡: %d 歲\\n", age);
printf("身高: %.1f 公分\\n", height);
return 0;
}
重點說明:
- • scanf() 用於接收使用者輸入
- • %s:字串 (不需要 & 符號)
- • %d:整數 (需要 & 符號)
- • %f:浮點數 (需要 & 符號)
- • & 符號表示取得變數的記憶體位址
完整課程內容
C 語言教學包含 10 個完整課程,涵蓋從基礎到進階的所有概念:
基礎課程 (1-5)
- ✅ C 語言簡介與環境設置
- ✅ 變數與資料型別
- ✅ 運算子與表達式
- ✅ 輸入與輸出
- • 條件判斷 (if/else/switch)
進階課程 (6-10)
- • 迴圈 (for/while/do-while)
- • 陣列 (Array)
- • 函數 (Function)
- • 指標基礎 (Pointer)
- • 結構體與檔案處理
C++ 教學
物件導向程式設計語言
學習目標
- • 掌握 C++ 基本語法和特色
- • 了解物件導向程式設計
- • 學會類別與物件的使用
- • 理解繼承與多型機制
- • 掌握 STL 標準函式庫
- • 學會模板程式設計
- • 能夠開發完整的 C++ 應用程式
1. C++ 簡介與環境設置
基礎了解 C++ 語言的特色和發展歷史,以及開發環境的設置。
程式碼範例:
#include <iostream>
using namespace std;
int main() {
cout << "Hello, C++ World!" << endl;
return 0;
}
重點說明:
- • C++ 支援物件導向程式設計
- • iostream 是 C++ 的輸入輸出串流函式庫
- • cout 用於輸出,endl 用於換行
- • using namespace std 簡化程式碼
2. 變數與資料型別
基礎學習 C++ 的基本資料型別、變數宣告和初始化方式。
程式碼範例:
#include <iostream>
#include <string>
using namespace std;
int main() {
// 基本資料型別
int age = 25;
double height = 175.5;
float weight = 68.5f;
char grade = 'A';
bool isStudent = true;
string name = "張小明";
// 顯示變數資訊
cout << "姓名: " << name << endl;
cout << "年齡: " << age << " 歲" << endl;
cout << "身高: " << height << " 公分" << endl;
cout << "體重: " << weight << " 公斤" << endl;
cout << "等級: " << grade << endl;
cout << "是學生: " << (isStudent ? "是" : "否") << endl;
// 常數
const double PI = 3.14159;
cout << "圓周率: " << PI << endl;
// auto 關鍵字 (C++11)
auto temperature = 25.5; // 自動推導為 double
cout << "溫度: " << temperature << " 度" << endl;
return 0;
}
重點說明:
- • int, double, float, char, bool 是基本型別
- • string 需要引入 <string> 標頭檔
- • const 關鍵字定義常數
- • auto 讓編譯器自動推導型別
- • sizeof 可以查看型別大小
3. 運算子與表達式
基礎學習 C++ 中的各種運算子和表達式操作。
程式碼範例:
#include <iostream>
using namespace std;
int main() {
int a = 15, b = 4;
// 算術運算子
cout << "=== 算術運算 ===" << endl;
cout << a << " + " << b << " = " << (a + b) << endl;
cout << a << " - " << b << " = " << (a - b) << endl;
cout << a << " * " << b << " = " << (a * b) << endl;
cout << a << " / " << b << " = " << (a / b) << endl;
cout << a << " % " << b << " = " << (a % b) << endl;
// 比較運算子
cout << "\\n=== 比較運算 ===" << endl;
cout << a << " == " << b << ": " << (a == b) << endl;
cout << a << " != " << b << ": " << (a != b) << endl;
cout << a << " > " << b << ": " << (a > b) << endl;
// 邏輯運算子
bool x = true, y = false;
cout << "\\n=== 邏輯運算 ===" << endl;
cout << "true && false = " << (x && y) << endl;
cout << "true || false = " << (x || y) << endl;
cout << "!true = " << (!x) << endl;
return 0;
}
重點說明:
- • 算術運算子:+, -, *, /, %
- • 比較運算子:==, !=, >, <, >=, <=
- • 邏輯運算子:&&, ||, !
- • 位元運算子:&, |, ^, ~
- • 遞增遞減:++, --
4. 輸入與輸出
基礎學習 C++ 的串流輸入輸出操作。
程式碼範例:
#include <iostream>
#include <iomanip>
#include <string>
using namespace std;
int main() {
string name;
int age;
double height, weight;
// 基本輸入
cout << "請輸入您的姓名: ";
getline(cin, name); // 讀取包含空格的字串
cout << "請輸入您的年齡: ";
cin >> age;
cout << "請輸入您的身高 (公分): ";
cin >> height;
cout << "請輸入您的體重 (公斤): ";
cin >> weight;
// 計算 BMI
double bmi = weight / ((height / 100) * (height / 100));
// 格式化輸出
cout << "\\n=== 個人資料 ===" << endl;
cout << "姓名: " << name << endl;
cout << "年齡: " << age << " 歲" << endl;
cout << "身高: " << fixed << setprecision(1) << height << " 公分" << endl;
cout << "體重: " << fixed << setprecision(1) << weight << " 公斤" << endl;
cout << "BMI: " << fixed << setprecision(2) << bmi << endl;
return 0;
}
重點說明:
- • cout:標準輸出串流
- • cin:標準輸入串流
- • getline():讀取包含空格的字串
- • iomanip:輸出格式控制
- • setprecision():設定精確度
5. 條件判斷與迴圈
基礎學習 C++ 的控制結構和迴圈語法。
程式碼範例:
#include <iostream>
#include <vector>
using namespace std;
int main() {
// if-else 條件判斷
int score;
cout << "請輸入成績 (0-100): ";
cin >> score;
char grade;
if (score >= 90) {
grade = 'A';
cout << "優秀!" << endl;
} else if (score >= 80) {
grade = 'B';
cout << "良好!" << endl;
} else if (score >= 70) {
grade = 'C';
cout << "及格!" << endl;
} else {
grade = 'F';
cout << "不及格,需要加油!" << endl;
}
// switch 語句
switch (grade) {
case 'A':
cout << "繼續保持優秀表現!" << endl;
break;
case 'B':
cout << "很好,再努力一點就能達到 A!" << endl;
break;
case 'C':
cout << "需要更加努力學習。" << endl;
break;
case 'F':
cout << "建議尋求額外的學習資源。" << endl;
break;
}
// for 迴圈
cout << "\\n=== for 迴圈 - 九九乘法表 (7的倍數) ===" << endl;
for (int i = 1; i <= 9; i++) {
cout << "7 x " << i << " = " << (7 * i) << endl;
}
// range-based for 迴圈 (C++11)
vector<string> fruits = {"蘋果", "香蕉", "橘子", "葡萄"};
cout << "\\n水果清單:" << endl;
for (const auto& fruit : fruits) {
cout << "- " << fruit << endl;
}
return 0;
}
重點說明:
- • if-else:條件判斷
- • switch:多分支選擇
- • for:計數型迴圈
- • while/do-while:條件型迴圈
- • range-based for:C++11 新語法
6. 陣列與字串
中級學習 C++ 中陣列和字串的操作方法。
程式碼範例:
#include <iostream>
#include <string>
#include <vector>
using namespace std;
int main() {
// 傳統陣列
int numbers[5] = {10, 20, 30, 40, 50};
cout << "傳統陣列:";
for (int i = 0; i < 5; i++) {
cout << numbers[i] << " ";
}
cout << endl;
// vector 動態陣列
vector<int> scores = {85, 92, 78, 96, 88};
cout << "vector 陣列:";
for (int score : scores) { // 範圍型 for 迴圈
cout << score << " ";
}
cout << endl;
// 新增元素到 vector
scores.push_back(95);
cout << "新增後大小:" << scores.size() << endl;
// 字串操作
string name = "C++ Programming";
cout << "字串:" << name << endl;
cout << "長度:" << name.length() << endl;
cout << "第一個字元:" << name[0] << endl;
// 字串方法
string text = "Hello World";
cout << "原始字串:" << text << endl;
cout << "子字串:" << text.substr(0, 5) << endl;
cout << "尋找 'World':" << text.find("World") << endl;
return 0;
}
重點說明:
- • 傳統陣列:固定大小,效能較好
- • vector:動態陣列,可變大小
- • string:C++ 字串類別
- • 範圍型 for:簡化陣列遍歷
- • 字串方法:length(), substr(), find()
完整課程內容
C++ 教學包含 12 個完整課程,從基礎語法到進階物件導向程式設計:
基礎課程 (1-6)
- ✅ C++ 簡介與環境設置
- ✅ 變數與資料型別
- ✅ 運算子與表達式
- ✅ 輸入與輸出
- ✅ 條件判斷與迴圈
- ✅ 陣列與字串
進階課程 (7-12)
- • 函數基礎
- • 物件導向程式設計基礎
- • 類別與物件
- • 繼承與多型
- • 模板與STL
- • 檔案處理與例外處理
C# 教學
現代化的 .NET 程式語言
學習目標
- • 了解 C# 基本語法和 .NET 框架
- • 掌握物件導向程式設計概念
- • 學會類別與物件的使用
- • 理解繼承與多型機制
- • 掌握 .NET 類別庫的使用
- • 學會例外處理和檔案操作
- • 能夠開發完整的 C# 應用程式
1. C# 簡介與環境設置
基礎了解 C# 語言的特色和 .NET 框架,以及開發環境的設置。
程式碼範例:
using System;
namespace HelloWorld
{
class Program
{
static void Main(string[] args)
{
Console.WriteLine("Hello, C# World!");
Console.ReadKey();
}
}
}
重點說明:
- • C# 是微軟開發的現代化程式語言
- • using System 引入系統命名空間
- • Console.WriteLine() 用於輸出
- • 支援強型別和自動記憶體管理
2. 變數與資料型別
基礎學習 C# 中的基本資料型別和變數宣告方式。
程式碼範例:
using System;
namespace DataTypes
{
class Program
{
static void Main(string[] args)
{
// 基本資料型別
int age = 25; // 整數
double height = 175.5; // 雙精度浮點數
float weight = 68.5f; // 單精度浮點數
char grade = 'A'; // 字元
string name = "張小明"; // 字串
bool isStudent = true; // 布林值
// 輸出變數值
Console.WriteLine($"姓名: {name}");
Console.WriteLine($"年齡: {age} 歲");
Console.WriteLine($"身高: {height} 公分");
Console.WriteLine($"體重: {weight} 公斤");
Console.WriteLine($"等級: {grade}");
Console.WriteLine($"是學生: {isStudent}");
// var 關鍵字 (型別推斷)
var city = "台北"; // 編譯器自動推斷為 string
var score = 95; // 編譯器自動推斷為 int
Console.WriteLine($"城市: {city}");
Console.WriteLine($"分數: {score}");
Console.ReadLine();
}
}
}
重點說明:
- • int:32位元整數
- • double:64位元雙精度浮點數
- • string:字串 (參考型別)
- • bool:布林值 (true/false)
- • $"":字串插值語法
- • var:自動型別推斷
3. 運算子與表達式
基礎學習 C# 中的各種運算子和表達式的使用方法。
程式碼範例:
using System;
namespace Operators
{
class Program
{
static void Main(string[] args)
{
int a = 10, b = 3;
// 算術運算子
Console.WriteLine("=== 算術運算 ===");
Console.WriteLine($"{a} + {b} = {a + b}");
Console.WriteLine($"{a} - {b} = {a - b}");
Console.WriteLine($"{a} * {b} = {a * b}");
Console.WriteLine($"{a} / {b} = {a / b}"); // 整數除法
Console.WriteLine($"{a} / {b} = {(double)a / b}"); // 浮點除法
Console.WriteLine($"{a} % {b} = {a % b}");
// 比較運算子
Console.WriteLine("\\n=== 比較運算 ===");
Console.WriteLine($"{a} == {b}: {a == b}");
Console.WriteLine($"{a} != {b}: {a != b}");
Console.WriteLine($"{a} > {b}: {a > b}");
Console.WriteLine($"{a} < {b}: {a < b}");
// 邏輯運算子
bool x = true, y = false;
Console.WriteLine("\\n=== 邏輯運算 ===");
Console.WriteLine($"{x} && {y} = {x && y}"); // AND
Console.WriteLine($"{x} || {y} = {x || y}"); // OR
Console.WriteLine($"!{x} = {!x}"); // NOT
Console.ReadLine();
}
}
}
重點說明:
- • 算術運算子:+、-、*、/、% (餘數)
- • 比較運算子:==、!=、>、<、>=、<=
- • 邏輯運算子:&& (AND)、|| (OR)、! (NOT)
- • 賦值運算子:=、+=、-=、*=、/=
- • 整數除法會截斷小數部分
完整課程內容
C# 教學包含 12 個完整課程,涵蓋 .NET 開發的各個方面:
基礎課程 (1-6)
- ✅ C# 簡介與環境設置
- ✅ 變數與資料型別
- ✅ 運算子與表達式
- • 輸入與輸出
- • 條件判斷與迴圈
- • 陣列與集合
進階課程 (7-12)
- • 方法與函數
- • 物件導向程式設計
- • 類別與物件
- • 繼承與多型
- • 介面與抽象類別
- • 例外處理與檔案操作