Introduction to the C Programming Language

Slides:



Advertisements
Similar presentations
CSIM, PU C Language Introduction to the C Programming Language 重覆敘述 (for,while,break,continue) 適合重複性的計算或判斷.
Advertisements

C语言程序设计 主讲教师 :张群燕 电话:
Loops.
项目五——校园一卡通程序功能模块化设计 5-1项目显示查询和退出函数设计.
補充: Input from a text file
選擇排序法 通訊一甲 B 楊穎穆.
適用於多選一 可減少if 與 else配對混淆的錯誤.
If … else 選擇結構 P27.
C 程式設計— 語言簡介 台大資訊工程學系 資訊系統訓練班.
Chap 2 用C语言编写程序 2.1 在屏幕上显示 Hello World! 2.2 求华氏温度 100°F 对应的摄氏温度
Introduction to the C Programming Language
Introduction to the C Programming Language
C++ 程式設計— 語言簡介 台大資訊工程學系 資訊系統訓練班.
STRUCTURE 授課:ANT 日期:2010/5/12.
计算概论 第十八讲 C语言高级编程 结构与习题课 北京大学信息学院.
第12章 從C到C++語言 12-1 C++語言的基礎 12-2 C++語言的輸出與輸入 12-3 C++語言的動態記憶體配置
Chap 8 指针 8.1 寻找保险箱密码 8.2 角色互换 8.3 冒泡排序 8.4 电码加密 8.5 任意个整数求和*
第3章 變數、常數與資料型態 3-1 C語言的識別字 3-2 變數的宣告與初值 3-3 指定敘述 3-4 C語言的資料型態
第二章 基本元素、类型和概念 七、输出函数printf 八、输入格式转换函数scanf.
Introduction to the C Programming Language
Chap 3 分支结构 3.1 简单的猜数游戏 3.2 四则运算 3.3 查询自动售货机中商品的价格.
第四章 C 语言中的输入和输出.
C语言 程序设计基础与试验 刘新国、2012年秋.
計數式重複敘述 for 迴圈 P
切換Dev c++顯示語言 工具->環境選項(V)->介面->language (Chinese TW)
Introduction to the C Programming Language
第3章 顺序结构程序设计 为了让计算机处理各种数据,首先就应该把源数据输入到计算机中;计算机处理结束后,再将目标数据信息以人能够识别的方式输出。C语言中的输入输出操作,是由C语言编译系统提供的库函数来实现。 3.1 格式化输出——printf()函数 3.2 格式化输入——scanf()函数.
第三章 数据类型、运算符与表达式.
2.1 C语言的数据类型 2.2 常量与变量 2.3 变量赋初值 2.4 各类数值型数据间的混合运算 2.5 C语言的运算符和表达式
第七章 函数及变量存贮类型 7.1 函数基础与C程序结构 7.2 函数的定义和声明 7.3 函数的调用 7.4 函数的嵌套与递归
第4章 顺序程序设计.
第1章 概述 本章要点: C语言程序结构和特点 C语言程序的基本符号与关键字 C语言程序的编辑及运行 学习方法建议:
C++ 程式設計 基礎篇 張啟中 Chang Chi-Chung.
C语言概述 第一章.
第1讲 C语言基础 要求: (1) C程序的组成 (2) C语言的标识符是如何定义的。 (3) C语言有哪些基本数据类型?各种基本数
Java變數 2014/6/24.
第2章 数据类型及表达式 本章导读 本章主要知识点 《 C语言程序设计》 (Visual C++ 6.0环境)
第 二 章 数据类型、运算符与表达式.
1.2 C语言程序的结构与书写规则 一、 C语言程序的总体结构
Introduction to the C Programming Language
Introduction to the C Programming Language
C语言程序设计 教案 崔武子制作
Chap 5 函数 5.1 计算圆柱体积 5.2 数字金字塔 5.3 复数运算.
輸出與輸入(I/O).
C语言程序设计 李祥 QQ:
C++程式設計入門 變數與運算子 作者:黃建庭.
第2章 数据类型、运算符与表达式 2.1 程序设计概述
第3章 数据类型、运算符与表达式.
第2章 数据类型、运算符与表达式 本章要点: 基本数据类型 常量和变量 算术运算符和算术表达式 关系运算符和关系表达式
第2章 基本数据及其运算 本章学习的目标: 1、掌握基本数据的各种表示,基本数据常数的书写方法;
第二章 类型、对象、运算符和表达式.
第2章 数据类型与表达式 学习目的与要求: 掌握C 语言的基本数据类型及使用方法 掌握C程序中常用的运算符和表达式 了解数据类型的转换.
Introduction to the C Programming Language
第二章 基本数据类型 ——数据的表示.
第三章 基本的輸出與輸入函數 (Basic Output & Input Function)
第四章 C 语言中的输入和输出.
第4章 顺序结构程序设计 为了让计算机处理各种数据,首先就应该把源数据输入到计算机中;计算机处理结束后,再将目标数据信息以人能够识别的方式输出。C语言中的输入输出操作,是由C语言编译系统提供的库函数来实现。 4.1 格式化输出——printf()函数 4.2 格式化输入——scanf()函数.
第3章 最简单的C程序设计 3.1 顺序程序设计举例 3.2 数据的表现形式及其运算 3.3 C语句 3.4 数据的输入输出.
結構、檔案處理(Structure, File)
本章主題 C++的程式結構 資料型態與宣告 算術運算 簡易的輸入輸出指令 程式編譯(Compile)的過程與原理.
第二章 数据类型、运算符和表达式 §2.1 数据与数据类型 §2.2 常量、变量和标准函数 §2.3 基本运算符及其表达式 目 录 上一章
變數、資料型態、運算子.
Introduction to the C Programming Language
Introduction to the C Programming Language
C/C++基礎程式設計班 C語言入門、變數、基本處理與輸入輸出 講師:林業峻 CSIE, NTU 3/7, 2015.
基本資料型態 變數與常數 運算子 基本的資料處理 授課:ANT 日期:2014/03/03.
變數與資料型態  綠園.
資料!你家住哪裏? --談指標 綠園.
Introduction to the C Programming Language
C++语言程序设计 C++语言程序设计 第二章 基本数据类型与表达式 第十一组 C++语言程序设计.
Presentation transcript:

Introduction to the C Programming Language

基本資料型態 下表列出了C語言中各種基本資料型態所佔的記憶體空間及範圍 不同的編譯程式裡,整數類的變數所佔的位元組可能會有所不同 資料型態 型態說明 位元組 表示範圍 整數 類型 long int 長整數 4 -2147483648 ~ 2147483647 int short int 短整數 2 -32768 ~ 32767 char 字元 1 0 ~ 255(256個字元) 浮點數 float 1.2E-38 ~ 3.E38 double 倍精度浮點數 8 2.2E-308 ~ 1.8E308 不同的編譯程式裡,整數類的變數所佔的位元組可能會有所不同

整數資料型態 在Dev C++中,int 與 long int 都佔了4個位元組. 在其它編譯器裡(如:Turbo C), int 可能只佔了2個位元組. 在宣告長整數或短整數變數時,可以省略 int . short int a=1000; 可寫成 short a=1000; long int b=2000 ; 可寫成 long b=2000; 若儲存的資料絕對不會出現負數的時候,可以使用無號整數來儲存 變數與常數的不同: 當我們宣告一個變數時,編譯程式會在記憶體內配置一快空間給它。不管變數的值如何改變,它所佔的記憶體空間永遠都一樣。 常數與變數不同,它的值是固定的,如整數常數1200,浮點常數123.4等。 整數常數的特性: 沒有小數點,帶符號其常數數值範圍為-32768~+32767(不帶符號,則為0~65535) 長整數(long)常數,帶符號其數值範圍為-2147483648~2147483647 C語言中,允許八進位整數的存在,只要是以零開頭的整數都被視為8進位數字。 C語言中,允許十六進位整數的存在,只要是以0x開頭的整數都被視為16進位數字。 資料型態 型態說明 位元組 表示範圍 unsigned long int 無號長整數 4 0 ~ 4294967295 unsigned int 無號整數 unsigned short int 無號短整數 2 0 ~ 65535

字元資料型態 字元型態在記憶體中佔有 1 個位元組,可用來儲存字元. 通常字元會被編碼,亦即替每一個字元編上一個整數碼,以方便處理這些字元. ASCII是較為人知的編碼系統(請參閱附A). 在 ASCII 編碼系統中,數字 0 到 127 分別代表不同的常用符號。 例如:英文大寫 A 的 ASCII 碼是 65 英文小寫 a 的 ASCII 碼是 97 符號 % 的 ASCII 碼是37 C語言可接受科學記號表示法的浮點數。 例如:若有一數字是123.456,我們可以寫成 1.23456e2 或 0.123456e3 附錄A

字元常數(Character Constants) 字元常數必須放在單引號裡面. 例如: ’A’ , ’a’ , ‘7’ , ‘*’ 也可以使用ASCII code來表示字元常數 範例: char ch=‘A’; 同等於 char ch=65; char ch=‘7’; 同等於 char ch=55; char ch=‘%’ 同等於 char ch=37; 在單引號之間的字元,我們都稱它是字元常數。例如:‘a’,’3’,’;’都是字元常數。 字元常數特性: 字元長度為1(不像字串長度為0~65535) C語言的字元型態與位元組整數是相容互通的 \xdd , 十六進位表示ASCII碼(每個d表示一數目),例如: \x42  B \ddd, 八進位表示ASCII碼(每個d表示一數目),例如: \101  A \0,代表null 41h:代表ASCII碼值十六進制(查表) chars are simply 1-byte integer. 例如: Upper = (lower - ‘a’) + ‘A’;

課堂練習(一) 請使用者輸入字元(A~Z、 a~z),程式輸出為對應的ASCII code來表示字元常數。 輸出printf 型態%c %d 提示:輸入 scanf 輸出printf 型態%c %d

字串常數(String Constants) 字串常數是以ㄧ對雙引號包圍. 例如: “holiday” , “Hello” , ”Jane Wang” …等 “a” 會被視為包含了一個字元的字串. 在C語言中處理字元和字串的方式是不ㄧ樣的. 在單引號之間的字元,我們都稱它是字元常數。例如:‘a’,’3’,’;’都是字元常數。 字元常數特性: 字元長度為1(不像字串長度為0~65535) C語言的字元型態與位元組整數是相容互通的 \xdd , 十六進位表示ASCII碼(每個d表示一數目),例如: \x42  B \ddd, 八進位表示ASCII碼(每個d表示一數目),例如: \101  A \0,代表null 41h:代表ASCII碼值十六進制(查表) chars are simply 1-byte integer. 例如: Upper = (lower - ‘a’) + ‘A’;

變數宣告(Declarations) 宣告的語法如下: 資料型態 變數名稱; 例如: 變數命名原則: 資料型態 變數名稱; 例如: int num1; /* 把變數num1宣告為 int 型態 */ char a; /* 把變數a宣告為 char 型態 */ float f; /* 把變數f宣告為 float 型態 */ 變數命名原則: 1. 第一個字元必須是英文字母或底線 2. 大小寫代表不同的變數(如 : SUM, Sum, sum). 3. 可由字母,底線,阿拉伯數字所組成. 4. 不可為關鍵字(Keyword)或保留字(Reserve word). Ex: 不合法的識別字: 2A , good! , $money, case 變數宣告: 範例: int apples,oranges,cherries;

變數宣告(Declarations) Memory 若想同時宣告一個以上相同型態的變數, 則可用逗號(,)隔開. 例如 : 可寫成 int a; int b; int c; 可寫成 int a, b, c; 在變數宣告完成後,可使用等號運算子(=)替變數設值。 例如: int a; /* 把變數a宣告為int型態 */ a Memory num a=3; 指定整數變數a的初值為3 C 語言 所有變數都要先行宣告,才能使用 若一個以上的變數擁有相同的型態,則可用逗號隔開 設定變數初始值 ex : int i =0; i 的始值為0 也可以在宣告的時候,替變數設值。 例如: int num=3; 指定整數變數num的初值為3

溢位 當數值的大小超過變數可以表示的範圍時,溢位(overflow)便會發生。 例如: shot int num=32767; num=num+1; 解說: 設定num的初值為整數(integer)所容許的最大值(32767)。 當num的值加上1後,會發生溢位的現象。此時num的值 會變成-32768。

簡 單 的 C 程 式 範 例 #include<stdio.h> #include<stdlib.h> void main(void) { int sum; /* 宣告整數變數sum */ int a=5,b=9; /* a的值為5 , b的值為9 */ float avg; /* 宣告浮點變數avg */ sum = a + b; avg = sum / 2; printf(“The average = %f\n” , avg); system("pause"); } 將a與b的值相加,放到sum中 將sum的值除以2,放到avg中

簡 單 的 C 程 式 範 例 #include <stdio.h> #include <stdlib.h> int main(void) { int i; /* 宣告整數變數sum */ char ch; float j; double q; printf(“Input a integer a character and a floating a double point:”); /*printf函式,請使用者輸入整數、字元、浮點數 */ scanf("%d %c %f %lf",&i,&ch,&j,&q); /*使用scanf函式存入變數之中 */ printf("The integer you give us is %d\n",i); printf("The character you give us is %c\n",ch); printf("The floating point you give us is %f\n",j); printf("The double point you give us is %lf\n",q); system("pause"); }

簡 單 的 C 程 式 範 例 #include <stdio.h> #include <stdlib.h> int main(void) { int chinese,english,math; float average; //宣告average為浮點數變數 printf("請輸入國文英文數學成績:"); scanf("%d %d %d",&chinese,&english,&math); //讀入各科成績 average = (float)(chinese+english+math)/3; //將分數加總後除以3 printf("平均分數為:%f\n",average); system("pause"); //使程式暫停在執行畫面讓我們看到結果 }

課堂練習(二) 請輸入兩個數值a、b,程式畫面輸出 (1)a+b (2)a-b (3)a*b (4)a/b (求至小數點第二位) 提示:scanf、printf、(float)、%5.2f

附錄A (Ascii碼)

附錄A (Ascii碼)

跳脫字元(Escape Sequences) \a alert (bell) character \\ backslash \b backspace \? question mark \f formfeed \' single quote \n newline \" double quote \r carriage return \000 octal number \t horizontal tab \xhh hexadecimal number \0 null character 倒斜線(\),代表“脫離”字元(或稱首前導標識),使得在解譯字串時脫離正常的方式,而使下一個字元具特殊意義 \b:到退一格 \f:跳頁 \n:換行 \r:倒回同列的開始處 \t:跳8個字元

請寫一個程式使其輸入身高(整數)M、輸出結果為標準體重(實數)N,算到小數點以下一位。 【標準體重的公式是(身高-100) × 0.9。】