真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

[小白到大牛之路5]交換機后臺管理之權(quán)限判斷-創(chuàng)新互聯(lián)

項目需求

判斷用戶名和密碼是否正確。

成都創(chuàng)新互聯(lián)技術(shù)團(tuán)隊十年來致力于為客戶提供成都做網(wǎng)站、成都網(wǎng)站設(shè)計、高端網(wǎng)站設(shè)計、營銷型網(wǎng)站、搜索引擎SEO優(yōu)化等服務(wù)。經(jīng)過多年發(fā)展,公司擁有經(jīng)驗豐富的技術(shù)團(tuán)隊,先后服務(wù)、推廣了1000+網(wǎng)站,包括各類中小企業(yè)、企事單位、高校等機構(gòu)單位。

項目實現(xiàn)

#include 

int main(void) {
    // 定義變量,用來表示用戶名和密碼
    //char name;
    char name[32];
    //int password;
    char password[16];

    // 輸入用戶名和密碼
    printf("請輸入用戶名:");
    scanf("%s", name);
    printf("請輸入密碼:");
    scanf("%s", password);

    if (strcmp(name, "admin") == 0 && 
        strcmp(password, "123456") == 0) {
        // 打印功能菜單
        printf("---交換機后臺管理---\n");
        printf("1. 創(chuàng)建賬號\n");
        printf("2. IP管理\n");
        printf("3. 退出\n");
    } else {
        printf("用戶名或密碼錯誤!\n");
    }

    return 0;
}

[小白到大牛之路5] 交換機后臺管理之權(quán)限判斷

項目精講

1.字符串的比較運算

可參考c/c++手冊
百度網(wǎng)盤鏈接:https://pan.baidu.com/s/1dZJLwE

使用strcmp函數(shù)

#include
int strcmp( const char str1, const charstr2 );

比較規(guī)則:
按順先從前往后比較
同序號的字符按“ASCII”碼值比較
直到遇到對應(yīng)字符不等或者字符串結(jié)束

返回值:
str1 < str2時, 返回值< 0(有些編譯器返回 -1)
str1 > str2時, 返回值> 0(有些編譯器返回 1)

str1 等于 str2時, 返回值== 0

demo

#include 

int main(void) {
    char name[32];
    int ret;

    printf("請輸入您的姓名:");
    scanf("%s", name);

    ret = strcmp(name, "Rock");
    printf("ret=%d\n", ret);

    return 0;
}

使用strncmp函數(shù)

#include
int strncmp( const char str1, const charstr2, size_t count );
最多比較字符串str1和str2的前count個字符。

demo

#include 
#include 

int main(void) {
    char name1[32] = "Rock";
    char name2[32];
    int ret;

    fgets(name2, sizeof(name2), stdin); //輸入Rock

    ret = strcmp(name1, name2);
    printf("ret=%d\n", ret);

    //
    ret = strncmp(name1, name2, strlen(name1));
    printf("ret=%d\n", ret);

    return 0;
}

### 2.其他數(shù)據(jù)類型的比較運算
char, int, float, double數(shù)據(jù)的比較都使用:
大于: >
大于或等于: >=
小于: <
小于或等于: <=
不等于: !=
等于: == (注意:不是 = )

比較運算的結(jié)果:(邏輯值)
結(jié)果為“真”: 1
結(jié)果為“假”: 0

#include 

int main(void) {
    int a = 100;
    int b = 200;
    int ret;

    ret = a > b;
    printf("ret=%d\n", ret);   //ret=0

    ret = a < b;
    printf("ret=%d\n", ret);   //ret=1
    return 0;
}

比較運算的使用場合:
用于“條件判斷”

3.C語言的布爾類型

C語言主要標(biāo)準(zhǔn)

[小白到大牛之路5] 交換機后臺管理之權(quán)限判斷

C89標(biāo)準(zhǔn)中的邏輯值

使用0和1表示邏輯值
[小白到大牛之路5] 交換機后臺管理之權(quán)限判斷
dome

#include 

int main(void) {
    int a = 100;
    int b = 200;
    int  ret;     //或者 char ret; 

    ret = a > b;
    if (ret) {
        printf("a > b\n");
    } else {
        printf("a <= b\n");
    }

    return 0;
}

C99標(biāo)準(zhǔn)中的邏輯值(兼容C89)

使用bool類型表示邏輯類型
使用 true 表示真
使用 false表示假

注意:需要包含頭文件 stdbool.h

#include 
#include 

int main(void) {
    int a = 100;
    int b = 200;
    //int ret;     
    bool  ret;

    ret = a > b;
    if (ret) {  //即: if (ret == true) 
        printf("a > b\n");
    } else {
        printf("a <= b\n");
    }

    //true和false是"bool類型的常量"
    printf("true=%d\n", true);
    printf("false=%d\n", false);

    return 0;
}

