Console IO & Pointer 授課:ANT 日期:2011/4/11.

Slides:



Advertisements
Similar presentations
第一單元 建立java 程式.
Advertisements

第6章 Photoshop 的浮动面板 本章节学生应熟练掌握Photoshop的浮动面板的组成和使用。 教学重点:
色 彩 混 合.
概述 6.1 导航器面板 6.2 信息面板 6.3 调色板面板 6.4 色板面板 6.5 样式面板 6.6 历史记录面板
Introduction to C Programming
計算機程式語言實習課.
2.3 信息表示与编码 所谓编码,就是利用数字串来标识所处理对象的不同个体。
色彩基本原理.
Photoshop图形图像处理.
顏色與背景CSS樣式.
Visual C++ introduction
Chapter 1 Introduction.
列舉(enum).
【變數與記憶體位址】 變數(Variable)提供一個有名稱的記憶體儲存空間。一個變數包含資料型態、變數本身的值及它的位址值。
101北一女中 資訊選手培訓營 妳不可不了解的指標 Nan.
1. 檔案File  開新New  檔案Empty File (再另存新檔D:\hello.c)
C語言簡介 日期 : 2018/12/2.
安裝JDK 安裝Eclipse Eclipse 中文化
Methods 靜宜大學資工系 蔡奇偉副教授 ©2011.
六頂 思考 帽 SIX THINKING HATS 組員:李冠興 李啟銘 粘婉菁.
2017 Operating Systems 作業系統實習 助教:陳主恩、林欣穎 實驗室:720A.
檔案與磁碟的基本介紹.
雲端計算.
Java 程式設計 講師:FrankLin.
Irvin32.LIB 程式庫說明.
#include <stdio.h> #include "console.c" main(){ int x=20, y=10;
Fortran 程式語言 之 編與譯(二) 張基昇.
Chap3 Linked List 鏈結串列.
Instructor:Po-Yu Kuo 教師:郭柏佑
程式設計實習課(四) ----C 函數運用----
第一單元 建立java 程式.
建立一 function s (type) 可以用來繪製cyclic-harmonic curves
網頁程式設計 本章投影片錄自HTML5、CSS3、RWD、jQuery Mobile跨裝網頁設計 陳惠貞 著 碁峰資訊股份有限公司出版
第1章 概述 本章要点: C语言程序结构和特点 C语言程序的基本符号与关键字 C语言程序的编辑及运行 学习方法建议:
UpToDate Anywhere 設定方法
雲端計算.
網路安全管理報告 緩衝區溢位攻擊 學生:吳忠祐 指導教授:梁明章.
輸入&輸出 函數 P20~P21.
第十章 指標.
CH1 我的第一個App與變數宣告.
CH05. 選擇敘述.
GUI Title and GUI Status
挑戰C++程式語言 ──第8章 進一步談字元與字串
C++语言程序设计 C++语言程序设计 第九章 类的特殊成员 第十一组 C++语言程序设计.
GridView操作 (II).
如何使用Gene Ontology 網址:
目錄 在中文輸入法底下打標點符號 Backspace退位鍵 Delete刪除鍵 Enter確定鍵 NumLock數字卡鎖鍵
C qsort.
DRC with Calibre 課程名稱:VLSI 報告人:黃家洋 日期: 改版(蔡秉均) 1.
流程控制:Switch-Case 94學年度第一學期‧資訊教育 東海大學物理系.
MiRanda Java Interface v1.0的使用方法
PROGRAM 7 SQUARE E. Angel.
陣列與結構.
程式移植.
Chapter 15 檔案存取 LabVIEW中的檔案存取函數也可將程式中的資料儲存成Excel或Word檔。只要將欲存取的檔案路徑位址透過LabVIEW中的路徑元件告訴檔案存取函數後,LabVIEW便可將資料存成Excel或Word檔;當然也可以將Excel或Word檔的資料讀入LabVIEW的程式中。
北一女中 資訊選手培訓營 妳不可不了解的指標 Nan.
選擇性結構 if-else… switch-case 重複性結構 while… do-while… for…
2018 Operating Systems 作業系統實習 助教:林欣穎 實驗室:720A.
1757: Secret Chamber at Mount Rushmore
資料表示方法 資料儲存單位.
第四章 陣列、指標與參考 4-1 物件陣列 4-2 使用物件指標 4-3 this指標 4-4 new 與 delete
Programming & Language Telling the computer what to do
第二章 计算机中的信息表示.
ABAP Basic Concept (2) 運算子 控制式與迴圈 Subroutines Event Block
String類別 在C語言中提供兩種支援字串的方式 可以使用傳統以null結尾的字元陣列 使用string類別
Array(陣列) Anny
Introduction to the C Programming Language
Unix指令4-文字編輯與程式撰寫.
ABAP Basic Concept (2) 運算子 控制式與迴圈 Subroutines Event Block
InputStreamReader Console Scanner
Presentation transcript:

Console IO & Pointer 授課:ANT 日期:2011/4/11

Outline 學習目標 在Code::Blocks使用ConsoleIO的指令 Conio.h ASKII碼 移動游標 色塊更動 LAB8 HW8

學習目標 學會Code::Blocks中讓一般輸出內容能顯示彩色文字 學會使用方向鍵控制游標位置

在Code::Blocks使用Conio指令 第一步:因為Code::Blocks本身就有conio.h檔,其內容包含的函式較簡單。因此需要另外新增.h檔,才能使用更多功能。到實驗室網頁下載 Conio0.h 、 Conio2.h Conio0.h是DEV C++所使用的header檔,函式庫較多。 第二步:將所下載之檔案放置到與.c檔相同的資料夾內 使用#include “conio0.h”

#include 差異 #include <stdio.h> #include “stdio.h” 意義是他會去找尋資料夾include底下的.h檔 C:\ProgramFiles\CodeBlocks\MinGW\include(預設) #include “stdio.h” 意義則是他會去找跟.c同一個資料夾底下的.h檔 另外可在” ”內放入檔案位置, 就可以include不同資料夾底下的檔案

Conio0.h(1/4) void gotoxy (int x, int y) int wherex (void) Moves cursor to the specified position. int wherex (void)  Reads the cursor X position. int wherey (void) Reads the cursor Y position.

Conio0.h(2/4) void cputsxy (int x, int y, char *str) Puts string at the specified position. void putchxy (int x, int y, char ch)  Puts char at the specified position.

Conio0.h(3/4) void textbackground (int color) Sets text background color. void textcolor (int color)  Sets text foreground color. void clrscr (void) Clears whole screen.

Conio0.h(4/4) enum  COLORS { BLACK, BLUE, GREEN, CYAN, RED, MAGENTA, BROWN, LIGHTGRAY,  DARKGRAY, LIGHTBLUE, LIGHTGREEN, LIGHTCYAN,  LIGHTRED, LIGHTMAGENTA, YELLOW, WHITE } 其他Function http://conio.sourceforge.net/docs/html/conio2_8h.html

VC 如何產生彩色文字請參考 其他Function http://support.microsoft.com/kb/319234/zh-tw http://msdn.microsoft.com/enus/library/ms682073.aspx

UNIX 請參考BBS Programming版 第35篇 => curses 清螢幕 #include <curses.h> 使用方式連結 http://fanqiang.chinaunix.net/a4/b2/20020626/060200258_b.html

ASCII 目前電腦中用得最廣泛的字元集及其編碼,是由美國國家標準局(ANSI)制定的ASCII碼(American Standard Code for Information Interchange,美國標準資訊交換碼)。   第0~32號及第127號(共34個)是控制字元或通訊專用字元,如控制符:LF(換行)、CR(回車)、FF(換頁)、DEL(刪除)、BEL(振鈴)等; 第33~126號(共94個)是字元 第48~57號為0~9十個阿拉伯數字 第65~90號為26個大寫英文字母 第97~122號為26個小寫英文字母 參考網址 http://home.educities.edu.tw/wanker742126/asm/ch03.html#remark1

