【c項目】網吧管理系統的設計和實現


@


前言

這是我大一用c寫的一個小項目《網吧的管理系統的實現》,在這里提供大家學習和使用
主要知識:

  • 鏈表的創建與使用
  • 文件的操作
  • 各種c語句的運用

tips:使用時,記得在c文件中添加一個 Account library.txt 文檔

一、設計任務

如今現在的網絡非常的發達,各種軟件、游戲、媒體等對網絡的要求也非常的高,所以為了滿足消費者,網吧必須改建,建立一個以網路技術、計算機技術與現代信息技術為支撐的娛樂、管理平台、將現行以游戲網為主的活動發展到多功能娛樂這個平台上來,既以大幅度提高網吧的競爭和盈利能力,建設成為一流的高檔網吧,以吸引高端消費群體打下強由劉的基礎。這就是我們要達到的目標。由此分析一個合理、簡單、規范的網吧管理系統符合目前需求形勢。

二、程序設計與實現

本程序面向兩類用戶即vip和管理員,有兩個入口,vip可以注冊然后進行登錄,管理員有固定的賬號和密碼(隱秘的入口)。Vip有上下機和修改密碼功能
管理員擁有會員信息的查看和充值等陸續開發的功能。如下圖所示

csdn大主教

1.數據描述

(1)會員信息存儲

typedef struct
{
    char vipAccount[MAX];    //會員賬號(身份證號)
    char vipPassword[MIN];    //會員密碼
    char vipPhoneNum[11];     //會員綁定手機號
    int vipAmount;           //會員剩余金額
} VIP;

(2)時間信息存儲

typedef struct clock
{
	int hour;   小時
	int minute; 分鍾
	int second;  秒
}Clock;

(3)全局變量設計
定義全局變量MAX、 MIN 限制賬號、密碼長度

2.功能模塊設計

(1)函數名:void signUp()
函數功能:登錄賬號
輸 入:
輸 出:
算法描述:
在這里插入圖片描述
(2)函數名:void enroll()
函數功能:注冊
輸 入:
輸 出:
算法描述:

在這里插入圖片描述
(3)函數名:void getPassBack()
函數功能:密碼找回
輸 入:
輸 出:
算法描述:
在這里插入圖片描述
(4)函數名:void GetPassword()
函數功能:密碼回顯‘*’
輸 入:密碼
輸 出:無
算法描述:
在這里插入圖片描述
(5)函數名:void vipMenu()
函數功能:會員界面
輸 入:
輸 出:
算法描述:
在這里插入圖片描述
(6)函數名:void maMenu()
函數功能:管理員界面
輸 入:
輸 出:
算法描述:
在這里插入圖片描述
(7)函數名:void getOn()
函數功能:用戶上機
輸 入:
輸 出:
算法描述
在這里插入圖片描述
(8)函數名:void changePass()
函數功能:密碼修改
輸 入:
輸 出:
算法描述:
在這里插入圖片描述
(9)函數名:void preservation(double money)
函數功能:更新用戶信息
輸 入:已用金額
輸 出:
算法描述:
在這里插入圖片描述
(10)函數名:void manage()
函數功能:管理員登錄
輸 入:
輸 出:
算法描述:
在這里插入圖片描述
(11)函數名:void inforSheet()
函數功能:會員信息查看
輸 入:無
輸 出:無
算法描述:
在這里插入圖片描述
(12)函數名:void recharge()
函數功能:充值
輸 入:無
輸 出:無
算法描述:
在這里插入圖片描述
(13)函數名:void Begin()
函數功能:過場動畫
輸 入:無
輸 出:無
算法描述:
在這里插入圖片描述
(14)函數名:void menu()
函數功能:
輸 入:
輸 出:
算法描述:
在這里插入圖片描述

三、UI設計效果

1.啟動界面:一個簡單的進場動畫。
在這里插入圖片描述
2.開始界面:幾個功能展示。
在這里插入圖片描述
3.用戶界面:有會員的基本信息。
在這里插入圖片描述
4.信息打印界面:
在這里插入圖片描述

5.項目到目前為止存在的不足及改正措施:

(1)界面顯示不夠美觀。
(2)數據打印不夠整齊。
(3)沒能完成在計時的同時進行游戲(在里面添加c語言小游戲)功能實現(大二的我現在也解決不了,大一本心是想把用c寫的一些小游戲,用上去)

