40粉粉福&60粉粉福

· · 休闲·娱乐

受不了了,懒得写又得写
来吧

40粉粉福:

上期几乎没人回复,懒得等了
1.I AK IOI!(https://cdn.luogu.com.cn/upload/image_hosting/hy913rd5.png)
2.C++游戏:

#include<stdio.h>
#include<stdlib.h>
#include<conio.h>
#include<windows.h>
#include<time.h>

char a[50][50] = {"OOOOOOOOOOOOOOOOOOOO",
                  "OA                 O",
                  "O H      O         O",
                  "O      OOOOO       O",
                  "O        O       R O",
                  "O                 WO",
                  "OOOOOOOOOOOOOOOOOOOO",
                 };

struct Player {
    int shengming, gongji, fangyu;
};

Player P1, P2;

bool Aw = true, Ww = true;

int x = 2, y = 2, p = 4, q = 17, n = 1, m = 1, c = 5, b = 18, sx = 30, sy = 30, gx = 30, gy = 30, fx = 30, fy = 30;

void out() {
    system("cls");
    for (int i = 0; i <= 7; i++) {
        for (int j = 0; j <= 20; j++) {
            printf ("%c", a[i][j]);
        }
        switch (i) {
            case 0:
                printf ("   H:玩家1(WASD移动)");
                break;
            case 1:
                printf ("   A:H的床");
                break;
            case 2:
                printf ("   R:玩家2(IJKL移动)");
                break;
            case 3:
                printf ("   W:R的床");
                break;
            case 4:
                printf ("   O:墙壁");
                break;
            case 5:
                printf ("   N:增加攻击");
                break;
            case 6:
                printf ("   F:增加防御");
                break;
            case 7:
                printf ("   S:增加生命");
                break;
        }
        printf ("\n");
    }
    printf ("H:\n生命:%d\n攻击:%d\n防御:%d\n\n", P1.shengming, P1.gongji, P1.fangyu);
    printf ("R:\n生命:%d\n攻击:%d\n防御:%d\n\n", P2.shengming, P2.gongji, P2.fangyu);
    if (Aw) {
        printf ("H水晶:YES\n");
    } else {
        printf ("H水晶:NO\n");
    }
    if (Ww) {
        printf ("R水晶:YES\n");
    } else {
        printf ("R水晶:NO\n");
    }
}

void SetFont(int size) {
    CONSOLE_FONT_INFOEX cfi;
    cfi.cbSize = sizeof cfi;
    cfi.nFont = 0;
    cfi.dwFontSize.X = 0;
    cfi.dwFontSize.Y = size;//设置字体大小
    cfi.FontFamily = FF_DONTCARE;
    cfi.FontWeight = FW_NORMAL; //字体粗细
    wcscpy_s(cfi.FaceName, L"宋体");//设置字体
    SetCurrentConsoleFontEx(GetStdHandle(STD_OUTPUT_HANDLE), FALSE, &cfi);
    HANDLE handle = GetStdHandle(STD_OUTPUT_HANDLE);
    CONSOLE_FONT_INFO consoleCurrentFont;
    GetCurrentConsoleFont(handle, FALSE, &consoleCurrentFont);
}

void xuan() {
    for (int i = 1; i <= 2; i++) {
        if (i == 1) {
            printf ("请H选择!(输入前面的序号)\n");
        } else {
            printf ("请R选择!(输入前面的序号)\n");
        }
        printf ("1.战士\n生命:200\n攻击:50\n防御:50\n");
        printf ("2.铠甲人\n生命:150\n攻击:40\n防御:80\n");
        printf ("3.X原型机\n生命:250\n攻击:40\n防御:40\n");
        printf ("4.H原型机\n生命:130\n攻击:45\n防御:85\n");
        printf ("5.X束光机\n生命:135\n攻击:65\n防御:40\n");
        int d;
        scanf ("%d", &d);
        switch (d) {
            case 1:
                if (i == 1) {
                    P1.shengming = 200;
                    P1.gongji = 50;
                    P1.fangyu = 50;
                } else {
                    P2.shengming = 200;
                    P2.gongji = 50;
                    P2.fangyu = 50;
                }
                break;
            case 2:
                if (i == 1) {
                    P1.shengming = 150;
                    P1.gongji = 40;
                    P1.fangyu = 80;
                } else {
                    P2.shengming = 150;
                    P2.gongji = 40;
                    P2.fangyu = 80;
                }
                break;
            case 3:
                if (i == 1) {
                    P1.shengming = 250;
                    P1.gongji = 40;
                    P1.fangyu = 40;
                } else {
                    P2.shengming = 250;
                    P2.gongji = 40;
                    P2.fangyu = 40;
                }
                break;
            case 4:
                if (i == 1) {
                    P1.shengming = 130;
                    P1.gongji = 45;
                    P1.fangyu = 85;
                } else {
                    P2.shengming = 130;
                    P2.gongji = 45;
                    P2.fangyu = 85;
                }
                break;
            case 5:
                if (i == 1) {
                    P1.shengming = 135;
                    P1.gongji = 65;
                    P1.fangyu = 40;
                } else {
                    P2.shengming = 135;
                    P2.gongji = 65;
                    P2.fangyu = 40;
                }
                break;
        }
        system("cls");
    }
}

int zhan() {
    system("cls");
    printf ("交战中......\n");
    Sleep(2500);
    int P1s = P1.shengming, P1g = P1.gongji, P1f = P1.fangyu, P2s = P2.shengming, P2g = P2.gongji, P2f = P2.fangyu;
    while (1) {
        if (P2g - P1f > 0) {
            P1s = P1s - (P2g - P1f);
        }
        if (P1g - P2f > 0) {
            P2s = P2s - (P1g - P2f);
        }

        if (P1.gongji <= P2.fangyu && P1.fangyu >= P2.gongji) {
            printf ("无法交战!\n");
            Sleep(1000);
            a[p][q] = ' ';
            p = 4, q = 17;
            a[p][q] = 'R';
            a[x][y] = ' ';
            x = 2, y = 2;
            a[x][y] = 'H';
            return 100;
        }

        if (P1s <= 0 && P2s > 0) {
            printf ("H狗带了!\n");
            Sleep(5000);
            if (Aw) {
                a[x][y] = ' ';
                x = 2, y = 2;
                a[x][y] = 'H';
                if (p == x && q == y) {
                    p = 5, q = 9;
                    a[p][q] = 'R';
                }
                return 99;
            } else {
                return 1;
            }
        }
        if (P2s <= 0 && P1s > 0) {
            printf ("R狗带了!\n");
            Sleep(5000);
            if (Ww) {
                a[p][q] = ' ';
                p = 4, q = 17;
                a[p][q] = 'R';
                if (p == x && q == y) {
                    x = 1, y = 9;
                    a[x][y] = 'H';
                }
                return 99;
            } else {
                return 2;
            }
        }
        if (P2s <= 0 && P1s <= 0) {
            printf ("都狗带了!\n");
            Sleep(5000);
            if (Ww && Aw) {
                a[p][q] = ' ';
                p = 4, q = 17;
                a[p][q] = 'R';
                a[x][y] = ' ';
                x = 2, y = 2;
                a[x][y] = 'H';
                return 99;
            }
            if (Ww && !Aw) {
                return 2;
            }
            if (!Ww && Aw) {
                return 1;
            }
            if (!Ww && !Aw) {
                return 3;
            }
        }
    }
}

void win(int g) {
    if (g == 1) {
        printf("\'R\' 赢了!\n");
        Sleep(5000);
        system("pause");
    } else {
        if (g == 2) {
            printf("\'H\' 赢了!\n");
            Sleep(5000);
            system("pause");
        } else {
            printf("平局!\n");
            Sleep(5000);
            system("pause");
        }
    }
}

void rans() {
    int f = rand() % 2;
    a[sx][sy] = ' ';
    sx = 35, sy = 35;
    switch (f) {
        case 0:
            sx = 5, sy = 1;
            break;
        case 1:
            sx = 1, sy = 18;
            break;
    }
    a[sx][sy] = 'S';
}

void rang() {
    int ff = rand() % 3;
    a[gx][gy] = ' ';
    gx = 35, gy = 35;
    switch (ff) {
        case 0:
            gx = 2, gy = 15;
            break;
        case 1:
            gx = 2, gy = 8;
            break;
        case 2:
            gx = 4, gy = 10;
            break;
    }
    a[gx][gy] = 'N';
}

void ranf() {
    int fff = rand() % 3;
    a[fx][fy] = ' ';
    fx = 35, fy = 35;
    switch (fff) {
        case 0:
            fx = 2, fy = 10;
            break;
        case 1:
            fx = 4, fy = 4;
            break;
        case 2:
            fx = 4, fy = 8;
            break;
    }
    a[fx][fy] = 'F';
}

int main() {
    system("title 起床战争");
    SetFont(25);
    srand(time(NULL));
    system("color 0a");
    xuan();
    HANDLE handle = GetStdHandle(STD_OUTPUT_HANDLE);
    CONSOLE_CURSOR_INFO CursorInfo;
    GetConsoleCursorInfo(handle, &CursorInfo);//获取控制台光标信息
    CursorInfo.bVisible = false; //隐藏控制台光标
    SetConsoleCursorInfo(handle, &CursorInfo);//设置控制台光标状态
    out();
    ranf();
    rang();
    rans();
    while (1) {
        if (GetAsyncKeyState('S')) {
            if (a[x + 1][y] != 'O') {
                a[x][y] = ' ';
                x++;
                a[x][y] = 'H';
            }
        }
        if (GetAsyncKeyState('D')) {
            if (a[x][y + 1] != 'O') {
                a[x][y] = ' ';
                y++;
                a[x][y] = 'H';
            }
        }
        if (GetAsyncKeyState('A')) {
            if (a[x][y - 1] != 'O') {
                a[x][y] = ' ';
                y--;
                a[x][y] = 'H';
            }
        }
        if (GetAsyncKeyState('W')) {
            if (a[x - 1][y] != 'O') {
                a[x][y] = ' ';
                x--;
                a[x][y] = 'H';
            }
        }

        if (GetAsyncKeyState('K')) {
            if (a[p + 1][q] != 'O') {
                a[p][q] = ' ';
                p++;
                a[p][q] = 'R';
            }
        }
        if (GetAsyncKeyState('L')) {
            if (a[p][q + 1] != 'O') {
                a[p][q] = ' ';
                q++;
                a[p][q] = 'R';

            }
        }
        if (GetAsyncKeyState('J')) {
            if (a[p][q - 1] != 'O') {
                a[p][q] = ' ';
                q--;
                a[p][q] = 'R';
            }
        }
        if (GetAsyncKeyState('I')) {
            if (a[p - 1][q] != 'O') {
                a[p][q] = ' ';
                p--;
                a[p][q] = 'R';
            }
        }

        if (x == p && y == q) {
            int jie = zhan();
            if (jie == 1) {
                win(1);
                break;
            } else {
                if (jie == 2) {
                    win(2);
                    break;
                } else {
                    if (jie < 99) {
                        win(3);
                        break;
                    }
                }
            }
        }

        if (x == c && y == b) {
            a[c][b] = ' ';
            c = 48, b = 49;
            Ww = false;
        }
        if (p == n && q == m) {
            a[n][m] = ' ';
            n = 39, m = 35;
            Aw = false;
        }

        if (c == p && b == q && Ww) {
            a[c][b] = 'R';
            while (1) {
                if (!(c == p && b == q))
                    a[c][b] = 'W';
                break;
            }
        } else {
            a[c][b] = 'W';
        }
        if (n == x && m == y && Aw) {
            a[n][m] = 'H';
            while (1) {
                if (!(n == x && m == y))
                    a[n][m] = 'A';
                break;
            }
        } else {
            a[n][m] = 'A';
        }

        if (sx == x && sy == y) {
            P1.shengming += 5;
            rans();
        }
        if (sx == p && sy == q) {
            P2.shengming += 5;
            rans();
        }

        if (gx == x && gy == y) {
            P1.gongji += 5;
            rang();
        }
        if (gx == p && gy == q) {
            P2.gongji += 5;
            rang();
        }

        if (fx == x && fy == y) {
            P1.fangyu += 5;
            ranf();
        }
        if (fx == p && fy == q) {
            P2.fangyu += 5;
            ranf();
        }

        out();
    }
    return 0;
}

3.曝字迹(写的是前3个粉丝的名字):

60粉粉福:

Q&A:
1.性别

2.真名
游辰豪,笔(网)名月星飞
3.生日
2013.01.03
4.年龄
2024年时是11岁(12、13岁也行),五升六
5.身高
别说1米47
6.体重
瘦的半死,吃不胖,60多斤哈哈哈哈
7.人缘
极好
8.成绩
好(千年老二)(93到100之间)
9.社牛/恐?
社恐的社牛

C++游戏:

#include<stdio.h>
#include<stdlib.h>
#include<conio.h>
#include<windows.h>
int main() {
    system("color 0a");
    char a[50][50] = {"OOOOOOOOOOOOOOO",
                      "ODQQOQQQQOQQQQO",
                      "OOOQOQOOQOQOOQO",
                      "OQQQOQQOQOQQQQO",
                      "OOQOOOQOQOOQOOO",
                      "OOQQQQQOQOQQQQO",
                      "OOOOOOOOQOOQOQO",
                      "OOQQQQQQQOQQOQO",
                      "OOQOOOOOOOOQOQO",
                      "OOQOQQQQQQQQOQO",
                      "OOQOOOOOOOQOOQO",
                      "OOQQQQQQQOQOQQO",
                      "OOOOOOOOQQQOQOO",
                      "OOOOOOOOOOOOCOO",
                     };
    int i, x, y, p, q;
    char z;
    x = 1, y = 1, p = 13, q = 12;
    for (i = 0; i <= 13; i++)
        puts(a[i]);
    while (1) {
        system("color 0a");
        z = getch();
        if (z == 's') {
            if (a[x + 1][y] != 'O') {
                a[x][y] = 'Q';
                x++;
                a[x][y] = 'D';
            }
        }
        system("color 1a");
        if (z == 'd') {
            if (a[x][y + 1] != 'O') {
                a[x][y] = 'Q';
                y++;
                a[x][y] = 'D';

            }
        }
        system("color 2a");
        if (z == 'a') {
            if (a[x][y - 1] != 'O') {
                a[x][y] = 'Q';
                y--;
                a[x][y] = 'D';
            }
        }
        system("color 3a");
        if (z == 'w') {
            if (a[x - 1][y] != 'O') {
                a[x][y] = 'Q';
                x--;
                a[x][y] = 'D';
            }
        }
        system("color 4a");
        if (x == p && y == q)
            break;

        system("cls");
        for (i = 0; i <= 13; i++)
            puts(a[i]);
        system("color 5a");
    }
    system("cls");
    printf("You win!");
    system("pause");
    return 0;
}

玩法:D是你,WASD移动,O是墙,Q是可以走的地方,C是终点,走到终点就好了(呵呵呵,晕死你
C++参考手册(中文版)

bye