1. 程式人生 > >學生檔案管理系統(無檔案操作)——原始碼

學生檔案管理系統(無檔案操作)——原始碼

#include <stdio.h>
#include <malloc.h>
#include <conio.h>
#include <dos.h>
#include <graphics.h>
#include <string.h>

typedef struct undergraduate
{
    char name[20];      //姓名
    int number;         //學號
    char sex;           //性別
    int age;            //年齡
    int squad;          //班級
    char telephone[10];  //電話
    char address[30];   //地址
    struct undergraduate *next;
}student ,*link;

/*---------------------------------------------------------------------*/
/*主函式,成功返回0,失敗返回其他值*/
int main( void )
{
    int input(link, int);
    void reload ( void );
    char menu( void );
    int show(link);
    link find(link);
    int modify(link);
    int erase(link);
    int add(link);
   
    link pSCHead = NULL, pSCLink = NULL;
    int iTStudent;
    int i;
    int rInput;
    int rMenu;
    FILE *pTFile, *pFile;

    reload();

    window(1, 1, 79, 25);
    textcolor(WHITE);
    textbackground(BLUE);

BEGIN:
    rMenu = menu();
    clrscr();
    switch( rMenu )
    {
    case 'i':
    case 'I':
    {
        if (pSCHead != NULL)
        {
            gotoxy(8, 3);
            puts("You have input the information!");
            gotoxy(8, 4);
            puts("Press any key to return!");
            getch();
            goto BEGIN;
        }
        /*輸入連結串列的基本資訊*/ 
        gotoxy(8, 3);
        printf("How many student there are?");
        scanf("%d", &iTStudent);

        /*以學生總數為依託建立連結串列*/
        if ((pSCHead = (link)malloc(sizeof (student))) == NULL)
        {
            puts("/n/t");
            puts("There is no more EMS memory!/n");
            puts("Press any key to reutrn!/n");
            getch();
            exit( 1 );
        }

        pSCHead->next = NULL;

        for (i = 0; i < iTStudent; i++)
        {
            pSCLink = (link)malloc(sizeof (student));

            if (pSCLink == NULL)
            {
                puts("/n/t");
                puts("There is no more EMS memory!/n/t");
                puts("Press any key to return!/n/t");
                getch();
                exit( 1 );/*返回值能否重複呢?*/     
            }

            pSCLink->next = pSCHead->next;
            pSCHead->next = pSCLink;
        }

        rInput = input(pSCHead, iTStudent);
        if (rInput == 1)
        {
            puts("/n/t");
            puts("Ther is something wrong in input function!/n/t");
            puts("Press any key to return!/n/t");
            getch();
            exit( 1 );
        }

  }
    goto BEGIN;
    case 's':
    case 'S':
    {
        show(pSCHead);

        gotoxy(8, 24);
        puts("Press any key to return!");
        getch();
    }
    goto BEGIN;
    case 'm':
    case 'M':
    {
        modify(pSCHead);
    }
    goto BEGIN;
    case 'a':
    case 'A':
    {
        pSCLink = (link)malloc(sizeof (student));
        if (pSCLink == NULL)
        {
            gotoxy(4, 4);
            puts("There is something wrong in add function!");
            gotoxy(4, 5);
            puts("Press any key to return!");
            getch();
        }
        else
        {
            pSCLink->next = pSCHead->next;
            pSCHead->next = pSCLink;

            add(pSCLink);

            gotoxy(4, 24);
            printf("OK!We have added successfully! And press any key to return!");
            getch();
        }
    }
    goto BEGIN;
    case 'd':
    case 'D':
    {
        erase(pSCHead);
    }
    goto BEGIN;
    case 'f':
    case 'F':
    {
        find(pSCHead);
        gotoxy(8, 24);
        puts("Press any key to return!");
        getch();
    }
    goto BEGIN;
    case 'q':
    case 'Q':
    {
      exit ( 0 );
    }
    default : goto BEGIN;
    }
}
/*---------------------------------------------------------------------*/
void drawmat(char *mat, int matsize, int x, int y, int color)
/*依次:字模指標、點陣大小、起始座標(x,y)、顏色*/
{
    int i, j, k, n;

    n = (matsize - 1) / 8 + 1;//n中存放什麼數字呢?
    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);
}

