程式基礎之字串函數與處理篇 前言 無論是在現實世界或是網路世界, 文字都是我們溝通的方式之一 在資訊的世界裡面, 怎麼利用程式把文字照自己想要的方式呈現就是個很基本也很重要的技術 但我們可能會發現, 許多文字處理要做的事情都很類似 ( 例如把兩個字串接在一起, 或是照特定格式輸出 ), 因此在 C

Size: px
Start display at page:

Download "程式基礎之字串函數與處理篇 前言 無論是在現實世界或是網路世界, 文字都是我們溝通的方式之一 在資訊的世界裡面, 怎麼利用程式把文字照自己想要的方式呈現就是個很基本也很重要的技術 但我們可能會發現, 許多文字處理要做的事情都很類似 ( 例如把兩個字串接在一起, 或是照特定格式輸出 ), 因此在 C"

Transcription

1 程式基礎之字串函數與處理篇 前言 無論是在現實世界或是網路世界, 文字都是我們溝通的方式之一 在資訊的世界裡面, 怎麼利用程式把文字照自己想要的方式呈現就是個很基本也很重要的技術 但我們可能會發現, 許多文字處理要做的事情都很類似 ( 例如把兩個字串接在一起, 或是照特定格式輸出 ), 因此在 C 語言中提供了許多字串處理函數, 讓程式設計師能夠省去做相同處理的時間 而今天我們就是要來介紹這些函數, 並且要讓大家對 printf() 和 scanf() 這兩個格式化的輸入輸出有更深刻的理解喔! strooxx 家族 講到字串處理函數, 首先要介紹的當然是 strooxx 家族啦! 你可能會問 什麼? 我怎麼沒聽過這個家族!? 讓我們先介紹這個家族的成員, 你就會知道他們是誰了! strooxx 家族 strooxx 家族隸屬於 string.h 這個標頭檔裡, 所以如果我們要使用他, 就必須要先 include 它 : #include <string.h> 如果是 C++, 則為 #include <cstring> 接著, 就讓我們來一個個介紹他們吧! 1

2 首先要介紹的是 strlen, 他的功能就是計算一個字串的長度 用法如下 : strlen() 計算字串長度 [ 格式 ] strlen( 字串 ); 計算字串長度, 回傳值為 int 型態, 故可宣告 int 變數儲存 27 char str[]= { Hi, how are you? I m fine. }; int n = strlen(str); printf( %d\n, n); 接著介紹 strcat,cat 是來自 concatenate, 不過大部分的人都會暱稱這函數為字串貓, 其用法如下 : strcat() 將字串 2 接到字串 1 後 [ 格式 ] strcat( 字串 1, 字串 2); 字串 1 必為字元陣列 ( 字串 ), 字串 2 可為字串常數 ( 即一般用 括住的文字 ), 亦可為字元陣列 使用的時候必須注意字串 1 是否有足夠的空間, 如果沒有可能會造成 segmentation fault, 也就是常見的記憶體錯誤 另外,strcat() 函數執行時會從頭開始掃過整個字串, 故重複做與長字串不適合用此函數, 請用一般方法逐字串接 char str[100]= { Hi, how are you? }; strcat(str, I m fine. ); printf( %s\n, str); Hi, how are you?i m fine. 2

3 然後是 strcmp, 顧名思義就是 str 的 compare 函數, 可用來比較兩字串是否相等, 用法如下 : strcmp() 比較兩個字串之 ASCII 碼排列順序 [ 格式 ] strcmp( 字串 1, 字串 2); 比較字串 1 與字串 2 之 ASCII 碼排列順序, 從頭逐漸比較, 若相同就比第二個, 直到其中一個字串的尾部 其回傳值如下 : 字串 1 < 字串 2 回傳 <0 的值 字串 1 == 字串 2 回傳 0 字串 1 > 字串 2 回傳 >0 的值 註 : 這裡的字串 1 與字串 2 亦可為字串常數 printf( %d\n, strcmp( hi, Hi )); printf( %d\n, strcmp( Hi, Hi )); printf( %d\n, strcmp( a, b )); 再來是 strcpy, 也就是把 str copy 一份的函數, 其用法如下 : strcpy() 將字串 2 複製到字串 1 [ 格式 ] strcpy( 字串 1, 字串 2); 將字串 2 內的文字內容複製至字串 1( 取代字串 1 原有內容 ) 註 : 字串 1 必為字元陣列 ( 字串 ), 字串 2 可為字串常數 ( 即一般用 括住的文字 ), 亦可為字元陣列 Hello char str[100]; strcpy(str, Hello ); printf( %s\n, str); 3

4 最後一個成員是 strtok,tok 指的是 token, 指的是字串中一小段一小段的東西 用法如下 : strtok() 以區隔字串裡的字元區格被切字串 [ 格式 ] strtok( 被切字串, 區隔字串 ); 使用後方區隔字串裡的字元切割字串, 區隔字串內字元的排列順序與切格順序無關, 切下來的字串中區隔字元則會被 \0 取代 例如 : char str[]= { Hi, how are you? I m fine. }; strtok(str,?,. ); puts(str); 空白字元 Hi 若是要繼續往下切, 則必須改成 char str[]= { Hi, how are you? I m fine. }; char *p; strtok(str,?,. ); p = strtok(null,?,. ); puts(p); how 註記 : 上處所使用之 *p 為指標, 若是不清楚指標概念, 亦可使用 strcpy() 將之複製到另一個字元陣列裡 例如 : how char str[]= { Hi, how are you? I m fine. }; char str2[10]; strtok(str,?,. ); strcpy(str2, strtok(null,?,. )); puts(str2); 4

5 printf() 和 scanf(): 格式化輸入輸出 printf 和 scanf 是我們最熟悉的兩個函數, 但, 你真的夠了解他們嗎? 來看看吧! printf() 基本輸出 [ 格式 ] printf( 格式, 對應變數 ); 格式對應的是要輸出的樣式, 如有變數要使用變數對照的格式 : int %d long long %lld float %f char %c double %lf char 陣列 %s unsigned int %u 16 進位整數 %x/%x 在整數的部份, 我們會使用 %[ 所佔格數 ]d 這樣的格式使得整個數字所佔隔數靠右固定, 不足的部份會自動補空 例如 :45 在 [%5d]: [ 45] 如果使用 [%05d], 那麼空格的部份就會補 0, 變成 : [00045] 在浮點數的部份, 一般我們會使用像 %[ 所佔格數 ( 含小數 )].[ 小數點後幾位 ] 這樣的格式來取小數點後幾位, 前面的部份則是向右對齊, 不足補空, 總位數超過則直接印出 例如 : 在 [%6.3lf] 的格式下印出來長這樣 : [ 5.335] 在字串的部份, 則是有 (1)%-[ 格數 ] 和 (2)%.[ 格數 ] 兩種形式前者是靠左對齊佔指定格數, 字數不足則補空, 超過則全部印出後者是只印出指定格數, 字數不足則全部印出不補空 (1) char a[] = {"Hello, how are you?"}; printf("[%-28s]\n", a); 執行結果 : [Hello, how are you? ] (2) char a[] = {"Hello, how are you?"}; printf("[%.8s]\n", a); 執行結果 : [Hello, h] 另外, 上述用法所輸入的任何數字, 可用 * 代替, 並在逗號後方指定 例如 : 5