四、代碼實現(記得添加一個Account library.txt 文本文檔)

tips:管理員系統進入方法:在用戶菜單下輸入“管理員登錄”。賬號默認為(賬號:admin 密碼:1111)
驗證碼查看方法:打開c文件--->打開vercode.txt
用戶注冊:賬號是身份證號,初始密碼:123456(可修改)

#include <stdio.h>
#include <string.h>
#include <windows.h>
#include<time.h>
#include<stdint.h>
#include <stdlib.h>
#define MAX 19
#define MIN 16
#define MIN_INPUT 0x20
#define MAX_INPUT 0x7e

time_t timer;
struct tm *tblock;
int userPrint;//用於用戶輸入驗證碼



typedef struct
{
    char vipAccount[MAX];    //會員賬號(身份證號)
    char vipPassword[MIN];    //會員密碼
    char vipID[17];            //未知錯誤(1)
    char vipPhoneNum[11];     //會員綁定手機號
    double vipAmount;           //會員剩余金額
} VIP;
VIP user;//便於操作


typedef struct clock
{
    int hour;   //小時
    int minute; //分鍾
    int second;  //秒
} Clock;
Clock startime;//用於存儲上機開始時間
Clock endtime;//用於存儲下機時間
Clock temptime;//用於存儲臨時時間

void vipMenu()//會員界面ui
{
    system("cls");
    printf("_________________________________________\n");
    printf("|*會員信息                              |\n");
    printf("|*賬號:%c%c%c%c%c%c%c%c%c%c%c%c%c%c****              |\n",user.vipAccount[0],user.vipAccount[1],user.vipAccount[2],user.vipAccount[3],user.vipAccount[4],user.vipAccount[5],user.vipAccount[6],user.vipAccount[7],user.vipAccount[8],user.vipAccount[9],user.vipAccount[10],user.vipAccount[11],user.vipAccount[12],user.vipAccount[13]);
    printf("|*手機號:%c%c%c****%c%c%c%c                   |\n",user.vipPhoneNum[0],user.vipPhoneNum[1],user.vipPhoneNum[2],user.vipPhoneNum[7],user.vipPhoneNum[8],user.vipPhoneNum[9],user.vipPhoneNum[10]);
    printf("|*余額:%lf                        |\n",user.vipAmount);
    printf("|                                       |\n");
    printf("|===========會員界面====================|\n");
    printf("|=======================================|\n");
    printf("|======上機===========下機==============|\n");
    printf("|======使用幫助=======密碼修改==========|\n");
    printf("|_______________________________________|\n");
    if(user.vipAmount<0)
    {
        printf("余額不足,請充值");
        system("pause");
        menu();

    }
    else
    {
        userChoices();
    }


}

void GetPassword(char* pszPw)//密碼回顯“*”
{
    char ch;
    int i=0;
    int flag=1;
    while( ( ch = (char)getch() ) )
    {
        flag=1;
        if ( ch == 13)
        {
            pszPw[i++]=0;
            break;
        }
        else if ( ch >= MIN_INPUT && ch <= MAX_INPUT) /*所有可打印字符*/
        {
            pszPw[i++]=ch;
        }
        else if ( ch == 8 && i> 0 ) //退格鍵
        {
            pszPw[i--] = 0;
            flag = 0;
            putchar( ch );
            putchar( ' ' );
            putchar( ch );
        }
        else
            flag= 0;
        if(flag)
            putchar('*');
    }
    pszPw[i]=0;

}
void manage()//管理員登錄
{
    char userAccount[5];
    char userPass[5];
    printf("賬號:");
    scanf("%s",userAccount);
    printf("密碼:");
    scanf("%s",userPass);

    if(strcmp(userAccount,"admin")==0 && strcmp(userPass,"1111")==0)
    {
        maMenu();
    }


}
void maMenu()//管理員界面
{
    system("cls");
    printf("_________________________________________\n");
    printf("|===========管理員界面==================|\n");
    printf("|=======================================|\n");
    printf("|======會員信息總覽========會員充值=====|\n");
    printf("|======使用幫助=========================|\n");
    printf("|_______________________________________|\n");
    maChoice();

}
void maChoice()//管理員選擇
{
    char choice[20];
    scanf("%s",choice);
    if(strcmp(choice,"會員信息總覽")==0)
    {
        memberInfor();

    }
    else if(strcmp(choice,"會員充值")==0)
    {
        memberRecharge();

    }

}
void memberInfor()//會員信息總覽
{
    int i = 0;
    VIP mangePass;
    FILE *fpp = fopen("Account library.txt","r+");
    printf("|NO|       |account number|       |password|       |Binding|       |balance|\n");
    printf("------------------------------------------------------------------------------\n");
    while(!feof(fpp))
    {
        i++;
        fscanf(fpp,"%s",mangePass.vipAccount);
        printf("%04d       %s       ",i,mangePass.vipAccount);
        fscanf(fpp,"%s",mangePass.vipPassword);
        printf("%s       ",mangePass.vipPassword);
        fscanf(fpp,"%s",mangePass.vipPhoneNum);
        printf("%s       ",mangePass.vipPhoneNum);
        fscanf(fpp,"%s",mangePass.vipID);
        printf("%s\n",mangePass.vipID);
    }

    maChoice();

}
void memberRecharge()//會員充值
{
    int i = 3;
    int condiTime = 0;
    int flag = 0;
    char key[MAX];//用於轉移數據
    char account[MAX];//充值賬戶
    double reMoney;


    while(1)
    {
        rename("Account library.txt","Accountlibrary.txt");
        FILE *fp = fopen("Accountlibrary.txt","r+");
        FILE *fpp = fopen("Account library.txt","wt+");
        printf("輸入充值賬號:");
        scanf("%s",account);
        printf("輸入充值金額:");
        scanf("%lf",&reMoney);
        while(fscanf(fp,"%s",key)!=EOF)
        {
            fprintf(fpp,"%s",key);
            condiTime++;
            if(condiTime%4!=0)
            {
                fprintf(fpp," ");
            }
            else
            {
                fprintf(fpp,"\n");

            }

            if(strcmp(account,key)==0)
            {
                flag = 1;
                double balance;
                fscanf(fp,"%s",key);
                fprintf(fpp,"%s ",key);
                fscanf(fp,"%s",key);
                fprintf(fpp,"%s ",key);
                fscanf(fp,"%lf",&balance);
                balance = balance + reMoney;
                fprintf(fpp,"%lf\n",balance);
                condiTime = 0;

            }

        }
        fclose(fpp);
        fclose(fp);

        system("del Accountlibrary.txt");

        if(!flag)
        {
            printf("賬戶不存在,請重新輸入:");
        }
        else
        {



            printf("賬戶信息已更新\n");
            while(i>1)
            {
                printf("返回用戶界面中.......%ds",i--);
                printf("\r");
                Sleep(1000);
            }
            system("pause");
            maMenu();

        }


    }





}
void enroll()//注冊
{
    char choice;
    int flag ;//用於判斷是否重復手機號的標志
    VIP user;
    printf("正在注冊...\n");

    while(1)
    {

        char account[MAX];
        char phoneNum[12];

        printf("身份證號:");
        scanf("%s",user.vipAccount);
        //身份證號查重
        FILE *pf = fopen("Account library.txt","r+");
        while(fscanf(pf,"%s",account)!=EOF)
        {
            if(strcmp(account,user.vipAccount)==0)
            {
                printf("賬號已被注冊,請重新輸入:");
                enroll();

            }
        }
        fclose(pf);



        if(strlen(user.vipAccount)!=18)
        {
            continue;
        }
        else if(strlen(user.vipAccount)==18)
        {
            unsigned long curTime;
            time(&timer);
            tblock = gmtime(&timer);
            curTime = (tblock->tm_year+1900)*10000+(tblock->tm_mon+1)*100+tblock->tm_mday;
            //printf("%ld",curTime);
            unsigned long tempTime;
            tempTime = (user.vipAccount[6]-'0')*10000000+(user.vipAccount[7]-'0')*1000000+(user.vipAccount[8]-'0')*100000+(user.vipAccount[9]-'0')*10000+(user.vipAccount[10]-'0')*1000+(user.vipID[11]-'0')*100+(user.vipID[12]-'0')*10+(user.vipID[13]-'0');
            //printf("%ld",tempTime);
            if(curTime-tempTime>180000)
            {
                int flag = 0;//用於判斷
                //printf("通過");
                while(1)
                {
                    flag  = 0;
                    printf("輸入手機號:");

                    scanf("%s",user.vipPhoneNum);
                    //手機號查重
                    FILE *pf = fopen("Account library.txt","r+");
                    while(fscanf(pf,"%s",phoneNum)!=EOF)
                    {
                        if(strcmp(phoneNum,user.vipPhoneNum)==0)
                        {
                            printf("手機號已被注冊,請重新輸入:");
                            flag = 1;
                            break;
                        }
                    }
                    fclose(pf);
                    if(flag)
                    {
                        continue;

                    }

                    if(strlen(user.vipPhoneNum)!=11)
                    {
                        printf("輸入有誤,重新輸入\n");
                        continue;
                    }
                    else
                    {
                        int j;


                        //讀取文件中驗證碼
                        while(1)
                        {
                            int i = 3;
                            j = verCode();
                            printf("請輸入驗證碼:");
                            scanf("%d",&userPrint);
                            if(userPrint==j)
                            {
                                FILE *fp = fopen("Account library.txt","a+");
                                fprintf(fp,"%s 123456 %s 0.000000\n",user.vipAccount,user.vipPhoneNum);
                                fclose(fp);
                                printf("成功注冊,請記住你的賬號(身份證號)和密碼(默認:123456)\n");
                                printf("》》》請求發送中》》》》》\n");
                                while(i>1)
                                {
                                    printf(".......%d",i--);
                                    printf("\r");
                                    Sleep(1000);
                                }

                                system("pause");
                                signUp();



                            }
                            else
                            {
                                printf("驗證碼錯誤,是否重新輸入手機號(Y/N):");
                                scanf("\n");

                                scanf("%c",&choice);

                                if(choice == 'Y')
                                {
                                    break;
                                }
                                else
                                {
                                    printf("已經重新發送驗證碼,");
                                    continue;
                                }

                            }

                        }






                    }
                }


            }
            else
            {
                printf("未成年人禁止上網\n");
                continue;
            }




        }


    }

}
void signUp()//登錄
{
    int flag = 0;//賬號正確的標志
    int count = 0;
    FILE *fp;

    char userAccount[18];
    char userPass[16];
    while(1)
    {
        printf("賬號:");
        scanf("%s",userAccount);
        fp = fopen("Account library.txt","r");
        while(!feof(fp))
        {

            fscanf(fp,"%s",user.vipAccount);
            if(strcmp(userAccount,user.vipAccount)==0)
            {
                flag = 1;
                fscanf(fp,"%s",user.vipPassword);
                fscanf(fp,"%s",user.vipPhoneNum);
                fscanf(fp,"%lf",&user.vipAmount);
                while(count<3)
                {
                    printf("密碼:");
                    GetPassword(userPass);

                    if(strcmp(userPass,user.vipPassword)==0)
                    {
                        fclose(fp);
                        //printf("登錄成功");
                        vipMenu();

                    }
                    else if(count<3)
                    {
                        printf("密碼有誤請重新輸入:");
                        count++;
                    }

                }
                while(1)
                {
                    int j = verCode();
                    int userVerify;
                    printf("驗證碼:%d\n請輸入以上驗證碼:",j);
                    scanf("%d",&userVerify);
                    if(userVerify==j)
                    {
                        printf("重新輸入密碼:");
                        GetPassword(userPass);
                        if(strcmp(userPass,user.vipPassword)==0)
                        {
                            fclose(fp);
                            // printf("登錄成功");
                            vipMenu();

                        }

                    }


                }


            }
            else
            {
                fscanf(fp,"%s",user.vipPassword);
                fscanf(fp,"%s",user.vipPhoneNum);
                fscanf(fp,"%lf",&user.vipAmount);

            }

        }
        if(!flag)
        {
            fseek(fp,0L,0);
            printf("賬號不存在,請重新輸入\n");
            fclose(fp);
        }

    }






}

int verCode()//發送驗證碼
{
    int i;
    int j;

    srand((int)time(0));//初始化時間


    j = rand()%9999;
    FILE *fp = fopen("vercode.txt","w+");
    //printf("%d",j);//需要寫入文件
    fprintf(fp,"%d",j);
    fclose(fp);
    return j;
}

void Begin()//開始ui
{
    printf("正在啟動網吧管理系統  請您遵守網吧管理規定,看好隨身物品。\n");
    char str[100] = ">>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>";
    int i,j;

    for(i = 0; i<strlen(str); i++)
    {
        printf("%c",str[i]);
        Sleep(10);
    }
    printf("\n加載完成\n");
    system("pause");
    system("cls");
}
void menu()//菜單界面ui
{

    system("cls");

    printf("==================================\n");
    printf("===========網吧管理系統===========\n");
    printf("==================================\n");
    printf("======會員登錄=======成為會員=====\n");
    printf("======使用幫助=======找回密碼=====\n");
    printf("==================================\n");
    userChoice();

}
void userChoice()//用戶選擇1
{

    while(1)
    {
        char userchoice[20];
        scanf("%s",userchoice);

        if(strcmp(userchoice,"會員登錄")==0)
        {
            // printf("登錄");
            signUp();
        }
        else if(strcmp(userchoice,"成為會員")==0)
        {
            printf("注冊");
            enroll();
        }
        else if(strcmp(userchoice,"使用幫助")==0)
        {
            printf("幫助");
            //userMal();
        }
        else if(strcmp(userchoice,"管理員登錄")==0)
        {
            manage();
        }
        else if(strcmp(userchoice,"找回密碼")==0)
        {

            getPassBack();
        }
        else
        {
            printf("輸入有誤,請重新輸入");
        }


    }



}
void getPassBack()
{
    int j,i;
    int flag = 0; //是否有對應賬號的標簽
    char key[11];
    while(1)
    {
        printf("輸入綁定手機號:");
        scanf("%s",key);
        if(strlen(key)!=11)
        {
            printf("輸入有誤,重新輸入\n");
            continue;
        }
        VIP mangePass;
        FILE *fpp = fopen("Account library.txt","r+");

        while(!feof(fpp))
        {

            fscanf(fpp,"%s",mangePass.vipAccount);
            fscanf(fpp,"%s",mangePass.vipPassword);
            fscanf(fpp,"%s",mangePass.vipPhoneNum);
            fscanf(fpp,"%s",mangePass.vipID);

            if(strcmp(key,mangePass.vipPhoneNum)==0)
            {
                flag = 1;
                break;

            }


        }
        if(flag)
        {

            printf("已經發送驗證碼,請輸入:");
            j = verCode();
            while(1)
            {
                scanf("%d",&userPrint);
                if(userPrint==j)
                {
                    printf("|NO|       |account number|       |password|       |Binding|       |balance|\n");
                    printf("------------------------------------------------------------------------------\n");
                    printf("%04d       %s       ",i,mangePass.vipAccount);
                    printf("%s       ",mangePass.vipPassword);
                    printf("%s       ",mangePass.vipPhoneNum);
                    printf("%s\n",mangePass.vipID);

                }
                else
                {
                    printf("輸入有誤!!重新輸入");
                }




            }


        }





    }
}
void userChoices()//用戶選擇2
{
    char userchoice[10];
    while(1)
    {
        scanf("%s",userchoice);
        if(strcmp(userchoice,"上機")==0)
        {
            getOn();
        }
        else if(strcmp(userchoice,"下機")==0)
        {
            printf("尚未上機");
        }
        else if(strcmp(userchoice,"使用幫助")==0)
        {

        }
        else if(strcmp(userchoice,"密碼修改")==0)
        {
            changePass();

        }
    }


}