void reload ( void )
{
    char welcome[] = {
    /* 以下是 '歡' 的 16點陣宋體 字模,32 byte */
    0x00,0x80,0x00,0x80,0xFC,0x80,0x05,0xFE,
    0x85,0x04,0x4A,0x48,0x28,0x40,0x10,0x40,
    0x18,0x40,0x18,0x60,0x24,0xA0,0x24,0x90,
    0x41,0x18,0x86,0x0E,0x38,0x04,0x00,0x00,
    /* 以下是 '迎' 的 16點陣宋體 字模,32 byte */
    0x40,0x00,0x21,0x80,0x36,0x7C,0x24,0x44,
    0x04,0x44,0x04,0x44,0xE4,0x44,0x24,0x44,
    0x25,0x44,0x26,0x54,0x24,0x48,0x20,0x40,
    0x20,0x40,0x50,0x00,0x8F,0xFE,0x00,0x00,
    /* 以下是 '使' 的 16點陣宋體 字模,32 byte */
    0x08,0x40,0x0C,0x40,0x1B,0xFE,0x10,0x40,
    0x37,0xFC,0x64,0x44,0xA4,0x44,0x27,0xFC,
    0x24,0x44,0x22,0x40,0x21,0x80,0x20,0x80,
    0x21,0x70,0x22,0x1E,0x2C,0x04,0x00,0x00,
    /* 以下是 '用' 的 16點陣宋體 字模,32 byte */
    0x00,0x00,0x1F,0xFC,0x10,0x84,0x10,0x84,
    0x10,0x84,0x1F,0xFC,0x10,0x84,0x10,0x84,
    0x10,0x84,0x1F,0xFC,0x10,0x84,0x10,0x84,
    0x20,0x84,0x20,0x84,0x40,0x94,0x80,0x88,
    /* 以下是 '學' 的 16點陣宋體 字模,32 byte */
    0x01,0x08,0x10,0x8C,0x0C,0xC8,0x08,0x90,
    0x7F,0xFE,0x40,0x04,0x8F,0xE8,0x00,0x40,
    0x00,0x80,0x7F,0xFE,0x00,0x80,0x00,0x80,
    0x00,0x80,0x00,0x80,0x02,0x80,0x01,0x00,
    /* 以下是 '生' 的 16點陣宋體 字模,32 byte */
    0x00,0x80,0x10,0xC0,0x10,0x80,0x10,0x88,
    0x1F,0xFC,0x20,0x80,0x20,0x80,0x40,0x88,
    0x9F,0xFC,0x00,0x80,0x00,0x80,0x00,0x80,
    0x00,0x80,0x00,0x84,0x7F,0xFE,0x00,0x00,
    /* 以下是 '檔' 的 16點陣宋體 字模,32 byte */
    0x10,0x00,0x10,0x20,0x12,0x24,0x11,0x24,
    0xFE,0xA8,0x10,0xB0,0x3B,0xFE,0x34,0x02,
    0x54,0x02,0x51,0xFE,0x90,0x02,0x10,0x02,
    0x10,0x02,0x13,0xFE,0x10,0x02,0x10,0x00,
    /* 以下是 '案' 的 16點陣宋體 字模,32 byte */
    0x02,0x00,0x01,0x00,0x3F,0xFC,0x22,0x08,
    0x04,0x40,0x7F,0xFC,0x0C,0x80,0x03,0x80,
    0x1E,0x60,0x01,0x20,0x7F,0xFE,0x03,0x40,
    0x0D,0x30,0x71,0x0E,0x01,0x04,0x01,0x00,
    /* 以下是 '管' 的 16點陣宋體 字模,32 byte */
    0x20,0x80,0x3E,0xFC,0x51,0x20,0x8A,0x10,
    0x01,0x00,0x7F,0xFE,0x40,0x04,0x1F,0xE0,
    0x10,0x20,0x1F,0xE0,0x10,0x00,0x1F,0xF0,
    0x10,0x10,0x10,0x10,0x1F,0xF0,0x10,0x10,
    /* 以下是 '理' 的 16點陣宋體 字模,32 byte */
    0x00,0x00,0x03,0xFC,0xFA,0x44,0x22,0x44,
    0x23,0xFC,0x22,0x44,0xFA,0x44,0x23,0xFC,
    0x22,0x44,0x20,0x40,0x23,0xFC,0x38,0x40,
    0xC0,0x40,0x00,0x40,0x0F,0xFE,0x00,0x00,
    /* 以下是 '系' 的 16點陣宋體 字模,32 byte */
    0x00,0x7C,0x3F,0x80,0x02,0x20,0x04,0x20,
    0x08,0x40,0x1F,0x80,0x03,0x20,0x0C,0x10,
    0x3F,0xF8,0x10,0x8C,0x04,0xA0,0x08,0x90,
    0x10,0x88,0x20,0x84,0x42,0x84,0x01,0x00,
    /* 以下是 '統' 的 16點陣宋體 字模,32 byte */
    0x10,0x40,0x10,0x20,0x23,0xFE,0x20,0x40,
    0x44,0x40,0xF8,0x88,0x09,0x04,0x13,0xFE,
    0x20,0x94,0x7C,0x90,0x00,0x90,0x00,0x90,
    0x1D,0x12,0xE1,0x12,0x02,0x0E,0x04,0x00,
    };
    char myname[] = {
    /* 以下是 '作' 的 16點陣宋體 字模,32 byte */
    0x08,0x80,0x0C,0x80,0x09,0x00,0x13,0xFE,
    0x12,0x80,0x34,0x88,0x50,0xFC,0x90,0x80,
    0x10,0x80,0x10,0x84,0x10,0xFE,0x10,0x80,
    0x10,0x80,0x10,0x80,0x10,0x80,0x10,0x80,
    /* 以下是 '者' 的 16點陣宋體 字模,32 byte */
    0x01,0x00,0x01,0x08,0x3F,0xEC,0x01,0x10,
    0x01,0x20,0x7F,0xFE,0x00,0x80,0x03,0x00,
    0x07,0xF8,0x1C,0x08,0xE4,0x08,0x07,0xF8,
    0x04,0x08,0x04,0x08,0x07,0xF8,0x04,0x08,
    /* 以下是 ':' 的 16點陣宋體 字模,32 byte */
    0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
    0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
    0x00,0x00,0x30,0x00,0x30,0x00,0x00,0x00,
    0x30,0x00,0x30,0x00,0x00,0x00,0x00,0x00,
    /* 以下是 ' ' 的 16點陣宋體 字模,32 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,
    /* 以下是 ' ' 的 16點陣宋體 字模,32 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,
    /* 以下是 ' ' 的 16點陣宋體 字模,32 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,
    /* 以下是 '周' 的 16點陣宋體 字模,32 byte */
    0x00,0x00,0x1F,0xFC,0x10,0x84,0x13,0xE4,
    0x10,0x84,0x10,0x84,0x17,0xF4,0x10,0x04,
    0x13,0xE4,0x12,0x24,0x12,0x24,0x13,0xE4,
    0x22,0x24,0x20,0x04,0x40,0x14,0x80,0x08,
    /* 以下是 '金' 的 16點陣宋體 字模,32 byte */
    0x01,0x00,0x01,0x00,0x02,0x80,0x04,0x40,
    0x08,0x30,0x30,0x0E,0xCF,0xF4,0x01,0x00,
    0x01,0x00,0x3F,0xF8,0x01,0x00,0x09,0x20,
    0x05,0x20,0x05,0x40,0xFF,0xFE,0x00,0x00,
    /* 以下是 '財' 的 16點陣宋體 字模,32 byte */
    0x00,0x08,0x7E,0x08,0x42,0x08,0x4A,0x08,
    0x4A,0xFE,0x4A,0x18,0x4A,0x18,0x4A,0x28,
    0x4A,0x28,0x4A,0x48,0x08,0x48,0x14,0x88,
    0x12,0x08,0x23,0x08,0x42,0x28,0x80,0x10,
    };

    int driver = DETECT ,mode;
    int i;

    initgraph( &driver , &mode , "");

    for (i = 0; i < 12; ++i)
    {
        drawmat(welcome + i * 32, 16, 230 + i * 15, 100, YELLOW);
    }

    for (i = 0; i < 9; ++i)
    {
        drawmat(myname + i * 32, 16, 250 + i * 15, 120, YELLOW);
    }
    outtextxy (264 , 300 , "Loading...");
    setcolor( 2 );
    bar(184 , 320 , 449 , 328 );
    sleep( 1 );
    setfillstyle(SOLID_FILL,LIGHTGREEN);
    bar(184 , 320 , 214 , 328 );
    sleep( 1 );
    bar(214 , 320 , 261 , 328 );
    sleep( 1 );
    bar(261 , 320 , 308 , 328 );
    sleep( 1 );
    bar(308 , 320 , 355 , 328 );
    sleep( 1 );
    bar(355 , 320 , 402 , 328 );
    sleep( 1 );
    bar( 402 , 320 , 449 , 328 );
    sleep( 1 );
    closegraph( );

    return;
}

char menu( void )
{
    char choice;

    clrscr();
    gotoxy( 17 , 5 );
    printf(" ===================================== ");
    gotoxy(17 , 6);
    printf("  I----------->input the information   ");
    gotoxy(17 , 7);
    printf("  S----------->show all information    ");
    gotoxy(17 , 8);
    printf("   =================================   ");
    gotoxy(17 , 9);
    printf("  M----------->modify the information  ");
    gotoxy(17 , 10);
    printf("  A----------->add the information     ");
    gotoxy(17 , 11);
    printf("  D----------->delete the information  ");
    gotoxy(17 , 12);
    printf("  F----------->find the information    ");
    gotoxy(17 , 13);
    printf("   =================================   ");
    gotoxy(17 , 14);
    printf("  Q----------->quit the system         ");
    gotoxy(17 , 15);
    printf(" ===================================== ");
    gotoxy(17 , 16);
    printf("Please input your choice:");
    scanf("%c",&choice);

    return choice ;
}
 
/*---------------------------------------------------------------------*/
/*輸入函式*/
/*成功返回0,否則返回其他*/
int input(link pSCHeadfp, int iTStudentfp)
{
    void inputInterface( void );
    void readdata(link);

    int i;
    link pSCTemp = pSCHeadfp->next;

    if (pSCHeadfp == NULL)
    {
        puts("There something wrong in input function!/n/n/t");
        puts("Press any key to continue!/n/t");
        getch();
        return 1;
    }

    for (i = 0; i < iTStudentfp; i++)
    {
        inputInterface();

        gotoxy(8, 3);
        printf("There are already %d students include this one!", iTStudentfp - i);

        readdata(pSCTemp);

        pSCTemp = pSCTemp->next;
    }

    return 0;
}