6 char a[] = {"Hello, how are you?"}; int s = 7; double c = ; printf("[%.*s][%.*lf]\n", s, a, s, c); [Hello, ][ ] [ 補充 ] 如需在 DevC++ 使用 long long 型態, 請使用 %I64d 有些特殊格式像是 %g 是給浮點數用的, 不會輸出多餘的零, 太大會換成科學記號 ;%e/%e 是直接輸出成科學記號, 兩者差別在 e 的大小寫 例如 : double a = ; printf("%g\t%e\n", a, a); 執行結果 : e-001 其他還有一些特殊的字元如下 : \n 換行 \a 嗶音 \ 號 %% % 號 \t 跳格 (tab) \b 倒退一格 \ 號 \\ \ 號 scanf() 基本讀入 [ 格式 ] scanf( 格式, 對應變數 ); 格式對應的是要輸出的樣式, 如有變數要使用變數對照的格式 : int %d long long %lld float %f char %c double %lf char 陣列 %s 除了 %s 之外的對應變數, 前方皆應加上一個 & 輸入中若含有空格 ( ), 或是換行 ( \n ), 皆視為一個部份 ( 一個對應變數 ) 已輸入結束 ( 故若字串中有空白字元請用 gets()) 另外要注意的是,scanf() 讀字串不管有多少連續空白 換行都會一次跳過, 且在讀取變數時, 若沒有輸入任何東西便按換行或空白它會忽略而繼續讀取 同樣地,scanf() 裡的格式也可以加上數字, 如此一來 scanf 只會讀取格式限定的資料, 例如 : char str[100]; scanf( %5s, str); /* 接著我們輸入 10 個 a */ printf("%s\n", str); 執行結果 : aaaaa 6

7 sprintf() 和 sscanf(): 格式化輸入輸出到字串 sprintf()/sscanf() 跟 printf()/scanf() 基本上是完全一樣的, 差別只在後者輸出到螢幕上 / 從鍵盤讀入, 前者則是輸出到字串中 / 從字串讀入 我們可以把這類函數想像成有一個管子做為中介, 只差在管子的另外一端放的是什麼, 如右圖所示, sscanf() 將字串裡的資料依後面格式輸入 [ 格式 ] sscanf( 字串, 格式, 對應變數 ); 類似 scanf(), 唯一的不同在於並非給使用者輸入, 而是把字串中的資料仿照一般輸入使用 scanf() 方式存入變數 例如 : char str[]= { }; int a, b; double c; sscanf(str, %d %d %lf, &a, &b, &c); printf( %d %d %.1lf\n, a, b, c); sprintf() 將後面資料輸入字串 [ 格式 ] sprintf( 字串, 格式, 對應變數 ); 類似 printf(), 唯一的不同是並非在螢幕上印出, 而是將印出的東西當成字串存入指定字串中, 例如 : char str[30]; int a = 4, b = 3; double c = 0.84; sprintf(str, "%d %d %.1lf", a, b, c); puts(str); 7

8 gets()/puts()/getchar()/putchar(): 字元 / 字串專用函數 scanf()/printf() 系列可以處理字元 / 字串以外的格式化輸入輸出, 但在處理字串時常常不需要特殊格式, 只需要把字串直接讀入 / 輸出即可, 因此 C 裡面也提供了 專用的函數, 就讓我們一個個介紹他吧! gets() 字串讀入 [ 格式 ] gets( 字串 ); 小知識 : 頻繁地呼叫輸入輸出函數會降低程式的效率, 因此若能用字串一次輸入輸出, 就不要使用字元輸入輸出 讀入一個字串存入指定的字串中, 要注意的是,gets() 常常會讀到上方 scanf() 輸入時所讀入的換行字元, 故須在上方先吸收掉該換行字元 ( 若上方有 scanf() 可以在 gets() 前加上 getchar(); 一行即可 ) 另外,gets() 之結束固定為換行字元, 空白視為字串的一部分, 且換行字元並不會被儲存 且 gets() 碰到一次換行停一次, 即使是連續的換行也會讀成空字串 puts() 字串印出 [ 格式 ] puts( 字串 ); 印出指定字串並換行 除字元陣列外也可以使用如右格式 :puts( Hello ); getchar() 字元讀入 [ 格式 ] getchar(); 單行指令即可讀入, 讀入的東西會放入緩衝區, 若需儲存, 則可宣告字元變數, 執行 : 字元變數 = getchar(); 此函數可用來讀取任何字元, 包括換行字元 \n 與空白字元 putchar() 字元印出 [ 格式 ] putchar( 字元 ); 印出指定字元 例如 : 印出結果為 : a putchar( a ); 8

9 memset(): 填滿函數 memset() 將陣列特定格數填入相同的字 [ 格式 ] memset( 陣列名, 填入字, 填入格數 ) 將一個字元陣列填入相同的字, 亦可以填入二維陣列 填入格數的單位是 bytes, 故最好搭配 sizeof() 來使用 例如 : char p[12]; memset(p, '*', sizeof(p)); p[11] = '\0'; puts(p); *********** ( 註 : 字串結束一定要有結束字元 \0, 不然會有亂碼 ) 另外, 此函數也可用來填 int 陣列 ( 一維二維皆可 ), 然而只能用來填數字 0&-1 ( 其餘的會出錯, 因為它是每一個 byte 都會填一次, 所以 int 的 4bytes 它會填四次, 就會變成很大的數字了 ) 例如 : int n[2][2], i, j; memset(n, 0, sizeof(n)); for(i=0; i<2; i++){ for(j=0; j<2; j++) printf("%d", n[i][j]); printf("\n"); } printf("\n"); * 這個函數可用於許多需全部歸零的陣列 9

C/C++基礎程式設計班

C/C++基礎程式設計班 C/C++ 基礎程式設計 字元與字串 講師 : 張傑帆 CSIE, NTU 人的出身並不重要, 你拿時間來做什麼才重要 It s not who you were at birth that matters, but what you do with the time you are given.-steve Jobs 課程大綱 字元 字串 作業 字元 在電腦的世界裡, 所有的一切都是以 0 與 1

More information

C/C++基礎程式設計班

C/C++基礎程式設計班 C/C++ 基礎程式設計 字元與字串 講師 : 張傑帆 CSIE, NTU 人的出身並不重要, 你拿時間來做什麼才重要 It s not who you were at birth that matters, but what you do with the time you are given.-steve Jobs 課程大綱 字元 字串 作業 字元 在電腦的世界裡, 所有的一切都是以 0 與 1

More information

C 語言—陣列及字串

C 語言—陣列及字串 10/16 系程主講人 : 荊輔翔 概論 陣列 陣列是一個具有索引 (index) 性質的連續資料儲存空間集合 陣列中每一個資料儲存空間稱之為陣列元素 (array element); 它們都具有相同的資料名稱 資料型態 及空間大小 ; 但存取它們時則須藉由索引 ( 或稱註標 ) 來區別辨識 索引代表資料在陣列中的相對位址 ( 其計數由 0 開始, 其餘累加類推 ), 且須由中括號 [ ] 涵蓋之

More information

新版 明解C言語入門編

新版 明解C言語入門編 328, 4, 110, 189, 103, 11... 318. 274 6 ; 10 ; 5? 48 & & 228! 61!= 42 ^= 66 _ 82 /= 66 /* 3 / 19 ~ 164 OR 53 OR 164 = 66 ( ) 115 ( ) 31 ^ OR 164 [] 89, 241 [] 324 + + 4, 19, 241 + + 22 ++ 67 ++ 73 += 66

More information

C/C++ - 字符串与字符串函数

C/C++ - 字符串与字符串函数 C/C++ Table of contents 1. 2. 3. 4. 1 char C 2 char greeting [50] = " How " " are " " you?"; char greeting [50] = " How are you?"; 3 printf ("\" Ready, go!\" exclaimed John."); " Ready, go!" exclaimed

More information

新・明解C言語入門編『索引』

新・明解C言語入門編『索引』 !... 75!=... 48 "... 234 " "... 9, 84, 240 #define... 118, 213 #include... 148 %... 23 %... 23, 24 %%... 23 %d... 4 %f... 29 %ld... 177 %lf... 31 %lu... 177 %o... 196 %p... 262 %s... 242, 244 %u... 177

More information

untitled

untitled 串 串 例 : char ch= a ; char str[]= Hello ; 串 列 ch=getchar(); scanf( %c,&ch); 串 gets(str) scanf( %s,str); 8-1 數 ASCII 例 : char ch= A ; printf( %d,ch); // 65 A ascii =0x41 printf( %c,ch); // A 例 : char ch;

More information

新・解きながら学ぶC言語

新・解きながら学ぶC言語 330!... 67!=... 42 "... 215 " "... 6, 77, 222 #define... 114, 194 #include... 145 %... 21 %... 21 %%... 21 %f... 26 %ld... 162 %lf... 26 %lu... 162 %o... 180 %p... 248 %s... 223, 224 %u... 162 %x... 180

More information

Microsoft PowerPoint - C_Structure.ppt

Microsoft PowerPoint - C_Structure.ppt 結構與其他資料型態 Janet Huang 5-1 結構的宣告 struct 結構名稱 struct 結構名稱變數 1, 變數 2,, 變數 m; struct 結構名稱 變數 1, 變數 2,, 變數 m; student; student; 5-2 1 結構變數初值的設定 struct 結構名稱 struct 結構名稱變數 = 初值 1, 初值 2,, 初值 n student="janet","1350901",100,95

More information

CC213

CC213 : (Ken-Yi Lee), E-mail: feis.tw@gmail.com 177 [P179] (1) - [P181] [P182] (2) - for [P183] (3) - switch [P184] [P187] [P189] [P194] 178 [ ]; : : int var; : int var[3]; var 2293620 var[0] var[1] 2293620

More information

CC213

CC213 : (Ken-Yi Lee), E-mail: feis.tw@gmail.com 49 [P.51] C/C++ [P.52] [P.53] [P.55] (int) [P.57] (float/double) [P.58] printf scanf [P.59] [P.61] ( / ) [P.62] (char) [P.65] : +-*/% [P.67] : = [P.68] : ,