void getOn()//上機
{

    int endWhile = 0;//用於下機結束循環
    int vipChoice;//區域選項
    int upOdown;//是否下機的選項
    double money;//單價
    while(1)
    {
        Clock a;
        printf("選擇區域:1.VIP區\n2.游戲區\n3.普通區");
        scanf("%d",&vipChoice);
        switch(vipChoice)
        {
        case 1:
            money = 0.25;
            break;
        case 2:
            money = 0.16;
            break;
        case 3:
            money = 0.05;
            break;
        default:
            getOn();

        }


        while(!kbhit())
        {

            printf("\r");
            if(endWhile == 0)
            {
                timestar();
                endWhile = 1;
            }
            timeend();
            Sleep(1000);
            a.second = temptime.second - startime.second;
            if(a.second<0)
            {
                a.second = a.second + 60;
                temptime.minute--;
            }
            a.minute = temptime.minute - startime.minute;
            if(a.minute<0)
            {
                a.minute = a.minute + 60;
                temptime.hour--;
            }
            a.hour = temptime.hour - startime.hour;
            printf("%02d:%02d:%02d", a.hour, a.minute,a.second);
            if(a.minute%15==0 && a.minute!=0 && a.second==0)
            {
                //自動保存
                money = money*15;
                preservation(money);
            }

        }
        printf("是否下機?(1/0)");
        scanf("%d",&upOdown);
        if(upOdown==1)
        {
            if(vipChoice == 1)
            {
                //自動保存
                money = money *((a.hour*60+a.minute)%15);
                preservation(money);
                break;

            }
            else if(vipChoice == 2)
            {
                //自動保存
                money = money *((a.hour*60+a.minute)%15);
                preservation(money);
                break;

            }
            else if(vipChoice == 3)
            {
                //自動保存
                money = money *((a.hour*60+a.minute)%15);
                preservation(money);
                break;
            }

        }
        else
        {
            printf("重新");
        }


    }




}
void preservation(double money)//更新用戶信息
{

    int i = 3;
    int condiTime = 0;
    double balance;
    char key[19];//用於文件數據的轉移
    rename("Account library.txt","Accountlibrary1.txt");
    FILE *fp = fopen("Accountlibrary1.txt","r+");
    FILE *fpp = fopen("Account library.txt","wt+");

    while(fscanf(fp,"%s",key)!=EOF)
    {
        fprintf(fpp,"%s",key);
        condiTime++;
        if(condiTime%4!=0)
        {
            fprintf(fpp," ");
        }
        else
        {
            fprintf(fpp,"\n");

        }

        if(strcmp(user.vipPhoneNum,key)==0)
        {
            double balance;
            fscanf(fp,"%lf",&balance);
            balance = balance - money;
            fprintf(fpp,"%lf\n",balance);
            condiTime++;
        }

    }

    fclose(fpp);
    fclose(fp);
    system("del Accountlibrary1.txt");
    printf("賬戶信息已更新\n");
    while(i>1)
    {
        printf("返回用戶界面中.......%ds",i--);
        printf("\r");
        Sleep(1000);
    }
    system("pause");

}