/*輸入介面過程*/
void inputInterface( void )
{
    clrscr();

    gotoxy(8, 5);
    puts("Name :");
    gotoxy(8, 7);
    puts("Number :");
    gotoxy(8, 9);
    puts("Sex(F&M) :");
    gotoxy(8, 11);
    puts("Age :");
    gotoxy(8, 13);
    puts("Class :");
    gotoxy(8, 15);
    puts("Telephone :");
    gotoxy(8, 17);
    puts("Address :");
}

/*讀入資料*/
void readdata(link pSCTempfp)
{
    gotoxy(20, 5);
    scanf("%s", pSCTempfp->name);
    gotoxy(20, 7);
    scanf("%d", &pSCTempfp->number);
    gotoxy(20, 9);
    getchar();          //取消回車符的錄入
    pSCTempfp->sex = getchar();
    gotoxy(20, 11);
    scanf("%d", &pSCTempfp->age);
    gotoxy(20, 13);
    scanf("%d", &pSCTempfp->squad);
    gotoxy(20, 15);
    scanf("%s", pSCTempfp->telephone);
    gotoxy(20, 17);
    scanf("%s", pSCTempfp->address);
}
/*---------------------------------------------------------------------*/

/*輸出資料資訊*/
/*成功則返回1,否則返回其他*/
int show(link pSCHeadfp)
{
    void printHead(void);
    int printData(link);

    link pSCTemp = pSCHeadfp;

    clrscr();

    if (pSCHeadfp == NULL)
    {
        gotoxy(8, 3);
        puts("There somthing wrong in show function!");
        gotoxy(8, 4);
        puts("Press any key to continue!");
        getch();
        return 0;
    }

    printHead();

    while (pSCTemp->next != NULL)
    {
        pSCTemp = pSCTemp->next;

        printData(pSCTemp);
    }

    return 1;
}

