define.c
来自「图书借阅管理程序v1.2」· C语言 代码 · 共 631 行 · 第 1/2 页
C
631 行
#include<stdio.h>
#include<graphics.h>
#include<string.h>
#include<dos.h>
#include<dir.h>
#include<alloc.h>
#include<stdlib.h>
/* 函数putchinese()用于在图形格式下输出显示汉字,汉字上下两部分的颜色不一样
x,y为汉字的显示坐标,width,height为汉字字模的点阵高度,
color为汉字的颜色,add为汉字点阵的存放地址
*/
void putchinese(int x,int y,int width,int height,int color,unsigned char* add);
/***此函数也是用于图形模式下显示汉字,但显示的是单一颜色的汉字*/
/*依次:字模指针地址、点阵大小、起始坐标(x,y)、颜色*/
void drawmat(char *mat,int matsize,int x,int y,int color);
/* 串比较,如果两字符串相等就返回1,不相等返回0 */
int strcamp(char *str1,char *str2);
/* 显示登录画面 */
struct dnode* showfirst(struct dnode* bookhead);
/*****本程序专门用于输入登录密码***/
char* InputPassword();
/* 函数putchinese()用于在图形格式下输出显示汉字 */
void putchinese(x,y,width,height,color,add)
int x,y;/* 汉字点阵的显示坐标 */
int width,height;/* 汉字点阵的宽度和高度 */
int color;
unsigned char *add;/* 汉字点阵的存放地址 */
{
register unsigned char i,j,k; /* 循环控制变量 */
width/=8;
for(i=0;i<height/2;i++)/* 显示汉字点阵的一行 */
for(j=0;j<width;j++)/* 显示一个字节 */
for(k=0;k<8;k++) /* 显示一个象素 */
{if((0x80>>k)&add[i*width+j])/* 测试是否为可显示的点 */
putpixel(x+j*8+k,y+i,color);/* 写象素 */
}
color++;
for(i=height/2;i<height;i++)/* 显示汉字点阵的一行 */
for(j=0;j<width;j++)/* 显示一个字节 */
for(k=0;k<8;k++) /* 显示一个象素 */
{if((0x80>>k)&add[i*width+j])/* 测试是否为可显示的点 */
putpixel(x+j*8+k,y+i,color);/* 写象素 */
}
}
void drawmat(char *mat,int matsize,int x,int y,int color)
/*依次:字模指针、点阵大小、起始坐标(x,y)、颜色*/
{int i,j,k,n;
n=(matsize-1)/8+1;
for(j=0;j<matsize;j++)
for(i=0;i<n;i++)
for(k=0;k<8;k++)
if(mat[j*n+i]&(0x80>>k)) /*测试为1的位则显示*/
putpixel(x+i*8+k,y+j,color);
}
int strcamp(char *str1,char *str2) /* 串比较,如果相等就返回1,不相等返回0 */
{
int long1,long2,i=0;
long1=strlen(str1);
long2=strlen(str2);
if(long1!=long2) return 0;
while(str1[i]==str2[i])
{if(i==long1) return 1;
i++;
}
return 0;
}
struct dnode* showfirst(struct dnode* bookhead) /* 显示进入画面 */
{
int dr=VGA,dm=VGAHI;
int i=0,key;
char* keypass;/* 密码最长14位 */
struct ffblk f;
FILE* fp;
char charactertitle[]={
/* 以下是 '图' 的 48点阵华文行楷 字模,288 byte */
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x30,0x00,0x00,
0x00,0x00,0x01,0xFE,0x00,0x00,0x00,0x00,
0x07,0xFF,0x80,0x00,0x00,0x00,0x1F,0x01,
0xC0,0x00,0x00,0x00,0x1E,0x00,0xE0,0x00,
0x00,0x00,0x0F,0x00,0x70,0x00,0x00,0x00,
0x07,0x00,0x70,0x00,0x00,0x00,0x03,0x80,
0x78,0x00,0x00,0x00,0x03,0x80,0x38,0x00,
0x00,0x00,0x07,0x80,0x38,0x00,0x00,0x00,
0x07,0xC0,0x38,0x00,0x00,0x0C,0x1F,0xE0,
0x38,0x00,0x00,0x0C,0x3C,0x70,0x1C,0x00,
0x00,0x0E,0x3C,0xE0,0x1C,0x00,0x00,0x1E,
0x78,0xE0,0x1C,0x00,0x00,0x1E,0x70,0xE0,
0x1C,0x00,0x00,0x1E,0x01,0xFC,0x1C,0x00,
0x00,0x1C,0x1F,0xFF,0x1C,0x00,0x00,0x1C,
0x7F,0xFF,0x9C,0x00,0x00,0x38,0xFF,0x87,
0x9C,0x00,0x00,0x39,0xE7,0x00,0x1C,0x00,
0x00,0x3B,0x86,0x00,0x1C,0x00,0x00,0x33,
0x8E,0x40,0x1C,0x00,0x00,0x33,0xBF,0xE0,
0x1E,0x00,0x00,0x33,0xF1,0xF0,0x1E,0x00,
0x00,0x70,0x00,0xE0,0x1E,0x00,0x00,0x70,
0x00,0xC0,0x1E,0x00,0x00,0x70,0x01,0x80,
0x1E,0x00,0x00,0x30,0x03,0x00,0x1E,0x00,
0x00,0x30,0x07,0xF0,0x1E,0x00,0x00,0x30,
0x23,0xF8,0x1C,0x00,0x00,0x10,0x10,0xF8,
0x1C,0x00,0x00,0x18,0x08,0x00,0x3C,0x00,
0x00,0x0C,0x0C,0x00,0x3C,0x00,0x00,0x0F,
0x06,0x00,0x78,0x00,0x00,0x07,0xFF,0x80,
0xF8,0x00,0x00,0x03,0xFD,0xFF,0xF0,0x00,
0x00,0x00,0xE0,0x7F,0xF0,0x00,0x00,0x00,
0x00,0x1F,0xC0,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
/* 以下是 '书' 的 48点阵华文行楷 字模,288 byte */
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x0F,0x00,
0xE0,0x00,0x00,0x00,0x03,0x81,0xF8,0x00,
0x00,0x00,0x13,0x80,0x7C,0x00,0x00,0x00,
0x13,0x80,0x3C,0x00,0x00,0x00,0x13,0x80,
0x18,0x00,0x00,0x00,0x13,0xE0,0x00,0x00,
0x00,0x00,0x13,0xF8,0x00,0x00,0x00,0x00,
0x1F,0xFC,0x00,0x00,0x00,0x00,0x3F,0xFC,
0x00,0x00,0x00,0x00,0xFF,0xF8,0x00,0x00,
0x00,0x01,0xFF,0xF0,0x00,0x00,0x00,0x0F,
0xFF,0xE0,0x00,0x00,0x00,0x07,0xFF,0xC0,
0x00,0x00,0x00,0x03,0xFF,0x80,0x00,0x00,
0x00,0x00,0x5F,0x80,0x00,0x00,0x00,0x00,
0x1F,0x80,0x00,0x00,0x00,0x00,0x1F,0x9C,
0x00,0x00,0x00,0x00,0x3F,0xFF,0x80,0x00,
0x00,0x00,0x7F,0xFF,0xE0,0x00,0x00,0x00,
0xFF,0xE0,0xF0,0x00,0x00,0x01,0xFF,0x80,
0xF0,0x00,0x00,0x03,0xFF,0x00,0xF8,0x00,
0x00,0x0F,0xF3,0x00,0xF8,0x00,0x00,0x3F,
0xC3,0x01,0xF0,0x00,0x00,0x3F,0x83,0x01,
0xE0,0x00,0x00,0x1F,0x03,0x03,0xC0,0x00,
0x00,0x1C,0x03,0xFF,0xC0,0x00,0x00,0x18,
0x03,0xFF,0x00,0x00,0x00,0x00,0x03,0xFE,
0x00,0x00,0x00,0x00,0x03,0x18,0x00,0x00,
0x00,0x00,0x03,0x00,0x00,0x00,0x00,0x00,
0x07,0x80,0x00,0x00,0x00,0x00,0x07,0x80,
0x00,0x00,0x00,0x00,0x03,0x80,0x00,0x00,
0x00,0x00,0x03,0x80,0x00,0x00,0x00,0x00,
0x03,0x80,0x00,0x00,0x00,0x00,0x01,0x00,
0x00,0x00,0x00,0x00,0x01,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
/* 以下是 '借' 的 48点阵华文行楷 字模,288 byte */
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x80,0x00,0x00,0x00,0x00,0x00,0xE0,0x00,
0x00,0x00,0x00,0x00,0xE0,0x00,0x00,0x00,
0x00,0x00,0xF0,0x00,0x00,0x01,0x00,0x00,
0xF0,0x00,0x00,0x01,0xC3,0xC0,0xF0,0x00,
0x00,0x01,0xC1,0xE0,0xE0,0x00,0x00,0x03,
0xE1,0xE0,0xF8,0x00,0x00,0x07,0xC1,0xF1,
0xFC,0x00,0x00,0x0F,0x81,0xFF,0xFC,0x00,
0x00,0x0F,0x01,0xFF,0xFC,0x00,0x00,0x1E,
0x01,0xFF,0xC0,0x00,0x00,0x3C,0x0F,0xF3,
0x80,0x00,0x00,0x7C,0x0F,0xE3,0x80,0x00,
0x00,0x78,0x0F,0xE3,0x80,0x00,0x00,0xF0,
0x03,0xC7,0x04,0x00,0x00,0xE0,0x01,0xC7,
0xFF,0x80,0x01,0xE0,0x01,0xFF,0xFF,0x80,
0x03,0xF0,0x01,0xFF,0xFF,0xC0,0x0F,0xD0,
0x0F,0xE8,0x00,0x00,0x07,0x98,0x7F,0x80,
0x00,0x00,0x07,0x19,0xFC,0x07,0x00,0x00,
0x06,0x1F,0xF0,0x0F,0xC0,0x00,0x00,0x3F,
0xC0,0x1F,0xE0,0x00,0x00,0x3F,0x00,0xFF,
0xE0,0x00,0x00,0x30,0x01,0xF0,0xF0,0x00,
0x00,0x30,0x01,0x80,0xF0,0x00,0x00,0x30,
0x01,0x80,0xF0,0x00,0x00,0x30,0x01,0x88,
0xF0,0x00,0x00,0x30,0x01,0xFE,0xF0,0x00,
0x00,0x30,0x03,0xFC,0xF0,0x00,0x00,0x70,
0x03,0xC0,0xF0,0x00,0x00,0x70,0x03,0x80,
0xE0,0x00,0x00,0x70,0x03,0x80,0xE0,0x00,
0x00,0x70,0x01,0xBC,0xE0,0x00,0x00,0x30,
0x01,0xFF,0xE0,0x00,0x00,0x30,0x01,0xFF,
0xE0,0x00,0x00,0x30,0x00,0xE3,0xE0,0x00,
0x00,0x10,0x00,0x83,0xE0,0x00,0x00,0x00,
0x00,0x03,0xC0,0x00,0x00,0x00,0x00,0x03,
0xC0,0x00,0x00,0x00,0x00,0x01,0x80,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
/* 以下是 '阅' 的 48点阵华文行楷 字模,288 byte */
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0xC7,0x80,0x00,0x00,0x00,
0x00,0x7F,0xC0,0x00,0x00,0x00,0x40,0x38,
0x70,0x00,0x00,0x01,0xE0,0x00,0x78,0x00,
0x00,0x01,0xF8,0x00,0x78,0x00,0x00,0x00,
0x78,0x80,0x78,0x00,0x00,0x00,0x78,0xC0,
0x38,0x00,0x00,0x00,0x78,0xE0,0x38,0x00,
0x00,0x00,0xF8,0xC0,0x38,0x00,0x00,0x00,
0x78,0xC0,0x38,0x00,0x00,0x80,0x10,0x80,
0x38,0x00,0x00,0xC0,0x11,0x00,0x38,0x00,
0x00,0x70,0xF1,0x00,0x38,0x00,0x00,0x70,
0x63,0xC0,0x38,0x00,0x00,0x70,0x67,0xE0,
0x38,0x00,0x00,0x60,0x3F,0xC0,0x38,0x00,
0x00,0x60,0x3F,0xC0,0x38,0x00,0x00,0x60,
0x71,0x80,0x38,0x00,0x00,0x61,0x83,0x80,
0x38,0x00,0x00,0x60,0x87,0x80,0x38,0x00,
0x00,0x61,0xDF,0x80,0x38,0x00,0x00,0x61,
0xFF,0x00,0x38,0x00,0x00,0x60,0xFF,0x80,
0x38,0x00,0x00,0x60,0xF9,0x00,0x38,0x00,
0x00,0xE0,0x71,0x00,0x38,0x00,0x00,0xE0,
0x62,0x00,0x38,0x00,0x00,0xE0,0xC2,0x02,
0x3C,0x00,0x00,0xE1,0x82,0x06,0x3C,0x00,
0x00,0xE3,0x03,0xFE,0x3C,0x00,0x00,0x40,
0x03,0xFE,0x3C,0x00,0x00,0x40,0x00,0xE0,
0x3C,0x00,0x00,0x00,0x00,0x00,0x3C,0x00,
0x00,0x00,0x00,0x04,0x3C,0x00,0x00,0x00,
0x00,0x03,0xFC,0x00,0x00,0x00,0x00,0x01,
0xFC,0x00,0x00,0x00,0x00,0x00,0xF8,0x00,
0x00,0x00,0x00,0x00,0x78,0x00,0x00,0x00,
0x00,0x00,0x38,0x00,0x00,0x00,0x00,0x00,
0x10,0x00,0x00,0x00,0x00,0x00,0x10,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
/* 以下是 '管' 的 48点阵华文行楷 字模,288 byte */
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x08,0x00,0x00,
0x00,0x00,0x00,0x0C,0x00,0x00,0x00,0x00,
0x00,0x0E,0x00,0x00,0x00,0x00,0x80,0x1F,
0xF0,0x00,0x00,0x00,0xE0,0x3F,0xF0,0x00,
0x00,0x00,0xF0,0x3F,0x80,0x00,0x00,0x00,
0xE0,0x3F,0x00,0x00,0x00,0x01,0xE4,0x23,
0x00,0x00,0x00,0x03,0xF8,0x03,0x80,0x00,
0x00,0x07,0x38,0x07,0x00,0x00,0x00,0x06,
0x18,0x0C,0x00,0x00,0x00,0x04,0x0F,0x00,
0x00,0x00,0x00,0x00,0x03,0x87,0x80,0x00,
0x00,0x00,0x03,0xFF,0xF8,0x00,0x00,0x00,
0x07,0xE0,0x0E,0x00,0x00,0x00,0x7F,0x80,
0x0F,0x00,0x00,0x13,0xE1,0x00,0x0F,0x00,
0x00,0x1C,0x00,0x08,0x7F,0x00,0x00,0x1C,
0x00,0x3E,0x00,0x00,0x00,0x18,0x10,0xE6,
0x00,0x00,0x00,0x38,0x13,0xC6,0x00,0x00,
0x00,0x30,0x18,0x06,0x00,0x00,0x00,0x70,
0x18,0x0C,0x00,0x00,0x00,0x30,0x18,0x1C,
0x00,0x00,0x00,0x20,0x18,0x78,0x00,0x00,
0x00,0x20,0x1F,0xF8,0x00,0x00,0x00,0x00,
0x1F,0x10,0x00,0x00,0x00,0x00,0x0C,0x00,
0x00,0x00,0x00,0x00,0x20,0x0C,0x00,0x00,
0x00,0x00,0x30,0xFF,0x00,0x00,0x00,0x00,
0x3F,0xFF,0x80,0x00,0x00,0x00,0x3F,0x07,
0x80,0x00,0x00,0x00,0x38,0x07,0x80,0x00,
0x00,0x00,0x10,0x07,0x00,0x00,0x00,0x00,
0x10,0x06,0x00,0x00,0x00,0x00,0x18,0x0E,
0x00,0x00,0x00,0x00,0x18,0x7C,0x00,0x00,
0x00,0x00,0x1F,0xFE,0x00,0x00,0x00,0x00,
0x0C,0x00,0x00,0x00,0x00,0x00,0x08,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
/* 以下是 '理' 的 48点阵华文行楷 字模,288 byte */
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x70,0x00,
0x00,0x00,0xC0,0x07,0xFE,0x00,0x00,0x01,
0xE0,0x0F,0x03,0x80,0x00,0x07,0xE0,0x3F,
0x03,0x80,0x00,0x3F,0xF1,0x03,0x03,0xC0,
0x00,0x0F,0xF0,0x03,0x83,0x80,0x00,0x07,
0xE0,0x83,0xC7,0x80,0x00,0x01,0xE0,0x8F,
0xE7,0x00,0x00,0x01,0xE0,0xFF,0xE7,0x00,
0x00,0x01,0xC0,0xFF,0xC7,0x00,0x00,0x01,
0xC0,0x8F,0x8E,0x00,0x00,0x0F,0xC0,0x83,
0x8E,0x00,0x00,0x1F,0xC0,0x07,0xBC,0x00,
0x00,0x7F,0xC0,0x4F,0xFC,0x00,0x00,0x7F,
0xE0,0x3F,0xF8,0x00,0x00,0x03,0xC0,0x3F,
0xF0,0x00,0x00,0x03,0xC0,0x3F,0xE0,0x00,
0x00,0x0F,0xD8,0x03,0xC0,0x00,0x00,0x07,
0xF0,0x03,0xC0,0x00,0x00,0x07,0xF0,0x07,
0xF0,0x00,0x00,0x0F,0xE0,0x0F,0xF8,0x00,
0x00,0x0F,0xC0,0x3F,0xF8,0x00,0x00,0x1F,
0x80,0x7F,0xE0,0x00,0x00,0x7E,0x00,0x1F,
0xC0,0x00,0x00,0x7C,0x00,0x07,0x80,0x00,
0x00,0x38,0x00,0x07,0x82,0x00,0x00,0x30,
0x00,0x1F,0xFF,0x00,0x00,0x00,0x00,0xFF,
0xFF,0x80,0x00,0x00,0x00,0xFF,0xFF,0x80,
0x00,0x00,0x00,0xF8,0x00,0x00,0x00,0x00,
0x00,0x40,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
/* 以下是 '程' 的 48点阵华文行楷 字模,288 byte */
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0xF8,0x00,
0x78,0x00,0x00,0x00,0x7C,0x07,0xFC,0x00,
0x00,0x00,0x7C,0x0F,0xFE,0x00,0x00,0x01,
0xFE,0x07,0xFF,0x00,0x00,0x07,0xFE,0xF0,
0x3E,0x00,0x00,0x1F,0xF0,0x70,0x7E,0x00,
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?