鄭士康 國立台灣大學 電機工程學系/電信工程研究所/ 資訊網路與多媒體研究所

Slides:



Advertisements
Similar presentations
软件编程基础 一、程序的编辑 Java 源程序是以 Java 为后缀的简单的文本文件,可以用各种 Java 集成开发环境中的源代码编辑器来编写,也可以用其他文 本编辑工具,如 Windows 中的记事本或 DOS 中的 EDIT 软件等。 利用文字编辑器编写下列程序 public class Hello.
Advertisements

第三讲 面向对象(上).
3.2 Java的类 Java 类库的概念 语言规则——程序的书写规范 Java语言 类库——已有的有特定功能的Java程序模块
项目7 面向对象高级.
项目6 通用堆栈.
鄭士康 國立台灣大學 電機工程學系/電信工程研究所/ 資訊網路與多媒體研究所
鄭士康 國立台灣大學 電機工程學系/電信工程研究所/ 資訊網路與多媒體研究所
四資二甲 第三週作業 物件導向程式設計.
C#程序设计案例教程 第3章 程 序 结 构.
C#程序设计 10软件1、2班 王槐彬 计算机工程学院.
Ch07 介面與多重繼承 物件導向程式設計(II).
第三章 控制结构.
鄭士康 國立台灣大學 電機工程學系/電信工程研究所/ 資訊網路與多媒體研究所
C# 程式設計 第一部分 第1-4章 C# 程式設計 - 南華大學資管系.
程式設計實作.
第5章 异常处理 王德俊 上海交通大学继续教育学院.
C#程序设计 c# programming 泛型 C#程序设计课程组.
第八章 C#高级编程.
.NET 程式設計入門(使用 C#) 講師:鄧智鴻.
第二章 C# 基础知识.
第四章 在 C# 中实现 OOP 概念.
大綱 Labview 環境介紹 數值(Numeric) 布林值(Boolean)與比較(Comparison) 結構(Structure)
南华大学计算机学院 软件工程系 QQ讨论群:
程序與函數的類別方法 目的:模組化程式設計 方法:由上而下設計 注意事項:(1)獨立性 (2)結合問題 (3)子問題間的溝通.
C# 的 Web 相關物件之使用 日期 : 2018/11/21.
C#程序设计 c# programming 多线程 C#程序设计课程组.
C#程序设计 c# programming 网络编程 C#程序设计课程组.
程式設計實作.
C++ with Managed Extensions
基于 C# 的 .NET Framework 程序设计
C#程序设计基础 $3 成员、变量和常量.
程序设计期末复习 黎金宁
程式撰寫流程.
鄭士康 國立台灣大學 電機工程學系/電信工程研究所/ 資訊網路與多媒體研究所
委派與執行緒 建國科技大學 資管系 饒瑞佶.
第4章 数组和集合 4.1 一维数组 4.2 二维数组 4.3 Array类 4.4 交错数组 4.5 ArrayList类
第三章 流程控制與例外處理 資訊教育研究室 製作 注意:本投影片僅供上課使用,非經同意,請勿散播或轉載。
C#面向对象程序设计 $7 继承和多态性.
第6章 继承和接口设计 6.1 继 承 6.2 多态性 6.3 抽象类 6.4 接口 6.5 接口在集合排序中的应用.
視窗程式設計 (Windows Programming)
例外處理與 物件序列化(Exception Handling and Serialization of Objects)
檔案讀寫與例外處理 (File IO and Exception Handling)
第9讲 Java的继承与多态(一) 类的继承 子类的创建 方法覆盖.
鄭士康 國立台灣大學 電機工程學系/電信工程研究所/ 資訊網路與多媒體研究所
第 十二 章 C# 中的文件处理.
JAVA 程式設計與資料結構 第四章 陣列、字串與數學物件.
Ch02-基礎語法.
C/C++/Java 哪些值不是头等程序对象
C#程序设计基础 第二章 数据类型.
第六章 属性、索引器、委托和事件.
類別與物件 I (Classes and Objects I)
* 單元:電腦與問題解決 主題:Java物件導向程式設計-類別與物件 台南縣國立善化高中 蕭嘉民 老師
第三章 C# 基础知识.
辅导课程八.
JAVA 编 程 技 术 主编 贾振华 2010年1月.
《JAVA程序设计》 语音答疑 辅导老师:高旻.
劉崇汎 崑山科技大學 電腦與通訊系 DLL的建立與引用 劉崇汎 崑山科技大學 電腦與通訊系
第二章 Java基本语法 讲师:复凡.
C#程序设计基础 $3 成员、变量和常量.
Java程式初體驗大綱 大綱 在學程式之前及本書常用名詞解釋 Hello Java!程式 在Dos下編譯、執行程式
第二章 Java基本语法 讲师:复凡.
鄭士康 國立台灣大學 電機工程學系/電信工程研究所/ 資訊網路與多媒體研究所
龍老師我不會Debug QQ.
第6單元 6-1 類別的繼承 (Class Inheritance) 6-2 抽象類別 (Abstract Class)
辅导课程十二.
JAVA 程式設計與資料結構 第三章 物件的設計.
C#快速導讀 流程控制.
判斷(選擇性敘述) if if else else if 條件運算子.
輸出執行結果到螢幕上 如果要將執行結果的文字和數值都「輸出」到電腦螢幕時,程式要怎麼寫? class 類別名稱 {
第二章 Java基本语法 讲师:复凡.
Presentation transcript:

鄭士康 國立台灣大學 電機工程學系/電信工程研究所/ 資訊網路與多媒體研究所 陣列與字串 鄭士康 國立台灣大學 電機工程學系/電信工程研究所/ 資訊網路與多媒體研究所

程式 ArrayAccess (1/3) using System; namespace ArrayAccess { class Program /* 示範一維陣列之宣告與存取 * 3/10/2007 */ static void Main(string[] args) const int N = 6; int[] intArray = new int[N]; for (int i = 0; i < N; i++)

程式 ArrayAccess (2/3) intArray[i] = i * 10; } Console.WriteLine( for (int i = 0; i < N; i++) { "intArray[{0}] : {1} ", i, intArray[i]); string[] strArray = { "這", "是", "陣列", "測試", "!!" }; "以下列出陣列物件strArray的所有元素值"); for (int i = 0; i < strArray.Length; i++)

程式 ArrayAccess (3/3) Console.WriteLine( "strArray[{0}] : {1} ", i, strArray[i]); } "陣列strArray的長度為{0},開始索引值為{1}, 結束索引值為{2} \n", strArray.Length, strArray.GetLowerBound(0), strArray.GetUpperBound(0)); Console.ReadLine();

一維陣列 一維陣列與陣列索引 int[] intArray = new int [6]; intArray[0] intArray[3]

一維陣列物件特性 陣列長度 Length 陣列開始索引值 GetLowerBound(0) 陣列結束索引值 GetUpperBound(0)

練習 寫一程式,用迴圈輸入3位同學成績到一維陣列,再用迴圈把陣列長度及所有成績印出來. 修改上述程式, 使同學人數可以在程式執行時決定.

程式 Array2D (1/3) using System; namespace Array2D { class Program /* * 示範矩形陣列的使用 * 3/12/2007 */ static void Main(string[] args) const int N_ROW = 3; const int N_COL = 6; string[,] strArray = new string[N_ROW, N_COL];

程式 Array2D (2/3) Console.WriteLine( "strArray 是{0} X {1} 的{2} 維陣列\n", N_ROW, N_COL, strArray.Rank); for (int i = 0; i < N_ROW; i++) { for (int j = 0; j < N_COL; j++) strArray[i, j] = "value" + i.ToString() + j.ToString(); } Console.WriteLine("以下為strArray內含的元素\n");

程式 Array2D (3/3) Console.WriteLine("第{0} 列\n", i); for (int j = 0; j < N_COL; j++) { Console.WriteLine("strArray[{0},{1}]: {2}", i, j, strArray[i, j]); } Console.WriteLine(); Console.ReadLine();

矩形陣列 int[ , ] intArray = new int [3, 6]; intArray[0,0] intArray[0,5]

練習 寫一程式,設值及印出3階魔方陣(河圖洛書)

程式 Array2DA (1/3) using System; namespace Array2DA { class Program /* * 示範不規則二維陣列之使用 */ static void Main(string[] args) const int N_ROW = 3; string[][] strArray = new string[N_ROW][]; for (int i = 0; i < N_ROW; i++) strArray[i] = new string[i + 2]; }

程式 Array2DA (2/3) for (int i = 0; i < N_ROW; i++) { for (int j = 0; j < strArray[i].Length; j++) strArray[i][j] = "value" + i + j; } Console.WriteLine( "以下為strArray[{0}]所包含的元素\n", i); Console.Write(strArray[i][j] + " : ");

程式 Array2DA (3/3) Console.WriteLine("\n"); } Console.ReadLine();

不規則二維陣列 int[][] intArray = new int [3]; intArray[0,0] intArray[0,1]

練習 宣告並由使用者輸入一個不規則二維陣列, 此一陣列共三列, 每列的長度分別為1, 2, 3。

程式 StringManipulation (1/6) using System; namespace StringManipulation { /* * 示範字串之處理方式 * skj 3/1/2008 */ class Program static void Main(string[] args) string name = "Thomas"; Console.WriteLine(" name = {0}", name);

程式 StringManipulation (2/6) // 印出字串長度 Console.WriteLine(" length of name = {0}", name.Length); // 比較字串 string name1 = "Thomas"; int result = String.Compare( name, name1 ); if (result == 0) { Console.WriteLine( " \"{0}\" and \"{1}\" are equal", name, name1); }

程式 StringManipulation (3/6) else if (result > 0) { Console.WriteLine( " \"{0}\" is greater than \"{1}\" ", name, name1); } else " \"{0}\" is less than \"{1}\" ", name, name1);

程式 StringManipulation (4/6) // 連結字串 string concatedString = String.Concat(name, name1); Console.WriteLine( " \"{0}\" and \"{1}\" are concatenated as \"{2}\" ", name, name1, concatedString); // 字串設值 string newString = name; " newString is assigned as \"{0}\" ", newString);

程式 StringManipulation (5/6) // 字串複製 string nameCopy = String.Copy(name); Console.WriteLine( " nameCopy is assigned as \"{0}\" ", nameCopy); // 清除name name = String.Empty; Console.WriteLine("After setting Empty..."); Console.WriteLine(" name = {0}", name); // 檢視newString 與nameCopy " newString becomes \"{0}\" ", newString); " nameCopy becomes \"{0}\" ", nameCopy);

程式 StringManipulation (6/6) // 字串格式化 const int N = 3; string[] tag = new string[N]; for (int i = 0; i < N; ++i) { tag[i] = String.Format( "tag{0}: serial number = {1}", i, i * 100); } Console.WriteLine(tag[i]);

練習 宣告一個字串陣列dictionary[3],內存”Alpha”、 “Beta” 、”Gamma” ,然後輸入一個字串,決定它是dictionary內的第幾個元素並印出註標。如果不在dictionary內,則印出-1。