/*打印表頭*/
void printHead( void )
{
    gotoxy(1, 5);
    puts("Name");
    gotoxy(15, 5);
    puts("Number");
    gotoxy(25, 5);
    puts("Sex");
    gotoxy(30, 5);
    puts("Age");
    gotoxy(40, 5);
    puts("Class");
    gotoxy(50, 5);
    puts("Telephone");
    gotoxy(60, 5);
    puts("Address");
}

/*輸出資料*/
/*成功則返回1,否則返回其他*/
int printData(link pSCTempfp)
{
    static int line = 6;
    if (pSCTempfp == NULL)
    {
        gotoxy(8, 3);
        puts("There is something wrong in show function!");
        gotoxy(8, 4);
        puts("Press any key to continue!");
        getch();
        return 0;
    }

    gotoxy(1, line);
    puts(pSCTempfp->name);
    gotoxy(15, line);
    printf("%d", pSCTempfp->number);
    gotoxy(25, line);
    putchar(pSCTempfp->sex);
    gotoxy(30, line);
    printf("%d", pSCTempfp->age);
    gotoxy(40, line);
    printf("%d", pSCTempfp->squad);
    gotoxy(50, line);
    puts(pSCTempfp->telephone);
    gotoxy(60, line);
    puts(pSCTempfp->address);

    ++line;
    return 1;
}
/*---------------------------------------------------------------------*/

/*查詢函式*/
/*找到則返回1,沒找到返回0,返回其他則失敗*/
link find(link pSCHeadfp)
{
    void printHead(void);
    int printData(link);

    link pSCTemp = pSCHeadfp;
    int iFNumber;
    int isExist = 0;/*判斷是否存在元素,存在則置1,否則置0*/

    clrscr();
    if (pSCHeadfp == NULL)
    {
        gotoxy(4, 2);
        puts("There is something wrong in find function!");
        gotoxy(4, 3);
        puts("Press any key to continue!");
        getch();
        return NULL;
    }

    gotoxy(4, 4);
    puts("Please input the number that you want to find: ");
    scanf("%d", &iFNumber);

    while (pSCTemp->next != NULL)
    {
        pSCTemp = pSCTemp->next;

        if (pSCTemp->number == iFNumber)
        {
            isExist = 1;
            break;
        }
        else
        {
            isExist = 0;
        }
    }

    if (isExist == 1) /*找到*/
    {
        printHead();
        printData(pSCTemp);

        return pSCTemp;
    }
    else
    {
        gotoxy(4, 6);
        puts("Sorry! You havn't input the student!");
        return NULL;
    }
}
/*---------------------------------------------------------------------*/

/*修改函式*/
/*成功則返回1,否則返回其他*/
int modify(link pSCHeadfp)
{
    link find(link);

    link pSCTemp = pSCHeadfp;
    char *pstemp, stemp[10];
    char *str[7] = {
        "name", "number", "sex","age",
        "squad", "telephone", "address"
        };
    int i;

    pSCTemp = find(pSCHeadfp);

    clrscr();
    if (pSCTemp != NULL)/*存在此記錄*/
    {
        gotoxy(4, 4);
        printf("Which field do you want to modify?  ");
        scanf("%s", stemp);
        pstemp = stemp;
        for (i = 0; i < 7; i++)
        {
            if (strcmp(pstemp, str[i]) == 0)
            {
                break;
            }
        }

        gotoxy(4, 5);
        switch (i)
        {
        case 0:
        {
            printf("The old data of the field is :%s/n/t", pSCTemp->name);
            printf("The new data is : ");
            scanf("%s", pSCTemp->name);
        }
        break;
        case 1:
        {
            printf("The old data of the field is :%d/n/t", pSCTemp->number);
            printf("The new data is : ");
            scanf("%d", &pSCTemp->number);
        }
        break;
        case 2:
        {
            printf("The old data of the field is :%c/n/t", pSCTemp->sex);
            printf("The new data is :");
            getchar();
            scanf("%c", &pSCTemp->sex);
        }
        break;
        case 3:
        {
            printf("The old data of the field is :%d/n/t", pSCTemp->age);
            printf("The new data is :");
            getchar();
            scanf("%c", &pSCTemp->age);
        }
        break;
        case 4:
        {
            printf("The old data of the field is :%d/n/t", pSCTemp->squad);
            printf("The new data is :");
            scanf("%d", &pSCTemp->squad);
        }
        break;
        case 5:
        {
            printf("The old data of the field is :%s/n/t", pSCTemp->telephone);
            printf("The new data is :");
            scanf("%s", pSCTemp->telephone);
        }
        break;
        case 6:
        {
            printf("The old data of the field is :%s/n/t", pSCTemp->address);
            printf("The new data is :");
            scanf("%s", pSCTemp->address);
        }
        break;
        case 7:
        {
            printf("There is no that field!/n/t");
            printf("Press any key to return!");
            getch();
            return -1;
        }
        }

        gotoxy(4, 25);
        printf("OK! We have modified the record! And press any key to return!");
        getch();
    }
    else
    {
        gotoxy(4, 4);
        puts("There is no that student!");
        gotoxy(4, 5);
        puts("Press any key to ruturn!");
        getch();
        return 0;
    }

    return 1;
}
/*---------------------------------------------------------------------*/