void changePass()//密碼修改
{
    int i = 3;
    int j;
    char phone[11];
    while(1)
    {
        printf("輸入綁定手機號:");
        scanf("%s",phone);
        if(strcmp(phone,user.vipPhoneNum)==0)
        {
            printf("已經發送驗證碼,請輸入:");
            j = verCode();
            while(1)
            {
                scanf("%d",&userPrint);
                if(userPrint==j)
                {
                    int condiTime = 0;

                    char key[19];//用於文件數據的轉移
                    printf("輸入新密碼:");
                    scanf("%s",user.vipPassword);
                    rename("Account library.txt","Accountlibrary1.txt");
                    FILE *fp = fopen("Accountlibrary1.txt","r+");
                    FILE *fpp = fopen("Account library.txt","wt+");

                    while(fscanf(fp,"%s",key)!=EOF)
                    {
                        condiTime++;
                        if(strcmp(key,user.vipAccount)!=0)
                        {
                            fprintf(fpp,"%s ",key);
                        }
                        else
                        {
                            fprintf(fpp,"%s ",key);
                            fprintf(fpp,"%s ",user.vipPassword);
                            fscanf(fp,"%s",key);
                            condiTime++;

                        }
                        if(condiTime%4==0)
                        {
                            fprintf(fpp,"\n");
                        }
                    }

                    fclose(fpp);
                    fclose(fp);
                    system("del Accountlibrary1.txt");
                    printf("成功修改密碼,請記住你的賬號(身份證號)和新密碼\n");
                    printf("》》》請求發送中》》》》》\n");
                    while(i>1)
                    {
                        printf(".......%d",i--);
                        printf("\r");
                        Sleep(1000);
                    }
                    system("pause");
                    vipMenu();


                }
                else
                {
                    printf("驗證碼錯誤,重新輸入:");
                }

            }



        }
        else
        {
            printf("手機號輸入錯誤");
        }

    }




}
void timestar()//記錄開始時間
{
    time_t now ;

    struct tm *p ;

    time(&now) ;

    p = localtime(&now) ;


    startime.hour = p->tm_hour;
    startime.minute = p->tm_min;
    startime.second = p->tm_sec;


}
void timeend()//記錄結束時間
{

    time_t now ;

    struct tm *p ;

    time(&now) ;

    p = localtime(&now) ;


    temptime.hour = p->tm_hour;
    temptime.minute = p->tm_min;
    temptime.second = p->tm_sec;

}

int main()
{

    Begin();
    menu();

    return 0;
}


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM