常量,變量,輸出,輸入
常量的本質
1.什麼是常量 (常數,不能改變的量)
1)常量程序中最基本的元素
2)如同其名稱所暗示的,在程序執行期間該值不能改變
2常量.屬於指令的一部分,編譯後不再更改
================================
常量類型
1.整形常量
2.實型常量
3.字符常量
4.字符串常量
================================
整型常量 (整數)
1.按進制分類
1)十進制
例:10,35,-128
2)八進制
以0開頭。例:010==8
3)十六進制
以0x或者0X開頭。例:0x10
2.按數據長度分類
1)整型常量 32bit== 4Byte (2^32-1)
2)長整型常量 64bit ==8Byte (2^64-1)
1>爲什麼有長整型常量
因爲每種類型的常量都有一定的表示範圍
2>長整型常量後加字母L
12
12L
================================
實型常量 (浮點型常量) 小數
1.普通形式
例:3.14159 2
2.科學記數法
例:
314.591 = 3.14591*10^2 = 3.14591e2
215.789 = 2.15789e2
注意:字母e(或E)之前必須有數字,且e後面的指數必須爲整數:
e2
10e0.1
================================
字符常量
1.什麼是字符常量?
用單引號 ‘ ’ 把一個字符括起來,稱爲字符常量
‘A’~’Z’ : 65 ~90
‘a’~’z’ : 97~122
‘0’~’9‘ : 48 ~57
存儲:
把’A’存儲到計算機:
找到ASCII碼錶 ‘A’:65
計算機存儲 65
讀取:
計算機65
找到ASCII碼錶 65對應是字符’A’
‘A’顯示出來
普通字符用單引號括起來,在c語言中,字符數據使用數字來表示,ASCII碼錶提出
2.什麼是ascii碼
因爲計算機內部只能存儲二進制數字而不能直接存儲字符等其他數據,爲了表示字符,
必須給所有的字符分配一個數字,這就是ascii碼
‘A’-65==0
65-65==0
================================
三、變量 的本質
1.什麼是變量
程序運行時可以改變的量
2.變量能解決什麼問題
保存程序或者用戶產生的數據,可以看作是數據的載體
處理大量數據,變量存儲數據
3.變量的本質
1)其實變量就是內存某個存儲位置的別名
================================
四、變量的類型(數據類型)
1.數據類型的作用
1)存儲數據必須先確定數據的(存儲數據類型和存儲長度)
整數 小數
2.基本數據類型
1)整型
char 字符型 1Byte 8bit 0000 0000~1111 1111 2^8=256狀態 0~255
short 短整型 2Byte 16bit 2^16=65536 狀態 0~65535
int 整形 4Byte 32bit 2^32狀態
long 長整形 8Byte 64bit 2^64種狀態
2)浮點型
float 單精度浮點類型 4Byte
6~7
double 雙精度浮點類型 8Byte
15~16
================================
五、變量的定義(標識符)
1.變量定義語法
作用:告訴系統怎麼存儲和存儲的長度
1) 數據類型變量名
2.變量名(標識符)要求
1)由字母、下劃線、數字組成 a,_,1
2)只能以字母、下劃線開頭 a1, a_1,_a ,(1a ,1_a 錯誤)
3)不能和c語言關鍵字重名
auto break case char const continue
default do double else enum extern... 等
4)變量嚴格區分大小寫
int A,int a;
兩個變量;
5)變量名必須唯一,在同一個大括號裏面我們不能聲明兩個相同的變量
{
int b;
float b;(錯誤)
}
6)儘可能可讀性較強
int number;
3.變量使用原則
1)必須先定義 ,再使用
數據類型 變量名
4.int,float,char 類型變量
1)聲明語法,一行聲明一個變量
2)多個變量一行、多行聲明
<span style="font-size:18px;">#include<stdio.h>
int main(void)
{
int a1;
int a2;
int a3;
float b1,b2,b3;
char c1;
char c2;
char c3;
return 0;
}</span>
5.賦值和初始化操作
1)初始化方式 初始值;
<span style="font-size:18px;">#include<stdio.h>
int main(void)
{
int a=100;//初始化
int b=100,c=200;
a=200;//賦值
return 0;
}</span>
2)初始化後如何修改一個變量的值
變量可以改變,本質是存儲空間
<span style="font-size:18px;">int a=100;
a=200; //修改變量a的數值</span>
3)特殊的整型char 存儲字符常量;
<span style="font-size:18px;">#include<stdio.h>
int main(void)
{
char a='A';
return 0;
}</span>
1>思考:字符的本質
a存儲ASCII 65 字符類型與整形相通
2>即可以通過字符初始化,也可以使用整數進行初始化
‘A’-65==0
char a=65;
===============================================
6.變量的輸入和輸出
1.c語言輸出函數printf
1>作用:將" "程序裏面數據輸出到終端
<span style="font-size:18px;">printf(“hello ios”);
printf(“how are you”);</span>
2>使用方式:通過格式化符控制要輸出的內容
<span style="font-size:18px;">int a=100;
printf(“格式化符列表”,變量名列表);</span>
2.格式化輸入和輸出
1>c語言通過一定的格式接收或者輸出數據
2>格式化符
整型: %d int
字符型: %c char
浮點: %f %.2f float
<span style="font-size:18px;">#include<stdio.h>
int main(void)
{
int a=100;
printf("%d",a);
return 0;
}</span>
常用的格式符:
%ld 長整型
%s 字符串
%x 十六進制
%o 八進制
%e 指數形式輸出
定義一個字符型 ch,初始化0x40, 字符輸出顯示@,
再賦值爲100,字符輸出顯示d。
<span style="font-size:18px;">#include<stdio.h>
int main(void)
{
char ch=0x40;
printf("%c\n",ch);//@
ch=100;
printf("%c\n",ch);//d
return 0;
}</span>
printf函數:
通過不同的輸出方式體現"不看怎麼存,就看怎麼讀"的概念
通過對一個整型變量的不同格式輸出來體現
<span style="font-size:18px;">#include<stdio.h>
int main(void)
{
int a=65;
printf("%d\n",a);
printf("%c\n",a);
printf("%#x\n",a);
printf("%#o\n",a);
return 0;</span>
}
=======================================
4.c語言輸入函數scanf
1>作用:爲從終端接收用戶的輸入
2>使用方式:使用格式化符控制用戶要輸入的內容
3>注意:用戶輸入的內容必須嚴格按照格式
scanf(“格式化符列表”,變量名地址列表);
<span style="font-size:18px;">#include<stdio.h>
int main(void)
{
int a=100;
scanf("%d",&a);
printf("%d\n",a);
return 0;
}</span>
&取地址符號2、
char ch1 = 65;
char ch2 = 'a';
通過scanf改變這兩個變量的值;
<span style="font-size:18px;">#include<stdio.h>
int main(void)
{
char ch1=65;
char ch2='a';
scanf("%c",&ch1);
getchar();
scanf("%c",&ch2);
printf("ch1=%c,ch2=%c\n",ch1,ch2);
return 0;
}</span>
7.特定問題解決
1)如何將兩個變量的值進行交換
交換前:
int a = 100;
int b = 180;
交換後:
a = 180;
b = 100;
方法一:用中間變量temp
<span style="font-size:18px;">#include<stdio.h>
int main(void)
{
int a=100;
int b=180;
int temp;
temp=a;
a=b;
b=temp;
printf("a=%d,b=%d\n",a,b);
return 0;
}</span>
方法二:
<span style="font-size:18px;">#include<stdio.h>
int main(void)
{
int a=100;
int b=180;
a=a+b;
b=a-b;
a=a-b;
printf("a=%d,b=%d\n",a,b);
return 0;
}</span>