注意:大部分C項目使用的是C89標(biāo)準(zhǔn)中的邏輯值表示方式。



4.邏輯運算

邏輯與 &&
[小白到大牛之路5] 交換機后臺管理之權(quán)限判斷
都為真,邏輯與才是真
只要有一個是假, 邏輯與就是假

相當(dāng)于“而且”

應(yīng)用場景:
當(dāng)需要兩個條件都滿足時,就使用邏輯與

特別注意:
條件1 && 條件2
當(dāng)條件1為真時,才去判斷條件2
當(dāng)條件1為假時,就不再判斷條件2

#include 

int main(void) {
    int x = 0;
    int a;

    printf("請輸入一個整數(shù):");
    scanf("%d", &a);

    if ((a > 5) && ((x=100) > 90)) {
        printf("OK\n");
    }

    printf("x=%d\n", x);

    return 0;
}

### 邏輯或 ||
[小白到大牛之路5] 交換機后臺管理之權(quán)限判斷
都為假,邏輯與才是真
只要有一個是真, 邏輯與就是真

相當(dāng)于“或者”

應(yīng)用場景:
只需要滿足任意一個條件時,就使用邏輯或

特別注意:
條件1 || 條件2
當(dāng)條件1為真時,才不再判斷條件2
當(dāng)條件1為假時,才判斷條件2

#include 

int main(void) {
    int x = 0;
    int a;

    printf("請輸入一個整數(shù):");
    scanf("%d", &a);

    if ((a > 5) || ((x=100) > 90)) {
        printf("OK\n");
    }

    printf("x=%d\n", x);

    return 0;
}

邏輯非 !

[小白到大牛之路5] 交換機后臺管理之權(quán)限判斷

相當(dāng)于“不”

應(yīng)用場景:
當(dāng)需要不滿足某條件時,就使用邏輯或

特別注意:
邏輯非,只對一個條件進(jìn)行運算!
是一種“單目運算符”

#include 

int main(void) {
    int age;

    printf("請輸入您的年齡: ");
    scanf("%d", &age);

    //特別注意要使用()
    //if ( ! age >= 30) 將導(dǎo)致非預(yù)期結(jié)果, !會和age結(jié)合
    if ( !(age >= 30) ) { 
        printf("您還不到30\n");
    } else {
        printf("您已過而立之年!\n");
    }

    return 0;
}

5.其它運算操作

算術(shù)運算
[小白到大牛之路5] 交換機后臺管理之權(quán)限判斷

賦值運算

x = 10; //把x的值設(shè)置為10, 把10寫到變量x中。
x = 10 + a;

左邊必須是變量
“優(yōu)先級”很低,只比 ","(逗號元素符)高。
x = (3 + 5); //先計算"+", 再計算“=”

復(fù)合賦值運算

x += 10; // x = x + 10
x -= 10; // x = x - 10

類的還有: *= , /=, %= 等。

位運算

在后續(xù)章節(jié)中學(xué)習(xí)。
自增自減運算
[小白到大牛之路5] 交換機后臺管理之權(quán)限判斷
[小白到大牛之路5] 交換機后臺管理之權(quán)限判斷
注意:
1.只能對變量做++和--運算,不能對變量和表達(dá)式做++和--運算
5++; //ERROR
(3+x)++; //ERRO
2.建議盡量使用前綴自增(自減),以避免錯誤。

逗號運算符
優(yōu)先級最低。

#include 

int main(void) {
    int x;

    // 先計算 x = 3+5,  再計算3*5
    x = 3+5, 3*5, 10/5;
    printf("x=%d\n", x);  //x=8

    //取最后一個表達(dá)式的值,作為整個“逗號表達(dá)式”的值
    x = (3+5, 3*5, 10/5);  
    printf("x=%d\n", x); //x=2

    return x;
}

三目運算符

條件 ? 表達(dá)式1 :表達(dá)式2

如果條件為真,就取表達(dá)式1作為整個表達(dá)式的值
如果條件為假,就取表達(dá)式2作為整個表達(dá)式的值

#include 

int main(void) {
    int year;
    int holiday;

    printf("請輸入您的工作年限: ");
    scanf("%d", &year);

    holiday = year > 10 ? 20 : 5; 
    printf("您的年假有%d天\n", holiday);

    return 0;
}

6.類型轉(zhuǎn)換

類型轉(zhuǎn)換的概念
為什么需要“類型轉(zhuǎn)換”
參與運算的兩個操作數(shù)的數(shù)據(jù)類型,必須相同!

類型轉(zhuǎn)換的類別:
1.隱式類型轉(zhuǎn)換
自動完成轉(zhuǎn)換!
1)算數(shù)轉(zhuǎn)換
2)賦值轉(zhuǎn)換
3)輸出轉(zhuǎn)換

2.強制類型轉(zhuǎn)化

算數(shù)轉(zhuǎn)化
(+,-,*,/,%)
char , int, long, long long, float, double

賦值轉(zhuǎn)換

#include 

int main(void) {
    int x; 
    x = 3.14 * 10;  // 31.4 轉(zhuǎn)換為int類型,因為賦值符號的左邊變量的類型是int類型

    printf("%d\n", x);

    return 0;
}

輸出轉(zhuǎn)換

#include 

int main(void) {
    printf("%c\n", 255+50);  //305  ->  49 ('1');
    printf("%d\n", 255+50);
    return 0;
}

int類型數(shù)據(jù), 按照%f格式輸出時,將得到錯誤的輸出
float(或double) 類型數(shù)據(jù),按照%d格式輸出時,將得到錯誤的輸出
強制類型轉(zhuǎn)化

#include 

int main(void) {
    int x = 257 + 100;
    printf("%d\n", x);

    x = (char)257 + 100;
    printf("%d\n", x);

    return 0;
}

7.運算符優(yōu)先級

一共有15個級別!

不需強制記憶,只需要掌握以下常用的優(yōu)先級:

高優(yōu)先級:( )和[ ]
倒數(shù)第二低優(yōu)先級:賦值和復(fù)合賦值(=, +=, -= ...)
最低優(yōu)先級:逗號表達(dá)式

! > 算術(shù)運算符 > 關(guān)系運算符 > && > || > 賦值運算符

x = ! 3 + 4 < 5 && 6 > 7 || 8 > 7;
等效于:
x = ((!3 + 4 < 5) && (6 > 7)) || (8 > 7);

8.if條件判斷語句

demo1
``
#include

int main(void) {
int salary;

printf("請輸入你的期望年薪:");
scanf("%d", &salary);

if (salary >= 200000) {
    printf("你需要精通C/C++開發(fā)\n");
} 

printf("OK\n");

return 0;

}

**demo2**

#include

int main(void) {
char answer[16];

printf("你有房嗎? ");
scanf("%s", answer);
if (strcmp(answer, "yes") == 0) {
    printf("OK");
} else {
    printf("你是一個好人!\n");
}

return 0;

}


**demo3**

#include

int main(void) {
char answer[16];

printf("有房嗎? ");
scanf("%s", answer);
if (strcmp(answer, "yes") == 0) {
    printf("有房,不錯\n");
} else if (printf("有車嗎? ") && 
    scanf("%s", answer) && 
    strcmp(answer, "yes")==0) {
    printf("有車,還行\(zhòng)n");
} else if (printf("有病嗎? ") && 
    scanf("%s", answer) && 
    strcmp(answer, "no")==0) {
    printf("健康就好!\n");
} else {
    printf("你是一個好人!\n");
}

return 0;

}


流程圖
![](https://s1.51cto.com/images/blog/201912/18/a3634703907fc6eeb629700c168dcb37.png?x-oss-process=image/watermark,size_16,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_90,type_ZmFuZ3poZW5naGVpdGk=)
![](https://s1.51cto.com/images/blog/201912/18/3dcc12cf3c78f89037e4e42214ee2c88.png?x-oss-process=image/watermark,size_16,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_90,type_ZmFuZ3poZW5naGVpdGk=)
**項目練習(xí)**
1.獨立實現(xiàn)該項目。
2.讓用戶輸入一個成績,然后輸出這個成績的等級。
   0-59:  不及格
   60-79: 及格
   80-89: 良好
   90-100: 優(yōu)秀
   其它:非法成績

另外有需要云服務(wù)器可以了解下創(chuàng)新互聯(lián)cdcxhl.cn,海內(nèi)外云服務(wù)器15元起步,三天無理由+7*72小時售后在線,公司持有idc許可證,提供“云服務(wù)器、裸金屬服務(wù)器、高防服務(wù)器、香港服務(wù)器、美國服務(wù)器、虛擬主機、免備案服務(wù)器”等云主機租用服務(wù)以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡單易用、服務(wù)可用性高、性價比高”等特點與優(yōu)勢,專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應(yīng)用場景需求。


網(wǎng)站標(biāo)題:[小白到大牛之路5]交換機后臺管理之權(quán)限判斷-創(chuàng)新互聯(lián)
URL標(biāo)題:http://weahome.cn/article/dpddjs.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部