您好,登錄后才能下訂單哦!
用戶登錄時,需要輸入用戶名和密碼。
#include <stdio.h>
int main(void) {
// 定義變量,用來表示用戶名和密碼
char name;
int password;
// 輸入用戶名和密碼
printf("請輸入用戶名:");
scanf("%c", &name);
printf("請輸入密碼:");
scanf("%d", &password);
/*
// 打印登錄菜單
printf("---交換機后臺管理---\n");
printf("1. 登錄\n");
printf("2. 創建賬號\n");
printf("3. 退出\n");
*/
}
在C語言中,任何數據都有一個確定的類型。
C語言,是一種“強類型”語言。
變量是什么
變量,不是數學中的變量。
變量,是一個內存中的一塊存儲空間,即一小塊內存。
為什么要使用變量
程序在運行時,需要保存很多內容常常變化的數據。
比如,射擊類游戲不斷變化的“分數”。
內存的存儲單位-“字節”
內存的記本存儲單位,是字節。
一個字節,包含8位二進制位。
變量名的命名規范
只能包含3種字符(數字、大/小寫字母,下劃線)
不能以數字開頭(即,只能以字母或下劃線開頭)
不能和“關鍵字”同名(c語言內部已經使用的“名稱”),比如類型名int
變量名的最大長度,C語言沒有規定。
最大長度限制,取決于編譯器,一般都在32以上。
變量名,最好“顧名思義”,不用使用漢語拼英!
比如:用name表示姓名,用power表示功率。
變量命令的風格:
int student_age;
int studentAge;
字符類型char
一個字節。
用來存儲小范圍的整數(-128 ~ 127),和“字符”(所有ASCII字符,128個)。
char a = 100;
char b = ‘a’;
整數類型int
4個字節
用來存儲整數,范圍:- (2的31次方) ~ 2的31次方-1
長整形long
long 也就是 long int
用來存儲整數。
在32位系統上,占4個字節,和int相同
在64位系統上,占8個字節。
長長整形long long
用來存儲整數。
8字節。
float類型(單精度浮點類型)
用來存儲帶小數部分的數據。
4個字節
表示方式:按科學記數法存儲,也就是需要存儲“尾數”和“指數”
float x = 1.75E5;
//1.75E5就是1.75乘以10的5次方,只需保存尾數(1.75)和指數(5)
float y = 1.123456789;
//精度只能取值到 1.1234568, 在第7位(整數部分不算)是四舍五入后的值。
表示范圍:-3.410^38~+3.410^38 (不需記憶)
精度:最長7位有效數字(是指7位10進制位)
double類型(雙精度浮點類型)
用來存儲帶小數部分的數據。
8個字節
表示范圍:-1.710^308~1.710^308(不需記憶)
精度:最長16位有效數字(是指16位10進制位)
實例:
int x ; //定義了一個變量,變量名是x, 屬于int類型。
//注意,此時還沒有確定的值
int y = 100; //定義了一個int類型變量,變量名是y, 變量的值是100
理解:
變量保存在內存中。
變量是一個“盒子”
變量名是這個盒子的名稱
變量的值,是盒子內存儲的物品
語法:
變量類型 變量名;
輸入機制
空白字符有:空格,制表符(\t), 回車符
char變量的輸入
scanf("%c", &c); //輸入 100 ,實際只讀了字符1
printf("%c\n", c); //輸出 1
printf("%d\n", c); //輸出49, 字符'1'的ASCII值就是49
int變量的輸入
int a;
scanf("%d", &a); //輸入100
printf("a=%d\n", a); //輸出a=100
scanf("%d", &a); //輸入a, 不是整數,輸入失敗!a依舊保持原來的值
printf("a=%d\n", a); //輸出a=100
char變量使用%d輸入[ERROR]
char a, b;
scanf("%d", &a); //輸入 256 ,按4個字節存儲,第2個字節保存到b變量中!
printf("a=%d,b=%d\n", a, b); //輸出a=0,b=1
float變量的輸入
scanf("%f", &x); //輸入3.14
printf("x=%f", x); //輸出 x=3.140000
double變量的輸入
scanf("%lf", &x); //輸入3.14
printf("x=%f", x); //輸出 x=3.140000
printf("x=%lf", x); //輸出 x=3.140000
輸入double類型變量的值, 必須使用lf 而不是f, 否則輸入失敗。
輸出double類型變量的值,則可以使用lf或者f, 沒有區別。
scanf注意:
1.當使用%s讀取字符串串時,遇到空白字符(空格、制表符,回車符)就結束
2.使用%c讀取字符時,任何字符都能讀取,但只讀一個
3.使用%d,%f,%lf 讀取nt , float, double類型數據時,會自動轉換成對應數據,
但是如果遇到其他字符(比如a),就會讀取失敗
getchar
char c;
c = getchar(); //輸入一個字符
printf("c=%c\n", c);
putchar
char c = 'a';
putchar(c); //輸出1個字符, printf(“%c”, c);
getc
char c;
c = getc(stdin); //輸入一個字符, stdin表示“標準輸入設備”,默認是鍵盤
printf("c=%c\n", c);
putc
char c = 'b';
putc(c, stdout); //輸出1個字符
1.獨立實現該項目。
2.讓用戶輸入一個圓的半徑,然后輸出這個圓的面積和周長。
3.讓用戶輸入一個小寫字母,然后輸出對應的大寫字母。
該項目存在的問題:
1.用戶名,只能輸入一個字符,不能接收很長的用戶名。
2.密碼很可能不是整數,很可能包含字母和數字。
密碼不能隱藏,都回顯出來了,不安全。(在講循環時再解決)
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。