More information

C

C C 2017 3 14 1. 2. 3. 4. 2/95 C 1. 3/95 C I 1 // talkback.c: 2 #include 3 #include 4 #define DENSITY 62.4 5 int main(void) 6 { 7 float weight, volume; 8 int size; 9 unsigned long letters;

More information

Microsoft PowerPoint - chap3

Microsoft PowerPoint - chap3 第三章基本輸出與輸入的方法 資訊科技系 林偉川 本章簡介 如何從鍵盤輸入資料以及從螢幕輸出結果, 是寫程式一個很基本的技巧, 因為這也是使用者與電腦交談的重要橋樑 在 C 語言函式庫中有不少輸出 / 入相關函式, 不過較常用到的也只有其中幾個 從螢幕輸出類 : 由鍵盤輸入類 : 2 1 從螢幕輸出類 printf(): 函數名稱取 print 以及 format 兩個字組成 此函式會將我們指定的字串以指定的格式輸出在螢幕上

More information

C/C++程序设计 - 字符串与格式化输入/输出

C/C++程序设计 - 字符串与格式化输入/输出 C/C++ / Table of contents 1. 2. 3. 4. 1 i # include # include // density of human body : 1. 04 e3 kg / m ^3 # define DENSITY 1. 04 e3 int main ( void ) { float weight, volume ; int

More information

C/C++ - 文件IO

