📄 13-1.c
字号:
/*13-1.c*/
#include<stdio.h>
#include<conio.h>
void main()
{ char *password;
char kl[9]="88888888";
int i=0;
FILE *fp;
window(1,1,80,25); /* 屏幕背景清屏成兰色 */
textbackground(1);
clrscr();
window(17,10,58,13); /* 开阴影窗口 */
textbackground(0);
clrscr();
for(i=0;i<=2;i++)
{ window(16,9,56,12);
textattr(14|2<<4);
clrscr();
gotoxy(13,2);
password=(char *)getpass("请输入系统口令:");
textcolor(4);
/* 若口令文件KLK.CFG存在,则从中取出口令字 */
if ((fp=fopen("KLK.CFG","rb+"))!=NULL)
{ fseek(fp,0,SEEK_SET);
fgets(kl,9,fp);
fclose(fp); }
if(i==2&&strcmp(password,kl)!=0) /* 三次口令无效退出 */
{ gotoxy(13,2 );
cputs("口令错误,退出!!");
getch();
goto loop;
// exit(0);
}
if (strcmp(password,kl)!=0)
{ gotoxy(13,2 );
cputs("口令错误,重输!!");
getch(); }
else
break;
}
/* 进入主程序体 */
loop:textbackground(1);
window(1,1,80,25);
clrscr();
gotoxy(10,10);
cputs ("执行用户主体程序..... 按任意键进行更改口令 !");
getch();
changkl (); /*用户程序中调用修改口令函数 */
}
changkl() /* 修改口令子函数 */
{ char *klk;
char buf[1];
FILE *fp;
window(17,16,58,19); /* 开阴影窗口 */
textbackground(0);
clrscr();
window(16,15,56,18);
textattr(14|4<<4);
clrscr();
gotoxy(8,4);
cputs("请修改口令字,必须为八位字符");
gotoxy(14,2);
klk=(char *)getpass("请输入新口令:");
gotoxy(14,2);
textcolor(2);
if (strlen(klk)!=8)
{ cputs("口令字无效,返回!!");
getch();
return; }
cputs("口令修改成功!!");
if ((fp=fopen("KLK.CFG","w"))!=NULL) /* 保存口令到文件KLK.CFG */
{ fputs(klk,fp);
buf[0]=0x1a;
fwrite(&buf[0],1,1,fp);
fclose(fp); }
getch();
return;
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -