C 语言分支结构
#import <Foundation/Foundation.h>//宏定義
//宏定義 一般使用于大型項(xiàng)目開(kāi)發(fā)當(dāng)中,或者在工作中經(jīng)常使用的一些數(shù)據(jù)或者是接口(網(wǎng)址)我們使用宏定義的時(shí)候可以這樣理解:理解為為我們的接口或者數(shù)據(jù)重新起一個(gè)名字用于代表這些數(shù)據(jù)或者接口.
//
//#define Num 123456int main(int argc, const char * argv[]) {// int num1 = Num;
// printf("%d\n",num1);
// int num2 = Num;
// printf("%d\n",num2);
// //.../***BOOL類(lèi)型表示是一種表示非真即假的數(shù)據(jù)類(lèi)型(YES代表的是真(1),NO代表的是假(0)),他和我們c語(yǔ)言中所說(shuō)的非0即真可以對(duì)應(yīng)去記憶(它在內(nèi)存中占一個(gè)字節(jié),存儲(chǔ)的數(shù)據(jù)是(YES和NO));//首先定義一個(gè)BOOL類(lèi)型的變量,關(guān)系運(yùn)算符,關(guān)系運(yùn)算符:>,>=,<,<=,!=,==,用于比較兩個(gè)常量(數(shù)值)的大小,比較的結(jié)果用于BOOL來(lái)接收,BOOL值返回的只有兩種(YES->>1,NO->>0);使用%d進(jìn)行占位.// */
// BOOL isTure = 5>4;
// printf("%d\n",isTure);// BOOL isTure1 = 6>=6;
// printf("%d\n",isTure1);
//
//
// int a = 10;
// int b = 10;
// BOOL isTure2 = a!=b;
// printf("%d\n",isTure2);
// /***邏輯運(yùn)算符:&&邏輯與:表達(dá)的是我們表達(dá)式兩邊同時(shí)為真的時(shí)候,我們整個(gè)表達(dá)式的結(jié)果才會(huì)為真,(關(guān)鍵字:并且,且,同時(shí))口訣:同真則真---->短路現(xiàn)象:一假即假短路:如果第一個(gè)表達(dá)結(jié)果為假,那么他就不再進(jìn)行后邊的判斷,所以整個(gè)表達(dá)式結(jié)果 (返回值)為假(0).|| 邏輯或:表示我們表達(dá)式兩邊同時(shí)為假的時(shí)候我們整個(gè)表達(dá)式的結(jié)果為假(0),關(guān)鍵字(或者);口訣;同假即假--->短路現(xiàn)象:一真即真短路;如果第一個(gè)表達(dá)式結(jié)果為真,那么它就不再進(jìn)行后邊的判斷,所以整個(gè)表達(dá)式結(jié)果為真(1)!邏輯非:顛倒是非,表示取反*//*//這是邏輯與的短路現(xiàn)象int a = 10;int b = 9;// 0 && 1int result = a<b && a>b;printf("%d\n",result);//邏輯或的短路現(xiàn)象// 1 || 0int result1 = a>b || a<b;printf("%d\n",result1);*///
// int a = 0;
// int result = !(!(!a));
// printf("%d\n",result);// int a = 7;
// int b = 0;
// int result = 0;
// result = a && b;
// printf("%d\n",result);
//
//
// int a = 9;
// int b = 7;
// int c = 10;
// // 1 || 0
// int result = a<c ||b >c;
// printf("%d\n",result);
//
#pragma mark---sizeof--//sizeof:計(jì)算內(nèi)存中所占的字節(jié)數(shù)// sizeof(12.3f);// sizeof(4);// sizeof('h');// int result = sizeof(4);
// printf("%d\n",result);
// int result1 = sizeof(12.3f);//如果沒(méi)有后綴f我們系統(tǒng)默認(rèn)是double類(lèi)型
// printf("%d\n",result1);
// int result2 = sizeof('h');//打印出占4個(gè)字節(jié),是因?yàn)檗D(zhuǎn)換其對(duì)應(yīng)的ascii碼值
// printf("%d\n",result2);
//
//
//
// //只有常量和變量的情況下我們才可以省略sizeof的()
// int a;
// int result3 = sizeof a;
// printf("%d\n",result3);
//
//
// /*程序的三種結(jié)構(gòu):順序(就是按順序從上到下,從左到右依次執(zhí)行)分支:(通過(guò)一個(gè)判斷,在兩個(gè)可選的語(yǔ)句序列之間,選擇一個(gè)執(zhí)行)循環(huán):(在滿(mǎn)足某個(gè)條件的情況下,重復(fù)反復(fù)的執(zhí)行)分支:if(條件表達(dá)式){語(yǔ)句; }if(條件表達(dá)式){語(yǔ)句; } else{ 語(yǔ)句; };if(條件表達(dá)式){語(yǔ)句; } else if(條件表達(dá)式){語(yǔ)句;}else if(...){...}.... else {語(yǔ)句;};**/
// if (1) {
// printf("打豆豆~~");
// }// 練習(xí):提示用戶(hù)輸入一個(gè)分?jǐn)?shù),如果分?jǐn)?shù)大于250,就輸出,我就是我,顏色不一樣的煙火,否則就輸出你連250都不如
// //首先定義一個(gè)變量去接收我們的分?jǐn)?shù)
// int a;
// //使用printf提示用戶(hù)輸入分?jǐn)?shù)
// printf("用戶(hù)輸入分?jǐn)?shù)");
// //使用scanf阻塞函數(shù)
// scanf("%d",&a);
// //if
// if(a>250){
// printf("我就是我,顏色不一樣的煙火");
// }
// else
// {
// printf("你連250都不如");
// }
//
// // //提示用戶(hù)輸入一個(gè)分?jǐn)?shù),如果分?jǐn)?shù)等于250,就輸出,我就是250,嘿嘿嘿,如果分?jǐn)?shù)大于250,就輸出,我就是我,顏色不一樣的煙火,如果分?jǐn)?shù)小于250,就輸出你連二傻子都不如.
// int a;
// printf("用戶(hù)輸入分?jǐn)?shù)");
// scanf("%d",&a);
// if(a==250){
// printf("我就是250,嘿嘿嘿");
// }
// else if(a>250){
// printf("我就是我,顏色不一樣的煙火");
// }
// else if(a<250){
// printf("你連二傻子都不如");
// }
// //提示輸入一個(gè)成績(jī)?nèi)绻?等于100分就輸出 寶貝真棒!!么么噠,//如果不等于100 就輸出 看法寶!!!啪啪啪
// int a;
// printf("輸入一個(gè)成績(jī)");
// scanf("%d",&a);
// if (a==100) {
// printf("寶貝真棒!!么么噠");
// }
// else if(a!=100){
// printf("看法寶!!!啪啪啪");
// }//輸入一個(gè)錢(qián)數(shù),如果小于100,就輸出連100塊都不給我,如果大于100就輸出,肥皂已備好!!
// int a;
// printf("輸入一個(gè)錢(qián)數(shù)");
// scanf("%d",&a);
// if(a<100){
// printf("連100塊都不給我");
// }
// else if(a>100){
// printf("肥皂已備好!!");
// }//如果在if后邊()加了 ; 代表的是我們if語(yǔ)句結(jié)束,和我們下邊的{ }花括號(hào)內(nèi)的內(nèi)容沒(méi)有任何關(guān)系,不管條件表達(dá)式成立與否它都會(huì)執(zhí)行
// if (1){
// printf("Hello!!\n");
// }
////
// char a;
// printf("請(qǐng)輸入一個(gè)字符");
// scanf("%c",&a);
// if(a=='m'){
// printf("男性");
// }/*輸?入?一個(gè)年份,判斷該年份是否是閏年?如果是閏年,則輸出該年是閏年,否則輸出該年不是閏年。滿(mǎn)?足閏年的條件1. 能被400整除。(如2000年是閏年,1900年不是閏年)2.能被4整除,但是不能被100整除。(如2004年就是閏年,2010年不是閏年)*/// //提示用戶(hù)輸入年份
// printf("輸?一個(gè)年份");
// //定義一個(gè)變量year
// int year = 0;
// //輸入年份
// scanf("%d",&year);
//
// if((year%400==0)||(year%4==0&&year%100!=0)){
// printf("該年分是閏年");
// }else{
// printf("該年分不是閏年");
// }
// //請(qǐng)輸入兩個(gè)數(shù)字,如果a>b那么就輸出a,如果a<b那么就輸出b
// printf("請(qǐng)輸入兩個(gè)數(shù)字");
// //定義兩個(gè)變量
// int a,b;
// //輸入scanf函數(shù)
// scanf("%d,%d",&a,&b);
// //進(jìn)行比較
// if(a>b){
// printf("%d",a);
// }else if(a<b){
// printf("%d",b);
// }
//
//
#pragma mark--條件運(yùn)算符--/*//格式 ? :條件表達(dá)式 ? 表達(dá)式1 : 表達(dá)式2如果條件表達(dá)式為真 ,那么我們返回的值表達(dá)式1的值如果條件表達(dá)式為假 那么我們返回的是表達(dá)式2的值*//*int a = 8;int b = 6;// 8<6?8:6int c = a<b?a:b;printf("c = %d\n",c);*///求三個(gè)數(shù)的最大值
// int a = 0,b = 0,c = 0;
// int d = 0;
// printf("請(qǐng)輸入三個(gè)數(shù)\n");
// scanf("%d,%d,%d",&a,&b,&c);
// //先求出a,b的最大值
// d = a>b?a:b;
// //在讓我們兩個(gè)求出的最大值和第三個(gè)數(shù)進(jìn)行比較
// d = d>c?d:c;
// printf("d = %d\n",d);//
// int a = 8;
// int b = 7;
// int c = 6;
// int d = ((a>b?a:b)>c?(a>b?a:b):c);
// printf("%d",d);//如果容控制臺(tái)輸入一個(gè)成績(jī),如果成績(jī)?cè)?0-100之間,是輸出優(yōu)秀,如果在60-80,輸出的中等,否則輸出不及格.
//
// printf("輸入一個(gè)成績(jī)");
// int a;
// scanf("%d",&a);
// if(a>=80&&a<=100){
// printf("優(yōu)秀");
// }else if(a>=60&&a<80){
// printf("中等");
// }else if(a<60){
// printf("不及格");
// }
//
// 從鍵盤(pán)輸?入?一個(gè)字符,
// 如果是數(shù)字 打印 this is digital,
// 如果是大寫(xiě)字母 打印 this is capital letter,
// 如果是 小寫(xiě)字母 打印 this is letter,
// 如果是其他字符 打印 other。/* printf("請(qǐng)輸入一個(gè)字符");char a;scanf("%c",&a);if(a>=48&&a<=57){printf("this is digital\n");}else if(a>=65&&a<=90){printf("this is capital letter");}else if(a>=97&&a<122){printf("this is letter");}else{printf("other");}*//*switch格式Switch /(整型表達(dá)式){case 值1:語(yǔ)句1;printf("...");break;}case 值2:{語(yǔ)句2;printf(".....");break;}....default:{語(yǔ)句n;break;}}break 用在switch...case中 用于解說(shuō)某個(gè)case分支,然后執(zhí)行switch之外的語(yǔ)句.從控制臺(tái)輸?入1~4,對(duì)應(yīng)打出春夏秋冬的英?文詞*///首先定義個(gè) 整型變量
// int a = 0;
// printf("請(qǐng)選擇季節(jié):1(春季)2(夏季)3(秋季)4(冬季)\n");
// scanf("%d",&a);
// switch(a){
// case 1:{
// printf("Spring\n");break;
// }
// case 2:{
// printf("summer\n");break;
// }
// case 3:{
// printf("autumn\n");break;
// }
// case 4:{
// printf("winter\n");break;
// }
// default:{
// printf("這是什么鬼節(jié)日!!\n");break;
// }
//
//
// }//Switch:用于我們知道范圍的一個(gè)判斷語(yǔ)句,而且用于判斷較少的時(shí)候//如果判定較多時(shí)我們使用if;(不知道范圍使用)--且只知道具體范圍//
// int a = 0;
// printf("請(qǐng)選擇月份,查看天數(shù)\n");
// scanf("%d",&a);
// switch(a){
// case 1:
// case 3:
// case 5:
// case 7:
// case 8:
// case 10:
// case 12:{
// printf("31天\n");
// break;
// }
// case 4:
// case 6:
// case 9:
// case 11:{
// printf("30天\n");
// break;
// }
// case 2:{
// printf("28天\n");
// break;
// }
//
// }/*枚舉是?一種數(shù)據(jù)類(lèi)型,是將?人能夠識(shí)別的標(biāo)識(shí)符和計(jì)算機(jī)能識(shí)別數(shù)字結(jié)合起來(lái)。作?用:羅列出所有的可能性,每?一種可能都是?一個(gè)枚舉值,每?一個(gè)枚舉值都對(duì)應(yīng)?一個(gè)整數(shù)值*//* //格式:Enum:enum 枚舉名 {枚舉值表};目的是提高我們程序的可讀性,作用:將人能夠是別的標(biāo)示符和計(jì)算機(jī)能識(shí)別數(shù)字結(jié)合起來(lái)*///定義一個(gè)枚舉//枚舉 默認(rèn)從零開(kāi)始enum JiJie{Spring,summer,full,//full = 1這樣寫(xiě)是錯(cuò)誤的,因?yàn)闀?huì)和我們上邊的summer產(chǎn)生沖突(spring)默認(rèn)為零 summer為1,所以沖突
winter};//輸入對(duì)應(yīng)的數(shù)字,打印出對(duì)應(yīng)的季節(jié)printf("請(qǐng)輸入數(shù)字:\n");enum JiJie jijie = 0;scanf("%d",&jijie);switch (jijie){case Spring:{printf("春天穿褲衩!!");break;}case summer:{printf("夏天穿棉襖!!");break;}case full :{printf("秋天穿秋褲!!");break;}case winter :{printf("冬天吃冰棍!!");break;}default:{printf("這叫什么事兒!!");break;}}return 0;
}
?
轉(zhuǎn)載于:https://www.cnblogs.com/huyibo/p/5475200.html
總結(jié)
- 上一篇: [BZOJ1061][Noi2008]志
- 下一篇: 边工作边刷题:70天一遍leetcode