/*新增資料函式*/
/*成功則返回1,否則返回其他*/
int add(link pSCLinkfp)
{
    void inputInterface( void );
    void readdata(link);

    gotoxy(8, 4);
    printf("Please input the information you want to add :");

    inputInterface();
    readdata(pSCLinkfp);

    return 1;
}
/*---------------------------------------------------------------------*/
/*刪除資料函式*/
/*成功則返回1,否則返回其他*/
int erase(link pSCHeadfp)
{
    link find(link);

    link pSCTemp, pSCTPrior = pSCHeadfp;

    pSCTemp = find(pSCHeadfp);

    clrscr();
    if (pSCTemp != NULL)/*存在*/
    {
        while (pSCHeadfp->next != pSCTemp)
        {
            pSCTPrior = pSCTPrior->next;
        }

        pSCTPrior->next = pSCTemp->next;
        free(pSCTemp);

        gotoxy(4, 4);
        puts("The record have delete successful!");
        gotoxy(4, 6);
        puts("Press any key to return!");
        getch();
    }
    else
    {
        gotoxy(4, 4);
        puts("There is no that student!");
        gotoxy(4, 5);
        puts("Press any key to ruturn!");
        getch();
        return 0;       
    }

    return 1;
}

相關推薦

學生檔案管理系統(檔案操作)——原始碼

#include <stdio.h>#include <malloc.h>#include <conio.h>#include <dos.h>#include <graphics.h>#include <str

檔案管理系統 : 增加檔案的空間 增加swap檔案和swap空間 詳解

增加home的空間 1、利用fdisk命令建立分割槽 2、建立擴充套件分割槽 3、p命令用於檢視所有分割槽,w命令儲存 4、vgextend +路徑,擴展卷組的容量 5、lvextend+路徑,擴充套件邏輯卷的容量 6、resize2fs 啟用lv

基於struts2的學生報道管理系統(附github原始碼地址)

本專案參考了《java web輕量級開發全體驗》,加入了對mysql的支援。 一、基本業務功能 通過struts2框架,結合mysql資料庫構建一個學生報到管理系統,來模擬學生報到登記的過程。基本功能

C語言《學生資訊管理系統》連結串列+檔案操作

今天帶來的是一個連結串列版本的《學生資訊管理系統》,功能包括:新增、顯示、查詢、刪除、儲存、讀取,等功能模組,連結串列是C語言的進階內容,希望大家好好學習,這裡的程式碼可能會有一些瑕疵,希望大家提供意見或建議 主介面 顯示功能: 查詢功能: 這裡只展示了學號查

課程設計:學生檔案管理系統

 一、       程式設計的題目     ——學生檔案管理系統     二、         程

c語言學生成績管理系統(可以將學生資訊儲存至txt檔案中)

程式截圖:  標頭檔案說明; 定義全域性變數;   定義、編寫輸入函式; 定義、編寫顯示函式; 定義、編寫修改函式; 定義、編寫查詢函式; 定義、編寫新增函式; 定義、編寫排序函式; 定義、編寫刪除函式; 定義、編

框架之struts2實現簡易學生管理系統(struts2檔案上傳、分層)

cn.scxh.stumanger.model包: Student   java類 package cn.scxh.stumanger.model; public class Student { private int id; private int number;

c語言學生資訊管理系統(連結串列、檔案

#include<stdio.h>                                               /*呼叫標頭檔案*/ #include<stdlib.h> #include<string.h> #inclu

【資料庫】學生檔案管理系統

班級資訊管理模組 班級資訊管理模組,就是專門查詢班級資訊查詢的模組,該模組的為同學,老師和檔案管理員提供有關班級資訊的查詢功能。首先該模組根據登入使用者的不同身份,判斷為使用者提供不同的功能。當學生作為系統使用者登入的時候,則不能進行班級的查詢。當教師作為系統使用者登入的時候,則只能對班級資訊的進行基本

學生成績管理系統-SSM實現(一)——配置檔案

學生成績管理系統-SSM實現(配置檔案的配置加註解) (該專案使用maven管理) 1. 所需jar包(pom.xml) <!-- jar包的版本-->

c語言實現學生檔案管理系統

/* 課程設計專案名稱:學生檔案管理系統 作者:施瑞文 時間:2018.3.3 */ #include<stdio.h> #include<string.h> #include<stdlib.h> #include<coni

Web 檔案管理系統和日誌實時監控工具

Finder 現成的工具。  部署方便:下載 Finder 後解壓並拷貝到 tomcat/webapp/ROOT,啟動 tomcat 即可。 特點: Web版的tail, less, grep, 從幾M到幾十G的日誌檔案都流暢自如。 Web版的跳板機,堡壘機。Web SSH支援

檔案管理的一些基本操作5

檔案追加與合併 1.cat 和 echo 用於顯示追加和合並的結果 命令 1. cat 檔案1>檔案2 (檔案1覆蓋檔案2) 2.cat 檔案1>>檔案2 (檔案1追加檔案2) 3.cat 檔案1 檔案2 > 檔案3 (檔案1 2覆蓋到檔案3中) paste 命令 &nbs

利用docker 搭建File Browser 檔案管理系統

他就是一個檔案瀏覽器,因為linux並不方便桌面管理,所以Filebrowser就是幫助我們管理linux伺服器上檔案的程式,你可以稱他為網盤程式,可以管理檔案、可以分享檔案,另外它還可以線上播放.mp4視訊。 下載filebrowser映象 docker pull fil

學生資訊管理系統:實現對學生資訊增刪改查操作

                                    小白成長記,不喜勿噴,請多多指教 &nb

[原始碼和文件分享]基於C++的學生選課管理系統的設計與實現

一 需求分析 系統新增課程:將一門課程加入到系統資料中。課程提交重複時給出提示資訊 系統刪除課程:以課程編號為索引刪除課程。系統無此課程時給出提示 課程新增學生:把學生的姓名、學號等資訊加入到課程中。學號重複時給出提示資訊 課程刪除學生:以學號為索引從課程中

[原始碼和文件分享]基於組合語言的學生成績管理系統

一 需求分析 用匯編語言編寫一個學生成績管理系統,實現基本的學生成績管理,功能包括成績的錄入,總分和平均分的計算,資料存檔,從檔案中讀入資料等。要求程式介面友好,有輸入界輸出提示,有選單等。 二 程式設計 2.1 程式總流程設計 2.2 新增記錄流程設計 參考文件和完

基於java web的檔案管理系統

本系統開發是基於B/S模式的,其中資料庫採用MYSQL,前臺頁面的展示是jsp,開發工具是eclipse,伺服器採開源安全的tomcat。本文詳細論述了系統總體設計思想、資料庫設計以及功能模組的設計。具體實現了以下功能:資訊管理、許可權管理、檔案管理、檔案圖片管

手把手教你做一個jsp servlet mysql實現的學生宿舍管理系統附帶完整原始碼和開發視訊教程

前段時間我們以分階段的形式錄製了四個階段的學生系統開發實戰教程,大家反響還不錯,前面四個階段是帶大家入門jsp servlet的開發,今天要介紹的這個宿舍管理系統則是比前面幾個階段有所提升,本階段的重點核心放在了對資料庫的操作上,利用泛型和反射機制將資料庫操作全部抽象封裝起來

Java:學員管理系統檔案IO流版

下面將寫出具體修改,最後將放出修改過的具體程式碼以供參考: 簡單版的資訊初始化不再使用,將初始化的內容寫入到一個檔案中,方法在使用學員集合時只需要呼叫一個將檔案內容讀取並返回一個學員集合的方法即可; 具體讀取檔案的方法: //從檔案中讀取出Student集合並