C/C++ - 文件IO C/C++ IO Table of contents 1. 2. 3. 4. 1 C ASCII ASCII ASCII 2 10000 00100111 00010000 31H, 30H, 30H, 30H, 30H 1, 0, 0, 0, 0 ASCII 3 4 5 UNIX ANSI C 5 FILE FILE 6 stdio.h typedef struct { int level ;

More information

Microsoft Word - ACL chapter02-5ed.docx

Microsoft Word - ACL chapter02-5ed.docx 第 2 章神奇的質數 2.1.1 什麼是質數 1 1 1 打下好基礎 - 程式設計必修的數學思維與邏輯訓練 1 1 0 10 2 3 5 7 4 6 8 9 10 4 10000 1229 1000 168 2 3 5 7 11 13 17 19 23 29 31 37 41 43 47 53 59 61 67 71 73 79 83 89 97 101 103 107 109 113 127 131

More information

CHAPTER VC#

CHAPTER VC# 1. 2. 3. 4. CHAPTER 2-1 2-2 2-3 2-4 VC# 2-5 2-6 2-7 2-8 Visual C# 2008 2-1 Visual C# 0~100 (-32768~+32767) 2 4 VC# (Overflow) 2-1 2-2 2-1 2-1.1 2-1 1 10 10!(1 10) 2-3 Visual C# 2008 10! 32767 short( )

More information

CC213

CC213 : (Ken-Yi Lee), E-mail: feis.tw@gmail.com 9 [P.11] : Dev C++ [P.12] : http://c.feis.tw [P.13] [P.14] [P.15] [P.17] [P.23] Dev C++ [P.24] [P.27] [P.34] C / C++ [P.35] 10 C / C++ C C++ C C++ C++ C ( ) C++

More information

Microsoft PowerPoint - CH02 Introduction to C++ Programming_輸入與輸出 [相容模式]

Microsoft PowerPoint - CH02 Introduction to C++ Programming_輸入與輸出 [相容模式] Ch2. Introduction to C++ Programming 輸入與輸出 標準 I/O 課程名稱 : 程式設計 Computer Programming 班級 : 資管一 Freshman, ISMS 任課教師 : 謝明哲 Hsieh, Ming-Che, Miller 單位職稱 : 台東大學資管系副教授 Associate Professor, ISMS, NTTU 電子郵件 :hmz@nttu.edu.tw

More information

Microsoft PowerPoint - Class4.pptx

Microsoft PowerPoint - Class4.pptx C++ 程式初探 IV 2015 暑期 ver. 1.0.2 C++ 程式 IV 大綱 1. 時間函式 2. 格式化輸出 3. 遞迴函式 (recursion) 4. 字串 5. 字串轉型 2 補充語法 時間計算 引入標頭檔 #include #include #include #include using namespace

More information

C/C++ 语言 - 循环

C/C++ 语言 - 循环 C/C++ Table of contents 7. 1. 2. while 3. 4. 5. for 6. 8. (do while) 9. 10. (nested loop) 11. 12. 13. 1 // summing.c: # include int main ( void ) { long num ; long sum = 0L; int status ; printf

More information

Strings

Strings Strings Cheng-Chin Chiang Strings Strings 一串儲存在連續記憶體之字元串 表示法 : 以雙引號圍起 This is a book, I love programming, 12234 字串須有一結束字元 \0 (NULL) 在字串尾,NULL 在 C++ 內為一個內定常數值 H i t h e r e! \0 An Array Type of Strings

More information

字元意義備註 \n 換行字元 \t Tab \r 迴車鍵 Windows 系統中以 \r\n 代表換行 \ 單引號 \" 雙引號 \0 空字元 用來代表字串的結束 \\ 倒斜線 倒斜線被用做跳脫字元, 因此要用兩個倒斜線表示 表 3.2: 常用特殊字元 ( 二 ) 常用技巧 : 字元判斷在 ASCI

字元意義備註 \n 換行字元 \t Tab \r 迴車鍵 Windows 系統中以 \r\n 代表換行 \ 單引號 \ 雙引號 \0 空字元 用來代表字串的結束 \\ 倒斜線 倒斜線被用做跳脫字元, 因此要用兩個倒斜線表示 表 3.2: 常用特殊字元 ( 二 ) 常用技巧 : 字元判斷在 ASCI 第三章 字串處理 第一節 字元與字串 一 字元與 ASCII C++ 中的字元 (Character) char 其實是儲存一個 0 到 255 的整數, 在電腦中有一個符號表, 每個符號都有他各自的編號 輸出字元時, 計算機就會自動將 char 裡面的整數去查符號表, 印出對應符號, 這個表格我們稱為 ASCII 碼 雖然 char 印出來是符號, 但實際上儲存的是整數 ASCII 碼網路上都能查到,

More information

C/C++语言 - C/C++数据

C/C++语言 - C/C++数据 C/C++ C/C++ Table of contents 1. 2. 3. 4. char 5. 1 C = 5 (F 32). 9 F C 2 1 // fal2cel. c: Convert Fah temperature to Cel temperature 2 # include < stdio.h> 3 int main ( void ) 4 { 5 float fah, cel ;

More information

Ps22Pdf

Ps22Pdf ( 98 ) C ( ) ( )158 1998 C : C C C,,, C,, : C ( ) : : (, 100084) : : : 7871092 1/ 16 :18 25 :415 : 2000 3 1 2000 3 1 : ISBN 7 302 01166 4/ T P432 : 00016000 : 22 00 ( 98 ) 20 90,,, ;,,, 1994, 1998, 160,

More information

0 0 = 1 0 = 0 1 = = 1 1 = 0 0 = 1

0 0 = 1 0 = 0 1 = = 1 1 = 0 0 = 1 0 0 = 1 0 = 0 1 = 0 1 1 = 1 1 = 0 0 = 1 : = {0, 1} : 3 (,, ) = + (,, ) = + + (, ) = + (,,, ) = ( + )( + ) + ( + )( + ) + = + = = + + = + = ( + ) + = + ( + ) () = () ( + ) = + + = ( + )( + ) + = = + 0

More information

C Formatted Input/Output

C Formatted Input/Output 表示結果是解決任何問題中很重要的一部分 本章將會深入介紹 scanf 和 printf 的格式化功能 這兩個函式分別可以用來從標準輸入資料流 (standard input stream) 輸入資料, 以及從標準輸出資料流 (standard output stream) 輸出資料 第 8 章曾討論過其他四個使用標準輸入和標準輸出的函式 -gets puts getchar 和 putchar 呼叫上述的函式時,

More information

碩命題橫式

碩命題橫式 一 解釋名詞 :(50%) 1. Two s complement of an integer in binary 2. Arithmetic right shift of a signed integer 3. Pipelining in instruction execution 4. Highest and lowest layers in the TCP/IP protocol suite

More information

C C

C C C C 2017 3 8 1. 2. 3. 4. char 5. 2/101 C 1. 3/101 C C = 5 (F 32). 9 F C 4/101 C 1 // fal2cel.c: Convert Fah temperature to Cel temperature 2 #include 3 int main(void) 4 { 5 float fah, cel; 6 printf("please

More information

!194 課程 大綱 陣列介紹 [P.195] 陣列的使 用 [1] - 多個同型變數 [P.196] 陣列的初始化 [P.198] 陣列的使 用 [2] - 循序存取 [P.199] 陣列的使 用 [3] - 隨機存取 [P.200] 陣列的複製 [P.203] 在函式間傳送陣列 [P.204]

!194 課程 大綱 陣列介紹 [P.195] 陣列的使 用 [1] - 多個同型變數 [P.196] 陣列的初始化 [P.198] 陣列的使 用 [2] - 循序存取 [P.199] 陣列的使 用 [3] - 隨機存取 [P.200] 陣列的複製 [P.203] 在函式間傳送陣列 [P.204] !193 第六講 陣列與字串 講師 : 李根逸 (Ken-Yi Lee), E-mail: feis.tw@gmail.com !194 課程 大綱 陣列介紹 [P.195] 陣列的使 用 [1] - 多個同型變數 [P.196] 陣列的初始化 [P.198] 陣列的使 用 [2] - 循序存取 [P.199] 陣列的使 用 [3] - 隨機存取 [P.200] 陣列的複製 [P.203] 在函式間傳送陣列

More information

Microsoft PowerPoint - 20-string-s.pptx

Microsoft PowerPoint - 20-string-s.pptx String 1 String/ 1.: char s1[10]; char *s2; char s3[] = "Chan Tai Man"; char s4[20] = "Chan Siu Ming"; char s5[]={'h','e','l','l','o','\0'; 0 1 2 3 4 5 6 7 8 9 10 11 12 s3 C h a n T a i \0 M a n \0 printf

More information

Microsoft Word - Chap02.doc

Microsoft Word - Chap02.doc 標準的輸入與輸出 2-1 字元的輸出與輸入 2-2 格式化的輸出與輸入 2-3 摘要 2-4 關鍵字 2-5 問題演練 2-6 程式實作 i 上 C 語言 這一章我們將談論標準的輸入與輸出 (standard input/output) 所謂標準的輸入與輸出, 其作用端分別為鍵盤和螢幕 除了標準的輸入與輸出外,C 語言還提供檔案的輸入與輸出, 其作用端皆為檔案, 此部份留在第十一章 : 檔案, 再加以解說

More information

nooog

nooog C : : : , C C,,, C, C,, C ( ), ( ) C,,, ;,, ; C,,, ;, ;, ;, ;,,,, ;,,, ; : 1 9, 2 3, 4, 5, 6 10 11, 7 8, 12 13,,,,, 2008 1 1 (1 ) 1.1 (1 ) 1.1.1 ( ) 1.1.2 ( ) 1.1.3 ( ) 1.1.4 ( ) 1.1.5 ( ) 1.2 ( ) 1.2.1

More information

Microsoft PowerPoint - 08_陣列與函式.pptx

Microsoft PowerPoint - 08_陣列與函式.pptx 1 2 Outline 二維與多維陣列 Lecture 08 多維陣列函式 標準函式庫 函式簡介 一維陣列 二維陣列與多維陣列 陣列為多個同一型態變數之組合 int a[10]; 可存放 10 個整數資料的陣列, 可視為 10 個變數排成一個隊伍, 並給每一個變數一個編號, 自 0 號開始 至 9 號為止 a[0], a[1], a[2], a[],, a[9] 5 6 二維陣列的宣告 陣列為多個同一型態變數之組合

More information

Slide 1

Slide 1 Java 程式設計入門 講師 : 陳昭源 CSIE, NTU August 3, 2005 Outline Character & String Exercise August 3, 2005 Page 2 Character & String 處理字元資料時,Java 有三個類別可供使用 Character: 處理單一字元 String: 處理內容不改變 (immutable) 的字串 StringBuffer:

More information

Microsoft Word C-A卷.docx

Microsoft Word C-A卷.docx 100 學年度資訊學院程式設計會考 (C) 101/05/5 題組 :A 選擇題及填充題, 請在答案卡上作答, 實作題請填寫於答案卷上, 並於實作題上方填寫班級 姓名 學號 一 選擇題題目 1. unsigned char 的最大值 (a) 127 (b) 255 (c) 512 (d) 1023 2. 下列何者為正確的變數名稱? (a) Android (b) C++ (c) I Phone (d)

More information

C/C++ - 函数

C/C++ - 函数 C/C++ Table of contents 1. 2. 3. & 4. 5. 1 2 3 # include # define SIZE 50 int main ( void ) { float list [ SIZE ]; readlist (list, SIZE ); sort (list, SIZE ); average (list, SIZE ); bargragh

More information

untitled

untitled Introduction to Programming ( 數 ) Lecture 3 Spring 2005 March 4, 2005 Lecture 2 Outline 數 料 If if 狀 if 2 (Standard Output, stdout): 料. ((Standard Input, stdin): 料. 類 數 數 數 說 printf 見 數 puts 串 數 putchar

More information

Ps22Pdf

Ps22Pdf C ( CIP) C /. :, 2001. 7 21 ISBN 7-5624 -2355-5. C........ C. TP312 CIP ( 2001 ) 034496 C * * : 7871092 1 /16 : 14. 25 : 356 20017 1 20017 1 : 1 6 000 ISBN 7-5624-2355-5 / TP311 : 21. 00 C, C,,,, C,, (

More information

C 1

C 1 C homepage: xpzhangme 2018 5 30 C 1 C min(x, y) double C // min c # include # include double min ( double x, double y); int main ( int argc, char * argv []) { double x, y; if( argc!=

More information

!249 第 八講 進階指標 講師 : 李根逸 (Ken-Yi Lee),

!249 第 八講 進階指標 講師 : 李根逸 (Ken-Yi Lee), 249 第 八講 進階指標 講師 : 李根逸 (Ken-Yi Lee), E-mail: feis.tw@gmail.com 250 課程 大綱 陣列的複製 [P.252] 字串的特殊性 [P.255] const 修飾字 [P.256] 指標陣列 [P.257] 字串陣列 [P.258] 指標與 二維陣列 [P.260] 動態記憶體配置與釋放 C 語 言中動態記憶體的配置 [P.266] C 語

More information

C/C++ - 结构体、共用体、枚举体

C/C++ - 结构体、共用体、枚举体 C/C++ Table of contents 1. 2. 3. 4. 5. 6. 7. 8. 1 C C (struct) C 2 C C (struct) C 2 i // book.c: # include < stdio.h> # define MAX_ TITLE 41 # define MAX_ AUTHOR 31 struct book { char title [ MAX_ TITLE

More information

内 容 提 要 指 针 持 久 动 态 内 存 分 配 字 符 串 ( 字 符 数 组 ) 2

内 容 提 要 指 针 持 久 动 态 内 存 分 配 字 符 串 ( 字 符 数 组 ) 2 第 六 讲 指 针 与 字 符 串 1 内 容 提 要 指 针 持 久 动 态 内 存 分 配 字 符 串 ( 字 符 数 组 ) 2 指 针 什 么 是 指 针 指 针 的 定 义 与 运 算 指 针 与 一 维 数 组 指 针 数 组 行 指 针 与 二 维 数 组 指 针 与 引 用 指 针 与 函 数 3 指 针 定 义 什 么 是 指 针 指 针 变 量, 简 称 指 针, 用 来 存 放

More information

2013 C 1 # include <stdio.h> 2 int main ( void ) 3 { 4 int cases, a, b, i; 5 scanf ("%d", & cases ); 6 for (i = 0;i < cases ;i ++) 7 { 8 scanf ("%d %d

2013 C 1 # include <stdio.h> 2 int main ( void ) 3 { 4 int cases, a, b, i; 5 scanf (%d, & cases ); 6 for (i = 0;i < cases ;i ++) 7 { 8 scanf (%d %d 2013 18 ( ) 1. C pa.c, pb.c, 2. C++ pa.cpp, pb.cpp, Compilation Error cin scanf Time Limit Exceeded 1: A 5 B 5 C 5 D 5 E 5 F 5 1 2013 C 1 # include 2 int main ( void ) 3 { 4 int cases, a, b,

More information

C/C++基礎程式設計班

C/C++基礎程式設計班 C/C++ 基礎程式設計 C++: 物件的使用 參考 重載函式 成就別人認為不可能的事 Do what nobody else considered possible. -Steve Jobs 講師 : 張傑帆 CSIE NTU C++ 相較於 C 的特色 向下相容 在 C 語言中, 我們學了許多程式語法, 所有學過的東西, 在 C++ 中都可以使用 高階的程式描述方式 更利於用來開發大型專案, 讓程式設計師在分工時更能快速的開發程式,

More information

Microsoft Word - 把时间当作朋友(2011第3版)3.0.b.06.doc

Microsoft Word - 把时间当作朋友(2011第3版)3.0.b.06.doc 2 5 8 11 0 13 1. 13 2. 15 3. 18 1 23 1. 23 2. 26 3. 28 2 36 1. 36 2. 39 3. 42 4. 44 5. 49 6. 51 3 57 1. 57 2. 60 3. 64 4. 66 5. 70 6. 75 7. 83 8. 85 9. 88 10. 98 11. 103 12. 108 13. 112 4 115 1. 115 2.

More information

( CIP) /. :, ( ) ISBN TP CIP ( 2005) : : : : * : : 174 ( A ) : : ( 023) : ( 023)

( CIP) /. :, ( ) ISBN TP CIP ( 2005) : : : : * : : 174 ( A ) : : ( 023) : ( 023) ( CIP) /. :, 2005. 2 ( ) ISBN 7-5624-3339-9.......... TP311. 1 CIP ( 2005) 011794 : : : : * : : 174 ( A ) :400030 : ( 023) 65102378 65105781 : ( 023) 65103686 65105565 : http: / /www. cqup. com. cn : fxk@cqup.

More information

Microsoft Word - CH09

Microsoft Word - CH09 字串 子曰 : 質勝文則野, 文勝質則史 文質彬彬, 然後君子 論語.雍也第六 和 是資料的兩大基礎元素 固然可以視為由 字元 構成的一維陣列, 標準的 C++ 提供了方便的程式庫, 讓我們能將 字串 視為獨立的單元, 以進行各種存取和剪接的處理 本章將探討處理字串的相關技術 9.1 字串的基本概念 9.2 字串的輸入與輸出 9.3 字串的處理 9.4 字串的指標陣列 9.5 字串處理在編碼上的應用

More information

理性真的普遍嗎 注意力的爭奪戰 科學發展 2012 年 12 月,480 期 13

理性真的普遍嗎 注意力的爭奪戰 科學發展 2012 年 12 月,480 期 13 12 科學發展 2012 年 12 月,480 期 你可能不知道的媒體影響 劉正山若用 選戰 的角度來看選舉和參與選舉, 你大腦裡情感的作用一定大過理性的作用, 便會很習慣地拿各種媒體或別人的觀點來使自己的選擇合理化 2012 理性真的普遍嗎 注意力的爭奪戰 科學發展 2012 年 12 月,480 期 13 14 科學發展 2012 年 12 月,480 期 agendasetting 報紙和網路新聞的頭版空間有限,

More information

Microsoft PowerPoint - C-Ch10.ppt

Microsoft PowerPoint - C-Ch10.ppt 了解陣列元素的位址 陣列 指標的應用 10-1 陣列與指標的關係 可以使用位址運算子 (&) 來查詢陣列中各個元素的位址 &test[0] 這行表示陣列最前面元素的位址 &test[1] 這行表示陣列第二個元素的位址 關於陣列名稱的機制 陣列名稱可以表示陣列最前面元素的位址 #include int main(void) int test[5] = 80,60,55,22,75;

More information

1 2005 9 2005,,,,,,,,,, ( http: \ \ www. ncre. cn,, ) 30,,,,,,,, C : C : : 19 : 100081 : : 7871092 1 /16 : 8. 75 : 96 : 2005 11 1 : 2005 11 1 : ISBN 7

1 2005 9 2005,,,,,,,,,, ( http: \ \ www. ncre. cn,, ) 30,,,,,,,, C : C : : 19 : 100081 : : 7871092 1 /16 : 8. 75 : 96 : 2005 11 1 : 2005 11 1 : ISBN 7 1 2005 9 2005,,,,,,,,,, ( http: \ \ www. ncre. cn,, ) 30,,,,,,,, C : C : : 19 : 100081 : : 7871092 1 /16 : 8. 75 : 96 : 2005 11 1 : 2005 11 1 : ISBN 7-80097 - 564-9 /TP 8 : 10. 00 ,,,, 1994 NCRE,,, ( ),,,,,

More information

プログラムの設計と実現II

プログラムの設計と実現II UNIX C ls mkdir man http://www.tj.chiba-u.jp/lecture/prog2/ Ctrl+x, Ctrl+s ( )..[4]% gcc Wall o hoge hoge.c..[5]%./hoge 1 : 1 2 : 2 3 : 3 4 : 0 6..[6]% (! )..[4]% gcc Wall o hoge hoge.c..[5]%!g gcc Wall

More information

untitled

untitled CHAPTER 02 2 CHAPTER 2-1 2-4 2-2 2-5 2-3 2-6 2-1 2-1-1 2-2 02 int A[3] = {10, 20, 30; A[0] 10 A[1] 20 A[2] 30 int *pa[3], A[3]; C 3 pa pa[0]pa[1]pa[2] 3 A A[0]A[1]A[2] 3 A A[0] A + i A[i] A + i &A[i]*(A

More information

, 即 使 是 在 昏 暗 的 灯 光 下, 她 仍 然 可 以 那 么 耀 眼 我 没 有 地 方 去, 你 会 带 着 我 么 杜 晗 像 是 在 嘲 笑 一 般, 嘴 角 的 一 抹 冷 笑 有 着 不 适 合 这 个 年 龄 的 冷 酷 和 无 情, 看 着 江 华 的 眼 神 毫 无 温

, 即 使 是 在 昏 暗 的 灯 光 下, 她 仍 然 可 以 那 么 耀 眼 我 没 有 地 方 去, 你 会 带 着 我 么 杜 晗 像 是 在 嘲 笑 一 般, 嘴 角 的 一 抹 冷 笑 有 着 不 适 合 这 个 年 龄 的 冷 酷 和 无 情, 看 着 江 华 的 眼 神 毫 无 温 爱 情 飞 过 苍 凉 / 作 者 :18758265241 1 红 色 格 子 的 旅 行 箱, 在 湿 漉 漉 地 上 发 出 刺 啦 刺 啦 的 声 音, 那 么 刺 耳, 就 像 是 此 刻 杜 晗 的 里 一 样, 烦 躁 而 不 安 就 这 样 走 出 来 了,18 年 禁 锢 自 己 的 地 方 就 在 身 后, 杜 晗 手 指 关 节 泛 白, 紧 紧 地 拉 着 旅 行 箱, 走

More information

本章內容 2-1 陣列及陣列位址的計算一維陣列位址計算多維陣列位址計算 2-2 一維陣列的基本運算讀取 寫入 複製 輸出 插入資料 刪除 2-3 二維陣列及矩陣的儲存與運算矩陣輸出 矩陣轉置 矩陣相加 矩陣相乘 2-4 字串 ( 字元陣列 ) 計算字串長度 字串複製 字串比較 子字串擷取 2

本章內容 2-1 陣列及陣列位址的計算一維陣列位址計算多維陣列位址計算 2-2 一維陣列的基本運算讀取 寫入 複製 輸出 插入資料 刪除 2-3 二維陣列及矩陣的儲存與運算矩陣輸出 矩陣轉置 矩陣相加 矩陣相乘 2-4 字串 ( 字元陣列 ) 計算字串長度 字串複製 字串比較 子字串擷取 2 第二章 Array 版權屬作者所有, 非經作者同意不得用於教學以外用途 1 本章內容 2-1 陣列及陣列位址的計算一維陣列位址計算多維陣列位址計算 2-2 一維陣列的基本運算讀取 寫入 複製 輸出 插入資料 刪除 2-3 二維陣列及矩陣的儲存與運算矩陣輸出 矩陣轉置 矩陣相加 矩陣相乘 2-4 字串 ( 字元陣列 ) 計算字串長度 字串複製 字串比較 子字串擷取 2 2-1 陣列及陣列位址的計算 陣列

More information

新版 明解C++入門編

新版 明解C++入門編 511!... 43, 85!=... 42 "... 118 " "... 337 " "... 8, 290 #... 71 #... 413 #define... 128, 236, 413 #endif... 412 #ifndef... 412 #if... 412 #include... 6, 337 #undef... 413 %... 23, 27 %=... 97 &... 243,

More information

untitled

untitled 不 料 料 例 : ( 料 ) 串 度 8 年 數 串 度 4 串 度 數 數 9- ( ) 利 數 struct { ; ; 數 struct 數 ; 9-2 數 利 數 C struct 數 ; C++ 數 ; struct 省略 9-3 例 ( 料 例 ) struct people{ char name[]; int age; char address[4]; char phone[]; int

More information

C

C C 14 2017 5 31 1. 2. 3. 4. 5. 2/101 C 1. ( ) 4/101 C C ASCII ASCII ASCII 5/101 C 10000 00100111 00010000 ASCII 10000 31H 30H 30H 30H 30H 1 0 0 0 0 0 ASCII 6/101 C 7/101 C ( ) ( ) 8/101 C UNIX ANSI C 9/101

More information

Microsoft Word - AEL 序.doc

Microsoft Word - AEL 序.doc 序 C++ 全方位學習一書入選 100 狀元閱讀書單科學類排名第 15, 也是唯二入選的程式設計類書, 因此筆者決定重新改版, 以便造福更多想學習 C++ 程式設計的學生 C++ 全方位學習第二版保留第一版的編排特色, 而刪除比較不實用的大型程式範例與標準範本程式庫, 然後在各章習題中加入選擇題, 使其更加適合用於技職院校及大學教學 C++ 全方位學習第二版是針對專科與大學教學進度而編寫的, 內容由淺入深

More information

Chapter 3 Camera Raw Step negative clarity +25 ] P / Step 4 0 ( 下一頁 ) Camera Raw Chapter 3 089

Chapter 3 Camera Raw Step negative clarity +25 ] P / Step 4 0 ( 下一頁 ) Camera Raw Chapter 3 089 Photoshop CC Camera Raw Photoshop Camera Raw Step 1 3 1 2 3 SCOTT KELBY Step 2 B Camera Raw 088 Chapter 3 Camera Raw Chapter 3 Camera Raw Step 3-4 -100 negative clarity +25 ] P / -75-50 Step 4 0 ( 下一頁

More information

Learning by debugging

Learning by debugging Learning C by debugging 序言 這本書是我規劃 C 語言學習地圖的第三本 看完第一本的 樂在 C 語言 後, 希望您能在 戰勝 C 語言, 這也是本書取名的考量因素 同時在內容的深度與廣度上也加以擴大, 俾能對 C 有更進一步的了解 第三本是 精通 C/C++ 指標 期使您對 C 語言的核心主題 指標, 能更上一層樓 有人常問我學好程式設計的秘方是什麼, 其實沒有秘方, 只要在碰到有錯誤時

More information

Microsoft Word - part doc

Microsoft Word - part doc 3 指標與陣列 3-1 指標與一維陣列 3-2 指標與二維陣列 3-3 陣列指標 3-4 為什麼 parr 等同於 *parr? 3-5 指向陣列的指標 3-6 多重指標 3-7 命令列引數 3-8 除錯題 3-9 問題演練 3-10 程式實作 32 Part 1 C 程式語言篇 指標其實就是一位址 陣列的名稱, 表示此陣列第一個元素的位址, 所以它也是指標 由此可知, 指標與陣列的關係是很密切的

More information

Microsoft Word - 4.doc

Microsoft Word - 4.doc 緩衝區管理 4.1 概念 : 緩衝區 指標以及位元組順序 4.2 緩衝區管理函數 ANSI C 技術手冊 4.1 概念 : 緩衝區 指標以及位元組順序 為了有效率地使用緩衝區 (buffer) 管理函數, 首先需要熟悉緩衝區 指標和位元組順序的概念 緩衝區 緩衝區是電腦記憶體中一組連續的位元組 緩衝區的內容可以是大多數函數所要處理的 ASCII 字元, 或是數值 如圖 4-1 所示, 緩衝區是藉由指向第一個位元組的指標來存取

More information

C, Win-TC Turbo C,, C, C,,,, C C, : Win-TC C, 23,,, 15,, C Turbo C Win-TC Turbo C,,,, 2005 1 W in -TC 1 Win-TC 1 1. Win-TC 1 2. Win-TC 1 3. Win-TC 1 2 Win-TC 3 1. 3 2. 3 3. 4 4. 4 5. 4 6. 4 7. 5 8. 5 9.

More information

840 提示 Excel - Excel -- Excel (=) Excel ch0.xlsx H5 =D5+E5+F5+G5 (=) = - Excel 00

840 提示 Excel - Excel -- Excel (=) Excel ch0.xlsx H5 =D5+E5+F5+G5 (=) = - Excel 00 Excel - - Excel - -4-5 840 提示 Excel - Excel -- Excel (=) Excel ch0.xlsx H5 =D5+E5+F5+G5 (=) = - Excel 00 ( 0 ) 智慧標籤 相關說明提示 -5 -- Excel 4 5 6 7 8 + - * / % ^ = < >= & 9 0 (:) (,) ( ) Chapter - :,

More information

C 1 # include <stdio.h> 2 int main ( void ) { 4 int cases, i; 5 long long a, b; 6 scanf ("%d", & cases ); 7 for (i = 0;i < cases ;i ++) 8 { 9

C 1 # include <stdio.h> 2 int main ( void ) { 4 int cases, i; 5 long long a, b; 6 scanf (%d, & cases ); 7 for (i = 0;i < cases ;i ++) 8 { 9 201 201 21 ( ) 1. C pa.c, pb.c, 2. C++ pa.cpp, pb.cpp Compilation Error long long cin scanf Time Limit Exceeded 1: A 1 B 1 C 5 D RPG 10 E 10 F 1 G II 1 1 201 201 C 1 # include 2 int main ( void

More information

Microsoft Word - CPE考生使用手冊160524.docx

Microsoft Word - CPE考生使用手冊160524.docx 大 學 程 式 能 力 檢 定 (CPE) 考 生 使 用 手 冊 2016 年 5 月 24 日 這 份 手 冊 提 供 給 參 加 CPE 檢 定 考 試 的 考 生 內 容 包 含 考 試 環 境 的 使 用, 以 及 解 題 時 所 使 用 I/O 的 基 本 知 識 1. 如 欲 報 名 參 加 CPE 考 試, 請 先 於 CPE 網 站 完 成 帳 號 註 冊, 然 後 再 報 名 該

More information

C

C C 2017 4 1 1. 2. while 3. 4. 5. for 6. 2/161 C 7. 8. (do while) 9. 10. (nested loop) 11. 12. 3/161 C 1. I 1 // summing.c: 2 #include 3 int main(void) 4 { 5 long num; 6 long sum = 0L; 7 int status;

More information

Microsoft PowerPoint - ch09_AEL0080.ppt

Microsoft PowerPoint - ch09_AEL0080.ppt 9 字 串 子曰 : 質勝文則野, 文勝質則史 文質彬彬, 然後君子 論語論語.雍也第六雍也第六 標準的 C++ 提供了方便的程式庫, 讓我們能將 字串 視為獨立的單元, 以進行各種存取和剪接的處理 1/36 字串 9.1 9.2 9.3 9.4 9.5 字串的基本概念字串的輸入與輸出字串的處理字串的指標陣列字串處理在編碼上的應用 2/36 字串的基本概念 字串 (string) 是由雙引號 所包括起來的一串文字

More information

Microsoft Word - 投影片ch14

Microsoft Word - 投影片ch14 Java2 JDK5.0 教學手冊第三版洪維恩編著博碩文化出版書號 pg20210 第十四章檔案處理 本章學習目標認識串流學習檔案的開啟與關閉學習如何處理文字檔學習如何處理二進位檔 檔案處理 14-2 14.1 關於串流 串流可分為 輸入串流 (input stream) 與 輸出串流 (output stream) 兩種 下圖說明了串流如何做為檔案處理的橋樑 : stream 資料 input stream

More information

Microsoft PowerPoint - STU_C_Lang_CH13.ppt

Microsoft PowerPoint - STU_C_Lang_CH13.ppt 第 13 章 動態配置記憶體 程式設計與生活 - 使用 C 語言 Shi-Huang Chen Spring 2013 第 13 章 動態配置記憶體 13-1 記憶體配置函式 malloc( ) 13-2 動態配置結構陣列 配置記憶體 預估需求數量的範圍是一項不容易的學問 例 : 大到預估今年國家預算, 小到預估櫥窗裡展示的毛線衣, 需要多少磅毛線才能織成 撰寫程式時, 一樣無法預估程式執行所需的記憶體空間

More information

投影片 1

投影片 1 資料庫管理程式 ( 補充教材 -Part2) 使用 ADO.NET 連結資料庫 ( 自行撰寫程式碼 以實現新增 刪除 修改等功能 ) Private Sub InsertButton_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles InsertButton.Click ' 宣告相關的 Connection

More information

The return of scanf The number of fields successfully converted and assigned int a =1, b =2, c =3; int n = scanf("%d %d %d", &a, &b, &c); printf("%d\n

The return of scanf The number of fields successfully converted and assigned int a =1, b =2, c =3; int n = scanf(%d %d %d, &a, &b, &c); printf(%d\n Introduction to Computer and Program Design Lesson 2 Functions, scanf and EOF James C.C. Cheng Department of Computer Science National Chiao Tung University The return of scanf The number of fields successfully

More information

投影片 1

投影片 1 NCKU Progrmming Contest Trining Course 08/05/09 Jheng-Hung Hong Deprtment of Computer Siene nd Informtion Engineering Ntionl Cheng Kung University Tinn, Tiwn NCKU CSIE Progrmming Contest Trining Course

More information

Microsoft PowerPoint - STU_C_Lang_CH03.ppt

Microsoft PowerPoint - STU_C_Lang_CH03.ppt 第 3 章 基本輸出函式及輸入函式 程式設計與生活 - 使用 C 語言 Shi-Huang Chen Spring 2013 1 第 3 章 基本輸出函式及輸入函式 3-1 資料輸出 3-2 資料輸入 3-3 發現問題 2 資料輸入與資料輸出是任何事件的基本元素 若資料輸入與資料輸出不是同時存在於事件中, 則事件的結果不是千篇一律 ( 因沒有資料輸入, 所以資料輸出就沒有變化 ), 就是不知其目的為何

More information

《C语言程序设计》教材习题参考答案

《C语言程序设计》教材习题参考答案 教材名称 : C 语言程序设计 ( 第 1 版 ) 黄保和 江弋编著清华大学出版社 ISBN: 978-7-302-13599-9, 红色封面答案制作时间 :2011 年 2 月 -5 月一 选择题 1. 以下数组定义中, 错误的是 :C)int a[3]=1,2,3,4; 2. 以下数组定义中, 正确的是 :B) int a[][2]=1,2,3,4; 3. 设有定义 int a[8][10];,

More information

1 Project New Project 1 2 Windows 1 3 N C test Windows uv2 KEIL uvision2 1 2 New Project Ateml AT89C AT89C51 3 KEIL Demo C C File

1 Project New Project 1 2 Windows 1 3 N C test Windows uv2 KEIL uvision2 1 2 New Project Ateml AT89C AT89C51 3 KEIL Demo C C File 51 C 51 51 C C C C C C * 2003-3-30 pnzwzw@163.com C C C C KEIL uvision2 MCS51 PLM C VC++ 51 KEIL51 KEIL51 KEIL51 KEIL 2K DEMO C KEIL KEIL51 P 1 1 1 1-1 - 1 Project New Project 1 2 Windows 1 3 N C test

More information

Python_03

Python_03 Python 程式設計 林奇賦 daky1983@gmail.com Outline u 字串處理 跳脫序列 跳脫序列 意義 \\ 反斜線符號 (\) \' 單引號 (') \" 雙引號 (") \a 響鈴符號 (BEL) \b 空格符號 (BS) \f 換 頁符號 (FF) \n 換 行符號 (LF) \r 返回符號 (CR) \t 水平縮排符號 (TAB) \v 垂直跳格符號 (VT) \ooo

More information

Microsoft Word - 投影片ch03

Microsoft Word - 投影片ch03 Java2 JDK5.0 教學手冊第三版洪維恩編著博碩文化出版書號 pg20210 第三章變數與資料型態 本章學習目標認識變數與常數認識 Java 的基本資料型態學習如何進行資料型態轉換學習如何由鍵盤輸入資料 變數與資料型態 3-2 Java 的資料型態分為 : 與 原始資料型態 (primitive type) 非原始資料型態 (non-primitive type) 原始資料型態包括了整數與浮點數等型態

More information

C/C++ - 字符输入输出和字符确认

C/C++ - 字符输入输出和字符确认 C/C++ Table of contents 1. 2. getchar() putchar() 3. (Buffer) 4. 5. 6. 7. 8. 1 2 3 1 // pseudo code 2 read a character 3 while there is more input 4 increment character count 5 if a line has been read,

More information

《计算概论》课程 第十九讲 C 程序设计语言应用

《计算概论》课程 第十九讲  C 程序设计语言应用 计算概论 A 程序设计部分 字符数组与字符串 李戈 北京大学信息科学技术学院软件研究所 lige@sei.pku.edu.cn 字符数组的定义 #include int main() char a[10] = 'a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j' ; for (int i = 0; i < 10; i++) cout

More information

《C语言程序设计》第2版教材习题参考答案

《C语言程序设计》第2版教材习题参考答案 教材 C 语言程序设计 ( 第 2 版 ) 清华大学出版社, 黄保和, 江弋编著 2011 年 10 月第二版 ISBN:978-7-302-26972-4 售价 :35 元 答案版本 本习题答案为 2012 年 2 月修订版本 一 选择题 1. 设已定义 int a, * p, 下列赋值表达式中正确的是 :C)p = &a A. *p = *a B. p = *a C.p = &a D. *p =

More information

資料結構之C語言重點複習

資料結構之C語言重點複習 鏈結串列自編教材 ( 一 ) 本教材 ( 一 ) 目標問題 : 每次以亂數產生一 [0,1000] 之整數值, 若該值 >100, 則以同方式繼續產生下一亂數值, 若該值

More information

PowerPoint Presentation

PowerPoint Presentation 程序设计 II 第 4 讲字符串处理 计算机学院黄章进 zhuang@ustc.edu.cn 内容 字符串处理函数 例题 :Caesar 密码 2767 例题 : 单词排序 例题 : 子串 2744 例题 :All in All 2976 2 字符串 每个字符串是一个特殊的数组, 满足两个条件 元素的类型为 char 最后一个元素的值为 '\0',Ascii 码就是 0 以字符型数组存储 从 0 号元素开始存储

More information

《红楼梦》(一)

《红楼梦》(一) """""! """""!# """"" $# """"" #% """"" &% """"" ( """"" )* """"" (! """"" +# """"!*$ """"!!* """"!!+ """"!$% """"!#& """"!&# """"!! """"!%# """"!) """"!(+ """" $*& """" $!$,!, ####!!" ####!$$ ####!%" ####!&&

More information

C/C++ - 数组与指针

C/C++ - 数组与指针 C/C++ Table of contents 1. 2. 3. 4. 5. 6. 7. 8. 1 float candy [ 365]; char code [12]; int states [50]; 2 int array [6] = {1, 2, 4, 6, 8, 10}; 3 // day_mon1.c: # include # define MONTHS 12 int

More information

Microsoft PowerPoint - 04-array_pointer.ppt

Microsoft PowerPoint - 04-array_pointer.ppt Array 與 Pointer Array Dynamical Memory Allocation Array( 陣列 ) 陣列是用來存放同樣型態的資料陣列的大小必須在程式中預先設定在程式執行中, 陣列的大小無法改變陣列中的資料是透過索引 (index) 來存取 一維陣列的宣告 type array_name[array_size]; int iarray[100]; /* an integer array

More information

《C语言程序设计》教材习题参考答案

《C语言程序设计》教材习题参考答案 教材名称 : C 语言程序设计 ( 第 1 版 ) 黄保和 江弋编著清华大学出版社 ISBN:978-7-302-13599-9, 红色封面 答案制作时间 :2011 年 2 月 -5 月 一 选择题 1. 设已定义 int a, * p, 下列赋值表达式中正确的是 :C)p=&a 2. 设已定义 int x,*p=&x;, 则下列表达式中错误的是 :B)&*x 3. 若已定义 int a=1,*b=&a;,

More information

10_String

10_String 字串 String 字串就是 String 物件, 因此, 宣告一個字串變數時會先指到一個 String 的參照, 再產生一個字串物件 String 類別定義的常用建構方法 Yung-Chen Chou 1 字串 String (Cont.) 字元陣列中索引碼為 3 的元素開始, 取出 4 個元素建構字串 由剛剛建立的字串 b 產生副本 雖然字串 d 和字串 b 的內容一樣, 但卻是不同的物件個體,

More information

Monthly Report 2010_12

Monthly Report 2010_12 年月日 程序设计 -2011 年秋 1 数组的基本概念 一维数组 多维数组 字符数组与字符串 程序设计 -2011 年秋 2 定义形式 类型说明符数组名 [ 常量表达式 ]; 类型说明符数组名 [ 常量表达式 ][ 常量表达式 ]; 引用形式 数组名 [ 下标 ] 数组名 [ 下标 ][ 下标 ] 程序设计 -2011 年秋 3 数组的基本概念 一维数组 多维数组 字符数组与字符串 程序设计 -2011

More information

PowerPoint Presentation

PowerPoint Presentation Python A Comprehensive Programming Language 謝育璘 r03944051@ntu.edu.tw Guido van Rossum Monty Python's Flying Circus 直譯 : 不用經過編譯就能執行.py 程式碼檔 (source file) 就是執行檔 (executable file) 不過系統要先安裝好 python 環境 3 直譯

More information

C. p->data.a D. p.data.a 5 若需建立如圖所示的儲存結構, 以下正確的語法組是 : G q p c A. char **q, *p, c; p=&c; q=*p; C. char **q, *p, c; p=&c; q=&p; B. char *q, *p, c; p=&c;

C. p->data.a D. p.data.a 5 若需建立如圖所示的儲存結構, 以下正確的語法組是 : G q p c A. char **q, *p, c; p=&c; q=*p; C. char **q, *p, c; p=&c; q=&p; B. char *q, *p, c; p=&c; 第 11 章自訂結構 簡單 1 已有以下定義和語法, 則值為 210 的表述式是 struct ks { int a; int *b; ; main ( ) { int x0[ ]={110,120, x1[ ]={210,220; struct ks *p, x[ ]={100,x0,200,x1; p=x; A. *p->b B. (++p)->a C. *(++p)->b D. *(p++)->b

More information

Microsoft PowerPoint - C-Ch12.ppt

Microsoft PowerPoint - C-Ch12.ppt 檔案的輸入 輸出 12-1 輸入 輸出的基礎 理解資料流 (stream) 的概念 在 C 語言中支援各種輸出入功能的概念, 就稱為資料流 執行附加格式的輸入 輸出 printf() 和 scanf() 是用來輸出 輸入的函數 必須先引入 stdio.h 檔案才能使用這些函數 這兩個函數會以固定的格式進行輸出入, 也可以使用各種不同的轉換規格 使用固定格式的輸出 輸入函數之範例 : int main(void)

More information

Microsoft Word - 論文定稿2.doc

Microsoft Word - 論文定稿2.doc 第 三 章 中 時 家 庭 版 沿 革 本 章 依 照 報 紙 的 形 式 與 內 容 的 改 變, 將 中 時 近 五 十 年 的 家 庭 版 分 為 5 大 時 期 : (1) 始 自 週 刊 (1959 年 前 ): 此 時 期 可 說 是 中 時 家 庭 版 史 前 史 部 份, 從 1956 年 起 以 週 刊 方 式 刊 載 這 時 期 內 容 與 傳 統 女 性 版 面 中 內 容 相

More information

Java 程式設計初階 第 5 章:基本輸出入 & 流程控制

Java 程式設計初階 第 5 章:基本輸出入 & 流程控制 Java 程式設計 標準輸出入與流程控制 本章大綱 標準輸出入 (Standard I/O) 分支 (Branch) if ~ else switch ~ case 迴圈 (Loop) for while do ~ while 中斷指令 break continue 總整理 標準輸出 定義 : 將資料印到螢幕上 Java 標準輸出指令 System.out.println( 資料 ) 將資料印出後換行

More information

期中考试试题讲解

期中考试试题讲解 一 选择题 ( 一 ) 1. 结构化程序设计所规定的三种基本结构是 C A 主程序 子程序 函数 B 树形 网形 环形 C 顺序 选择 循环 D 输入 处理 输出 2. 下列关于 C 语言的叙述错误的是 A A 对大小写不敏感 B 不同类型的变量可以在一个表达式中 C main 函数可以写在程序文件的任何位置 D 同一个运算符号在不同的场合可以有不同的含义 3. 以下合法的实型常数是 C A.E4

More information

3.1 num = 3 ch = 'C' 2

3.1 num = 3 ch = 'C' 2 Java 1 3.1 num = 3 ch = 'C' 2 final 3.1 final : final final double PI=3.1415926; 3 3.2 4 int 3.2 (long int) (int) (short int) (byte) short sum; // sum 5 3.2 Java int long num=32967359818l; C:\java\app3_2.java:6:

More information

ACI pdf

ACI pdf 09 9.1 -...9-2 9.1.1...9-2 9.1.2...9-3 9.2 -...9-4 9.2.1 PMT - ()...9-4 9.2.2...9-6 9.3 -...9-8 9.3.1 PMT - ()...9-8 9.4...9-10 9.4.1... 9-11 9.4.2...9-12 9.4.3...9-14 9.5 -...9-17 9.5.1...9-18 1 Excel...9-21

More information

Microsoft Word - _m30.doc

Microsoft Word - _m30.doc 1 2 3 4 5 6 7 8 公式 2 4 2 1 能 整除 因此後玩 者贏 且關鍵數 字為3 的倍數 3 0 3 1 不能整除 所 以先拿餘數 2 關鍵數字是 4的倍 數 2 先玩者贏 4 0 4 1 能整除 因此 後玩者贏 且 關鍵數字為 5 的倍數 5 0 5 1 不能整除 所 以先拿餘數 2 關鍵 數字是 6的倍 數 2 先玩者贏 7 0 6 1 能整除 因此 後玩者贏 且 關鍵數字為7

More information