進制編程
1,什麼叫進制學習
逢n進1spa
2,把r進制裝換成十進制.net
2進制,該數值從個位依次 * 2的0次方,*2的1次方,*2的2方,……code
其餘進制也同樣的方法blog
3,十進制轉換成r進制ci
方法 : 除r取餘,直至商爲0,餘數倒敘排列get
練習:博客
十進制的1000轉化成16進制是多少?答案:3e8io
十進制的123轉化成2進制是多少?答案:111101
十進制的123轉化成8進制是多少?答案:173
4,不一樣進制所表明的數值之間的關係
十進制的 3981 轉化成 十六進制是 f8d
十進制的3981和十六進制的f8d所表明的本質上都是同一個數值
自增 自減 三元運算符
自增:前自增 ++i 後自增 I++
前自增和後自增的異同
相同: 都是i加1
不一樣: 前自增先增長再運算,後自增是先運算再自增
爲何會出現自增?
代碼更精煉
自增速度更快
學習自增要明白的幾個問題
1,咱們編程時要應該儘可能要屏蔽掉前自增和後自增的差異
2,自增表達式作好不要做爲一個更大的表達式的一部分來使用
i ++ 和 ++i 單獨成一個語句,不要把它做爲一個完整複合的語句的一部分來使用
如:
int m = i ++ + ++i + i + i++; //這樣的代碼就是一個垃圾,可是就有sb要考試。
2,三目運算符(三元運算符)
int i = 3>2 ? 5 : 1;
3,逗號表達式
(a, b, c, d)
功能:
從左到右執行
最終表達式的值是最後一項的值
while
1,執行順序
格式:
while(表達式){
語句
}
2,與for的相互比較
for和while能夠相互轉化
for的邏輯性更強,更不容易出錯,推薦使用for循環
3,舉例
把本身當成計算機,按照計算機的思惟方式進行分析。
4 何時使用while,何時使用for
根據經驗來判斷……
斐波那契數列
# include <stdio.h> int main(void) { int i = 0; int f1,f2,f3; int n =1; f1 = 1; f2 = 2; printf("請輸入一個正整數:"); scanf("%d",&n); if(n == 1) { f3 = 1; } else if(n == 2 ) { f3 = 2; } else { for(i=3; i <= n; i++ ) { f3 = f1 + f2; f1 = f2; f2 = f3; } } printf("該數值是%d \n",f3); return 0; }
學PHP的小螞蟻 博客 http://my.oschina.net/woshixiaomayi/blog