範例一 右為範例一的code 由上到下的按鍵順序為 控制信令(delete)與中文都 是由兩個字元組成。 上 下 左 右 Enter Space Delete 控制信令(delete)與中文都 是由兩個字元組成。

游標移動 使用方向鍵控制游標位置 上 ACSII: 224 72 (意思是說它是由兩個字元組成) 下 ACSII: 224 80 Esc ACSII: 27 與ASCII搭不起來的原因:現在的鍵盤上有些鍵沒有對應的ASCII字元或控制字元,例如游標控制鍵/箭頭鍵和字處理功能鍵。這些鍵盤和其所連接的計算機通過幾種方法通信:將一些在其他情況下不使用的控制字元定義新的用法、使用其他一些非ASCII的編碼、或者使用多個字元構成的控制序列。連接到獨立的個人電腦上的鍵盤通常用前兩種方法之一或兩者都用 游標一開始位置,不要是(0,0),執行後容易產生問題,最好由(1,1)開始

範例二

範例二code 右為範例二的code 在移動到下一個 座標時,要將前一個座 標的圖示 * 給消除。 runx-1的源由在於當 使用cputsxy印出字串時 游標已經移動到下一格去 因此在換作標顯示時必須 往後退一格做印出“ “空格 來消除圖示 *

範例三

範例三code 右為範例二的code Textbackground為設定背景顏色 Textcolor為設定文字顏色 利用wherex以及wherey取得游標 座標,在執行for迴圈作畫圖動作

指標 指標(Pointer)也是一種變數,但是指標儲存的值是記憶體位址。 指標在宣告時與一般變數的差異 int *p; //整數指標 int price; //整數變數

運算元& 變數給值price = 100 ,指標又該如何給值(記憶體位址)? &稱位址運算元(address operator) ,用來取得變數的記憶體位址。 p = &price;

運算元* 程式碼p = &price執行後,如何取得指標p所指的變數price的值? *稱間接運算元(indirect operator) 或反參考運算元(de-reference operator) ,用來取得指標所記錄記憶體位址所儲存的變數值。

示意圖 100 100 100 0022FF20 程式碼 int price = 100; int *p; p = &price; 記憶體位址 price 變數名稱 程式碼 int price = 100; int *p; p = &price; 100 0022FF20 0022FF24 price p 100 0022FF20 0022FF24 price p

範例程式6_01.c

指標與一維陣列 (a) (b)

示意圖 1 2 3 4 5 6 7 8 9 arr p *(p+0) *(p+1) *(p+2) *(p+3) *(p+4) *(p+5) *(p+1) *(p+2) *(p+3) *(p+4) *(p+5) *(p+6) *(p+7) *(p+8) *(p+9) 22ff20 說明: 在(a)迴圈中,指標指向的位址並沒有改變 在(b)迴圈中,p++指標移動,改變了所指向的位址 在使用p++的時候要小心,別指過頭了!!! 1 2 3 4 arr 22ff20 p 22ff24 p++

Lab06 任意挑選一張牌並印出來(需有邊框,花色牌值放中間,可參考P.17範例三code) 四種花色與牌值需用指標 花色: “♣”,“♦”,“♥”,“♠“ (”♦”,“♥”須為紅色) 牌值:2~10,J,Q,K,A 提示:利用rand(); #include<time.h> #include<stdlib.h> int var,constant srand(time(NULL)); var = rand()%constant ;

Lab06

HW06 Black Jack (21點) 程式需求 (1)牌不能重複 (2)電腦當莊家,自己為玩家 (3)可以一直玩到牌發完。牌發完時直接比 當時牌面大小決定勝負。

HW06 (4)四種花色與牌值需用指標 花色: “♣”,“♦”,“♥”,“♠“ (”♦”,“♥”須為紅色) 牌值:2~10,J,Q,K,A