C語言問題,怎麼給系統設定一個密碼
- 2022-11-21
void main()
{
int menunum=10;
char c;
while(menunum)
{
printf(“\n\t\t\t 人口資訊管理系統(可輸入漢字)\n”);
printf(“ |^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^|\n”);
printf(“ |1、輸入人口資料\t\t2、修改人口資料\t\t3、查詢 |\n”);
printf(“ |4、排列人口資料\t\t5、列印人口資訊\t\t6、刪除人口資料|\n”);
printf(“ |7、備份檔案 \t\t8、恢復檔案 \t\t9、清除已刪資料|\n”);
printf(“ |0、結束程式 \t\t\t\t\t |\n”);
printf(“ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ \n”);
printf(“\n 操作方式:”);
scanf(“%d”,&menunum);
switch(menunum)
{
case 0:return;
case 1:{CreatPeople();break;}
case 2:{ChangePeople();break;}
case 3:{Find();break;}
case 4:{SortPeople();break;}
case 5:{PrintPeople();break;}
case 6:{DeletePeople();break;}
case 7:{BackPeople();break;}
case 8:{UpPeople();break;}
case 9:{ClearPeople();break;}
}
printf(“按回車鍵繼續\n”);c=getchar();c=getchar();
system(“cls”);/*清屏*/
}
怎麼給系統設定一個密碼,輸入對了直接進入選單,3次輸入不對直接退出程式
void main(){
int menunum; //
char c;
int count=0;
do{
char inputs[10]; //
printf(“輸入你的密碼: ”); //
scanf(“%s”,inputs); //
if(strcmp(inputs,“password”)==0) //自己設定密碼為password {
printf(“\n\t\t\t 人口資訊管理系統(可輸入漢字)\n”);
printf(“ |^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^|\n”);
printf(“ |1、輸入人口資料\t\t2、修改人口資料\t\t3、查詢 |\n”);
printf(“ |4、排列人口資料\t\t5、列印人口資訊\t\t6、刪除人口資料|\n”);
printf(“ |7、備份檔案 \t\t8、恢復檔案 \t\t9、清除已刪資料|\n”);
printf(“ |0、結束程式 \t\t\t\t\t |\n”);
printf(“ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ \n”);
printf(“\n 操作方式:”);
scanf(“%d”,&menunum);
switch(menunum)
{
case 0:return;
case 1:{CreatPeople();break;}
case 2:{ChangePeople();break;}
case 3:{Find();break;}
case 4:{SortPeople();break;}
case 5:{PrintPeople();break;}
case 6:{DeletePeople();break;}
case 7:{BackPeople();break;}
case 8:{UpPeople();break;}
case 9:{ClearPeople();break;}
default: //switch中要加default的條件保證程式的健壯性
break;
}
printf(“按回車鍵繼續\n”);
c=getchar();c=getchar();
//system(“cls”);/*清屏*/
}
else //該保證三次輸入錯誤即程式結束
{
count++; //要初始化
if(count==3)
{
break;
return;
}
}
}while(1);
return;
}
int key()
{
int flag;
printf(“請輸入系統密碼:”);
scanf(“%d”,&flag);
if(flag==78965) //這個78965是在後臺設定的密碼,也可以設定字母數字混合密碼,原理一樣
return 1;
else return 0;
}
然後下面接你的主函式
void main()
{
if (key()==0) //呼叫這個密碼驗證函式
{
printf(“密碼錯誤”);
exit(0); //密碼錯誤就退出,你再想一下密碼3次錯誤才退出如何修改
}
……。。
}
1、用一個字元陣列來存密碼
再用一個字元陣列接收你的輸入,然後用strcmp
來比較,如果返回0則密碼是正確的
2、例程:
#include “stdio。h”
#include “string。h”
int main()
{
char mima[100]=“YuanShi888”;
char input[100]={0};
printf(“請輸入密碼:”);
gets(input);
if(strcmp(mima,input)==0)
printf(“恭喜你,密碼正確!\n”);
else
printf(“對不起,密碼輸入錯誤!\n”);
}
#include
void key_words()
{
char mima[4]=“mima”;
char yourwords[4];
int i;
printf(“Please enter your key number: ”);
scanf(“%s”,yourwords);
for(i=0;i<3;i++)
{
if(strcmp(mima,yourwords)==0)
{
printf(“welcome~~~”);
break;
}
else
{
printf(“wrong words! input again~~~”);
}
}
if(i==3)
{
printf(“three times has been used !”);
exit(0);
}
}