學了c語言一周多了感覺自己對語法了解很多,還有點膨脹,做到編程題才知道自己思路很少,是很難把自己想的寫出來,總感覺差點什么,現在給我整的有點害怕做編程題了。
下面正片開始:
1.if else語句:可以構成多重判斷。
if 可以嵌套if else 反之 else 也能嵌套if else格式這里要寫成else if。
if后面的表達式,不能有分號,加上分號就不能控制下面一條語句,如果想控制多條語句使用大括號。
2.懸空else問題:如果有多個if else,可以記住一條的規則,else總是跟最接近的if匹配。
if判斷后面為假,后面不運行。
3.關系操作符:用于2個操作數比較大?。恢荒苡?表示假,1表示真,不能非0表示真,這里是特殊的。
3.條件操作符:也叫三目操作符,是C語言為一個三目操作符。用于簡單的編程
形式如下:exp1?exp2:exp3//3個操作數,?和:組成
解釋:如果表達式1為真,就等于表達式2,如果表達式為假,就等于表達式3的值
4.邏輯取反操作符
!:邏輯取反運算符(改變單個表達式的真假)。
&&:與運算符,就是并且的意思(兩邊表達式都為真,則為真,否者為假)。
|| :或運算符,就是或者的意思(兩邊至少有一個表達式為真,則為真,否者為假)。
例題:
4.1邏輯取反運算符
int a = 0;
if (!a)//為真打印
printf("fufu")
4.2; 與運算符
練習:如果我們說月份是3月到5月是春天
int month = 0;
scanf("%d", &a);
if (month >= 3 && month >= 5)
printf("春天");
4.3或運算符
練習:我們說一年月份是12月或者1月或者2月是冬天
int a = 0;
scanf("%d", &a);
if (a == 12 || a == 1 || a == 2)
printf("冬天");
4.4練習閏年的判斷
輸入一個年份year,判斷year是否是閏年
閏年判斷的規則:
1.能被4整除并且不能被100整除是閏年
2.能被400整除是閏年
int year = 0;
scanf("%d", &year);
if (year % 4 == 0 && year % 100 != 0)//if (year % 4 == 0 && year % 100 != 0) ||(year % 400 == 0)
? printf("是閏年\n")
? ? ? if (year % 400 == 0)
? ? ? printf("是閏年\n");
4.5短路:很重要
c語言邏輯運算符還有一個特點,它總是先對左側的表達式求值,再對右側求值,這個順序是保證的。
如果左邊表達式滿足邏輯運算的條件,就不再對右邊的表達式求職,這種叫短路
? 總結短路運算:
? a && b, 右邊不再計算.
? a || b, a為真,右邊不在計算.
5.switch
switch語句是一種特殊形式的if...else結構,用于判斷條件有多個結果的情況.它吧多重else i發改成更易用,可讀性更好形式。
? 1.swit后面(必須是整形表達式expression)
? 2.case后的值,必須是整形常量表達式
? 3.case后的值,必須是整形常量表達式
? 4.default:
? 根據上面代碼中,根據表達式expression的值,執行相應case分支,如果找不到對應的值,就執行default分支;
switch:表達式
int a =0;
//int m = 4;
scanf("%d", &a);
switch (a % 3)
{
case 1://決定入口
printf("余數是1\n")
break//決定出口
case m/2://m這里不行,必須是整形常量表達式
printf("余數是2\n")
case 0://可以常量加常量
printf("余數是0\n")
switch語句中的bareak:想要完成分支寫法必須有break,因為case決定程序入口,bareak決定程序的出口;沒用順序要求,只要滿足實際要求就可以。
選擇結構:一條路走到黑
選擇結構:if switch
循環結構:while for do while
6.while循環
while語句的語法結構和if語句非常相似。
while(表達式)如果為真就執行,直到為假不在執行,循環體想包換多條語句,可以加上大括號。
while語句包含3個部分:初始化部分,判斷部分,調整部;這3個部分在while循環里面是分開的。
7.for循環
7.1語法形式
//for循環是三種循環使用中最多的,for循環語法形式如下:
1:for(表達式1;表達式2:表達式3)
2:語句//如果循環體想包含更多的語句,可以加上大口號
表達式1:用于循環表變量初始化
表達式2:循環結束條件判斷
表達式3:用于循環變量調整
for循環是把這3個表達式放在一起。跟while循環區別