以下是一個(gè)簡(jiǎn)單的C語(yǔ)言實(shí)現(xiàn)門(mén)禁系統(tǒng)的示例代碼:
#include <stdio.h>
#include <string.h>
#define MAX_STUDENTS 100
typedef struct {
int id;
char name[20];
int accessGranted;
} Student;
int main() {
Student students[MAX_STUDENTS];
int numStudents = 0;
// 添加學(xué)生信息到系統(tǒng)
students[numStudents].id = 1001;
strcpy(students[numStudents].name, "張三");
students[numStudents].accessGranted = 1;
numStudents++;
students[numStudents].id = 1002;
strcpy(students[numStudents].name, "李四");
students[numStudents].accessGranted = 0;
numStudents++;
students[numStudents].id = 1003;
strcpy(students[numStudents].name, "王五");
students[numStudents].accessGranted = 1;
numStudents++;
// 輸入學(xué)生ID進(jìn)行驗(yàn)證
int inputId;
printf("請(qǐng)輸入學(xué)生ID:");
scanf("%d", &inputId);
int i;
int accessGranted = 0;
for(i = 0; i < numStudents; i++) {
if(students[i].id == inputId) {
accessGranted = students[i].accessGranted;
break;
}
}
// 輸出驗(yàn)證結(jié)果
if(accessGranted) {
printf("驗(yàn)證通過(guò),歡迎進(jìn)入!\n");
} else {
printf("驗(yàn)證失敗,禁止進(jìn)入!\n");
}
return 0;
}
這個(gè)簡(jiǎn)單的門(mén)禁系統(tǒng)使用了一個(gè)結(jié)構(gòu)體數(shù)組來(lái)存儲(chǔ)學(xué)生信息,每個(gè)學(xué)生包括ID、姓名和是否有權(quán)限進(jìn)入。在主函數(shù)中,首先添加了幾個(gè)學(xué)生信息到系統(tǒng)中。然后,用戶輸入學(xué)生ID進(jìn)行驗(yàn)證,程序會(huì)遍歷學(xué)生數(shù)組,在找到匹配的ID時(shí)判斷該學(xué)生是否有權(quán)限進(jìn)入。最后,輸出驗(yàn)證結(jié)果。
請(qǐng)注意,這個(gè)示例是一個(gè)非常簡(jiǎn)單的實(shí)現(xiàn),實(shí)際的門(mén)禁系統(tǒng)可能包括更多功能和復(fù)雜的邏輯。