VS 2022教程VsCode技巧(创建C语言程序)

VS 2022教程VsCode技巧(创建C语言程序) VS 2022教程VsCode技巧创建C语言程序创建一个简单的C语言程序写一个简单的hello world程序#include stdio.h int main() { printf(Hello, World!\n); return 0; }其它技巧显示行号在文本编辑器中找到所有语言选择一个基于EasyX图形界面的贪吃蛇程序附贪吃蛇可执行程序下载下载安装EasyXEasyX官网点击安装创建一个C程序步骤同上修改代码#include graphics.h #include windows.h #include mmsystem.h #include tchar.h #include stdlib.h #include time.h #ifdef _MSC_VER #pragma execution_character_set(utf-8) #pragma comment(lib, winmm.lib) #endif #define WIN_W 960 #define WIN_H 720 #define TOP_H 72 #define BOARD_X 40 #define BOARD_Y 110 #define CELL 24 #define COLS 24 #define ROWS 20 #define BOARD_W (COLS * CELL) #define BOARD_H (ROWS * CELL) #define PANEL_X 650 #define PANEL_W 270 #define MAX_SNAKE (COLS * ROWS) typedef struct Point { int x; int y; } Point; typedef enum GameState { STATE_MENU 0, STATE_RUNNING 1, STATE_PAUSED 2, STATE_GAMEOVER 3 } GameState; typedef struct Button { RECT rc; int enabled; int visible; } Button; static Point g_snake[MAX_SNAKE]; static int g_snake_len 0; static Point g_food { 0, 0 }; static int g_dir_x 1; static int g_dir_y 0; static int g_next_dir_x 1; static int g_next_dir_y 0; static int g_score 0; static GameState g_state STATE_MENU; static int g_running 1; static int g_mouse_x 0; static int g_mouse_y 0; static DWORD g_last_step 0; static Button g_btn_start; static Button g_btn_pause; static Button g_btn_restart; static Button g_btn_exit; static int SamePoint(Point a, Point b) { return a.x b.x a.y b.y; } static int PointInRect(RECT rc, int x, int y) { return x rc.left x rc.right y rc.top y rc.bottom; } static int IsStartActionState(void) { switch (g_state) { case STATE_MENU: case STATE_PAUSED: case STATE_GAMEOVER: return 1; default: return 0; } } static int IsPauseActionState(void) { switch (g_state) { case STATE_RUNNING: case STATE_PAUSED: return 1; default: return 0; } } static int IsPlayableState(void) { switch (g_state) { case STATE_RUNNING: case STATE_PAUSED: case STATE_GAMEOVER: return 1; default: return 0; } } static int IsCellOnSnake(int x, int y) { int i; for (i 0; i g_snake_len; i) { if (g_snake[i].x x g_snake[i].y y) { return 1; } } return 0; } static void PlaceFood(void) { do { g_food.x rand() % COLS; g_food.y rand() % ROWS; } while (IsCellOnSnake(g_food.x, g_food.y)); } static int CurrentStepMs(void) { int speed 150 - (g_score / 50) * 6; if (speed 70) { speed 70; } return speed; } static void SetRunningState(GameState state) { g_state state; g_last_step GetTickCount(); } static void ResetGame(void) { int i; g_snake_len 4; g_score 0; g_dir_x 1; g_dir_y 0; g_next_dir_x 1; g_next_dir_y 0; for (i 0; i g_snake_len; i) { g_snake[i].x COLS / 2 - i; g_snake[i].y ROWS / 2; } PlaceFood(); } static void StartGame(void) { ResetGame(); SetRunningState(STATE_RUNNING); } static void PauseGame(void) { if (g_state STATE_RUNNING) { g_state STATE_PAUSED; } } static void ResumeGame(void) { if (g_state STATE_PAUSED) { SetRunningState(STATE_RUNNING); } } static void TogglePause(void) { if (g_state STATE_RUNNING) { PauseGame(); } else if (g_state STATE_PAUSED) { ResumeGame(); } } static void SoundClick(void) { PlaySound(TEXT(SystemDefault), NULL, SND_ALIAS | SND_ASYNC); } static void SoundFood(void) { PlaySound(TEXT(SystemAsterisk), NULL, SND_ALIAS | SND_ASYNC); } static void SoundOver(void) { PlaySound(TEXT(SystemHand), NULL, SND_ALIAS | SND_ASYNC); } static void GameOver(void) { g_state STATE_GAMEOVER; SoundOver(); } static void TrySetDirection(int dx, int dy) { if (g_next_dir_x -dx) { if (g_next_dir_y -dy) { return; } } g_next_dir_x dx; g_next_dir_y dy; } static void StepGame(void) { Point new_head; int growing; int limit; int i; int new_len; if (g_state ! STATE_RUNNING) { return; } g_dir_x g_next_dir_x; g_dir_y g_next_dir_y; new_head.x g_snake[0].x g_dir_x; new_head.y g_snake[0].y g_dir_y; if (new_head.x 0 || new_head.x COLS || new_head.y 0 || new_head.y ROWS) { GameOver(); return; } growing SamePoint(new_head, g_food); limit growing ? g_snake_len : g_snake_len - 1; for (i 0; i limit; i) { if (SamePoint(new_head, g_snake[i])) { GameOver(); return; } } new_len g_snake_len (growing ? 1 : 0); if (new_len MAX_SNAKE) { GameOver(); return; } for (i new_len - 1; i 0; --i) { g_snake[i] g_snake[i - 1]; } g_snake[0] new_head; g_snake_len new_len; if (growing) { g_score 10; SoundFood(); if (g_snake_len MAX_SNAKE) { GameOver(); return; } PlaceFood(); } } static void DrawTextCenter(RECT rc, LPCTSTR text, int text_size, COLORREF color) { int tw; int th; int x; int y; setbkmode(TRANSPARENT); settextcolor(color); settextstyle(text_size, 0, TEXT(Microsoft YaHei)); tw textwidth(text); th textheight(text); x (rc.left rc.right - tw) / 2; y (rc.top rc.bottom - th) / 2; outtextxy(x, y, text); } static void DrawButton(const Button* btn, LPCTSTR text, int enabled, int hovered) { COLORREF fill; COLORREF line; COLORREF tcolor; int shadow 5; if (!btn-visible) { return; } if (!enabled) { fill RGB(48, 52, 60); line RGB(72, 78, 88); tcolor RGB(150, 155, 165); } else if (hovered) { fill RGB(64, 90, 130); line RGB(158, 198, 255); tcolor RGB(250, 252, 255); } else { fill RGB(42, 58, 82); line RGB(112, 145, 190); tcolor RGB(238, 242, 248); } setfillcolor(RGB(8, 10, 14)); solidrectangle(btn-rc.left shadow, btn-rc.top shadow, btn-rc.right shadow, btn-rc.bottom shadow); setfillcolor(fill); setlinecolor(line); solidrectangle(btn-rc.left, btn-rc.top, btn-rc.right, btn-rc.bottom); rectangle(btn-rc.left, btn-rc.top, btn-rc.right, btn-rc.bottom); DrawTextCenter(btn-rc, text, 20, tcolor); } static void DrawPanel(void) { RECT top { 0, 0, WIN_W, TOP_H }; RECT board_bg { BOARD_X - 14, BOARD_Y - 14, BOARD_X BOARD_W 14, BOARD_Y BOARD_H 14 }; RECT panel_bg { PANEL_X - 14, BOARD_Y - 14, PANEL_X PANEL_W 14, BOARD_Y BOARD_H 14 }; setfillcolor(RGB(15, 20, 28)); solidrectangle(0, 0, WIN_W, WIN_H); setfillcolor(RGB(21, 30, 44)); solidrectangle(top.left, top.top, top.right, top.bottom); setfillcolor(RGB(67, 102, 150)); solidrectangle(0, TOP_H - 4, WIN_W, TOP_H); setfillcolor(RGB(20, 26, 35)); solidrectangle(board_bg.left, board_bg.top, board_bg.right, board_bg.bottom); setfillcolor(RGB(13, 18, 25)); solidrectangle(BOARD_X, BOARD_Y, BOARD_X BOARD_W, BOARD_Y BOARD_H); setfillcolor(RGB(20, 26, 35)); solidrectangle(panel_bg.left, panel_bg.top, panel_bg.right, panel_bg.bottom); setfillcolor(RGB(15, 20, 28)); solidrectangle(PANEL_X, BOARD_Y, PANEL_X PANEL_W, BOARD_Y BOARD_H); setlinecolor(RGB(45, 58, 74)); rectangle(BOARD_X, BOARD_Y, BOARD_X BOARD_W, BOARD_Y BOARD_H); rectangle(PANEL_X, BOARD_Y, PANEL_X PANEL_W, BOARD_Y BOARD_H); settextcolor(RGB(240, 245, 250)); setbkmode(TRANSPARENT); settextstyle(30, 0, TEXT(Microsoft YaHei)); outtextxy(28, 18, TEXT(\u8d2a\u5403\u86c7 EasyX \u6559\u5b66\u7248)); settextstyle(18, 0, TEXT(Microsoft YaHei)); outtextxy(618, 20, TEXT(\u65b9\u5411\u952e\u79fb\u52a8 \u7a7a\u683c\u6682\u505c R\u91cd\u65b0\u5f00\u59cb ESC\u9000\u51fa)); } static void DrawGrid(void) { int i; setlinecolor(RGB(28, 35, 46)); for (i 0; i COLS; i) { int x BOARD_X i * CELL; line(x, BOARD_Y, x, BOARD_Y BOARD_H); } for (i 0; i ROWS; i) { int y BOARD_Y i * CELL; line(BOARD_X, y, BOARD_X BOARD_W, y); } } static void DrawFood(void) { int cx BOARD_X g_food.x * CELL CELL / 2; int cy BOARD_Y g_food.y * CELL CELL / 2; setfillcolor(RGB(110, 14, 20)); solidcircle(cx, cy, CELL / 2 - 1); setfillcolor(RGB(235, 72, 72)); solidcircle(cx, cy, CELL / 3); setfillcolor(RGB(255, 210, 210)); solidcircle(cx - 4, cy - 4, 2); } static void DrawSnake(void) { int i; for (i g_snake_len - 1; i 0; --i) { int cx BOARD_X g_snake[i].x * CELL CELL / 2; int cy BOARD_Y g_snake[i].y * CELL CELL / 2; int body_r CELL / 2 - 2; if (i 0) { setfillcolor(RGB(130, 226, 145)); solidcircle(cx, cy, body_r 1); setfillcolor(RGB(92, 190, 111)); solidcircle(cx, cy, body_r - 2); setfillcolor(RGB(20, 30, 25)); if (g_dir_x 1) { solidcircle(cx 5, cy - 5, 2); solidcircle(cx 5, cy 5, 2); } else if (g_dir_x -1) { solidcircle(cx - 5, cy - 5, 2); solidcircle(cx - 5, cy 5, 2); } else if (g_dir_y -1) { solidcircle(cx - 5, cy - 5, 2); solidcircle(cx 5, cy - 5, 2); } else { solidcircle(cx - 5, cy 5, 2); solidcircle(cx 5, cy 5, 2); } } else { setfillcolor(RGB(59, 173, 87)); solidcircle(cx, cy, body_r); setfillcolor(RGB(73, 194, 98)); solidcircle(cx - 3, cy - 3, body_r / 2); } } } static void DrawBoardStats(void) { RECT rc; TCHAR buf[128]; LPCTSTR state_text; rc.left PANEL_X 18; rc.top BOARD_Y 18; rc.right PANEL_X PANEL_W - 18; rc.bottom BOARD_Y 48; DrawTextCenter(rc, TEXT(\u6e38\u620f\u4fe1\u606f), 24, RGB(238, 244, 250)); settextstyle(18, 0, TEXT(Microsoft YaHei)); settextcolor(RGB(230, 235, 240)); setbkmode(TRANSPARENT); wsprintf(buf, TEXT(\u5f97\u5206\uff1a%d), g_score); outtextxy(PANEL_X 24, BOARD_Y 70, buf); wsprintf(buf, TEXT(\u957f\u5ea6\uff1a%d), g_snake_len); outtextxy(PANEL_X 24, BOARD_Y 104, buf); wsprintf(buf, TEXT(\u901f\u5ea6\uff1a%d ms/\u6b65), CurrentStepMs()); outtextxy(PANEL_X 24, BOARD_Y 138, buf); if (g_state STATE_MENU) { state_text TEXT(\u83dc\u5355); } else if (g_state STATE_RUNNING) { state_text TEXT(\u8fd0\u884c); } else if (g_state STATE_PAUSED) { state_text TEXT(\u6682\u505c); } else { state_text TEXT(\u7ed3\u675f); } wsprintf(buf, TEXT(\u72b6\u6001\uff1a%s), state_text); outtextxy(PANEL_X 24, BOARD_Y 172, buf); setlinecolor(RGB(52, 64, 80)); line(PANEL_X 18, BOARD_Y 210, PANEL_X PANEL_W - 18, BOARD_Y 210); outtextxy(PANEL_X 24, BOARD_Y 228, TEXT(\u64cd\u4f5c\u8bf4\u660e\uff1a)); outtextxy(PANEL_X 24, BOARD_Y 260, TEXT(\u2191 \u2193 \u2190 \u2192 \u63a7\u5236\u65b9\u5411)); outtextxy(PANEL_X 24, BOARD_Y 292, TEXT(\u7a7a\u683c \u6682\u505c / \u7ee7\u7eed)); outtextxy(PANEL_X 24, BOARD_Y 324, TEXT(R \u91cd\u65b0\u5f00\u59cb)); outtextxy(PANEL_X 24, BOARD_Y 356, TEXT(ESC \u9000\u51fa\u7a0b\u5e8f)); } static void DrawCenterCard(void) { RECT card; RECT title_rc; RECT sub_rc; RECT tip_rc; TCHAR title[64]; TCHAR sub[128]; TCHAR tip[160]; card.left BOARD_X 58; card.top BOARD_Y 50; card.right BOARD_X BOARD_W - 58; card.bottom BOARD_Y BOARD_H - 50; setfillcolor(RGB(19, 26, 37)); solidrectangle(card.left, card.top, card.right, card.bottom); setlinecolor(RGB(82, 113, 156)); rectangle(card.left, card.top, card.right, card.bottom); setfillcolor(RGB(41, 62, 89)); solidrectangle(card.left, card.top, card.right, card.top 8); title_rc.left card.left; title_rc.top card.top 18; title_rc.right card.right; title_rc.bottom card.top 78; sub_rc.left card.left 20; sub_rc.top card.top 92; sub_rc.right card.right - 20; sub_rc.bottom card.top 158; tip_rc.left card.left 20; tip_rc.top card.bottom - 78; tip_rc.right card.right - 20; tip_rc.bottom card.bottom - 18; if (g_state STATE_MENU) { wsprintf(title, TEXT(\u8d2a\u5403\u86c7)); wsprintf(sub, TEXT(EasyX \u56fe\u5f62\u5316\u6559\u5b66\u7248)); wsprintf(tip, TEXT(\u70b9\u51fb\u53f3\u4fa7\u201c\u5f00\u59cb\u6e38\u620f\u201d\u8fdb\u5165\uff1b\u65b9\u5411\u952e\u79fb\u52a8\uff0c\u7a7a\u683c\u6682\u505c\uff0cR \u91cd\u65b0\u5f00\u59cb\u3002)); } else if (g_state STATE_PAUSED) { wsprintf(title, TEXT(\u5df2\u6682\u505c)); wsprintf(sub, TEXT(\u6e38\u620f\u4f1a\u505c\u5728\u5f53\u524d\u753b\u9762)); wsprintf(tip, TEXT(\u70b9\u51fb\u201c\u7ee7\u7eed\u6e38\u620f\u201d\u6216\u6309\u7a7a\u683c\u6062\u590d\u3002)); } else { wsprintf(title, TEXT(\u6e38\u620f\u7ed3\u675f)); wsprintf(sub, TEXT(\u6700\u7ec8\u5206\u6570\uff1a%d), g_score); wsprintf(tip, TEXT(\u70b9\u51fb\u201c\u518d\u6765\u4e00\u5c40\u201d\u6216\u6309 R \u91cd\u65b0\u5f00\u59cb\u3002)); } DrawTextCenter(title_rc, title, 40, RGB(242, 247, 252)); DrawTextCenter(sub_rc, sub, 24, RGB(203, 217, 232)); DrawTextCenter(tip_rc, tip, 20, RGB(180, 195, 210)); } static void DrawScene(void) { RECT rc; LPCTSTR start_text; LPCTSTR pause_text; int start_hover; int pause_hover; int restart_hover; int exit_hover; DrawPanel(); DrawBoardStats(); DrawGrid(); if (IsPlayableState()) { DrawFood(); DrawSnake(); } if (IsStartActionState()) { DrawCenterCard(); } if (g_state STATE_MENU) { start_text TEXT(\u5f00\u59cb\u6e38\u620f); } else if (g_state STATE_PAUSED) { start_text TEXT(\u7ee7\u7eed\u6e38\u620f); } else { start_text TEXT(\u518d\u6765\u4e00\u5c40); } if (g_state STATE_RUNNING) { pause_text TEXT(\u6682\u505c\u6e38\u620f); } else { pause_text TEXT(\u7ee7\u7eed\u6e38\u620f); } g_btn_start.visible 1; g_btn_start.enabled IsStartActionState(); g_btn_pause.visible 1; g_btn_pause.enabled IsPauseActionState(); g_btn_restart.visible 1; g_btn_restart.enabled (g_state ! STATE_MENU); g_btn_exit.visible 1; g_btn_exit.enabled 1; start_hover 0; if (g_btn_start.enabled) { start_hover PointInRect(g_btn_start.rc, g_mouse_x, g_mouse_y); } pause_hover 0; if (g_btn_pause.enabled) { pause_hover PointInRect(g_btn_pause.rc, g_mouse_x, g_mouse_y); } restart_hover 0; if (g_btn_restart.enabled) { restart_hover PointInRect(g_btn_restart.rc, g_mouse_x, g_mouse_y); } exit_hover PointInRect(g_btn_exit.rc, g_mouse_x, g_mouse_y); DrawButton(g_btn_start, start_text, g_btn_start.enabled, start_hover); DrawButton(g_btn_pause, pause_text, g_btn_pause.enabled, pause_hover); DrawButton(g_btn_restart, TEXT(\u91cd\u65b0\u5f00\u59cb), g_btn_restart.enabled, restart_hover); DrawButton(g_btn_exit, TEXT(\u9000\u51fa\u7a0b\u5e8f), g_btn_exit.enabled, exit_hover); rc.left PANEL_X 18; rc.top BOARD_Y BOARD_H - 92; rc.right PANEL_X PANEL_W - 18; rc.bottom BOARD_Y BOARD_H - 22; DrawTextCenter(rc, TEXT(\u8bfe\u8bbe\u63d0\u793a\uff1a\u53ef\u76f4\u63a5\u6f14\u793a\u83dc\u5355\u3001\u6682\u505c\u3001\u91cd\u5f00\u548c\u97f3\u6548), 18, RGB(150, 165, 182)); } static void OnMouseClick(int x, int y) { if (PointInRect(g_btn_start.rc, x, y)) { if (!IsStartActionState()) { return; } SoundClick(); if (g_state STATE_PAUSED) { ResumeGame(); } else { StartGame(); } return; } if (PointInRect(g_btn_pause.rc, x, y)) { if (!IsPauseActionState()) { return; } SoundClick(); TogglePause(); return; } if (PointInRect(g_btn_restart.rc, x, y) g_state ! STATE_MENU) { SoundClick(); StartGame(); return; } if (PointInRect(g_btn_exit.rc, x, y)) { SoundClick(); g_running 0; } } static void OnKeyDown(int vk) { switch (vk) { case VK_UP: if (g_state STATE_RUNNING) { TrySetDirection(0, -1); } break; case VK_DOWN: if (g_state STATE_RUNNING) { TrySetDirection(0, 1); } break; case VK_LEFT: if (g_state STATE_RUNNING) { TrySetDirection(-1, 0); } break; case VK_RIGHT: if (g_state STATE_RUNNING) { TrySetDirection(1, 0); } break; case VK_SPACE: if (IsPauseActionState()) { TogglePause(); SoundClick(); } else { StartGame(); SoundClick(); } break; case R: StartGame(); SoundClick(); break; case VK_RETURN: if (IsStartActionState()) { if (g_state STATE_PAUSED) { ResumeGame(); } else { StartGame(); } SoundClick(); } break; case VK_ESCAPE: g_running 0; break; default: break; } } static void InitButtons(void) { g_btn_start.rc.left PANEL_X 24; g_btn_start.rc.top BOARD_Y 220; g_btn_start.rc.right PANEL_X PANEL_W - 24; g_btn_start.rc.bottom BOARD_Y 268; g_btn_start.enabled 1; g_btn_start.visible 1; g_btn_pause.rc.left PANEL_X 24; g_btn_pause.rc.top BOARD_Y 286; g_btn_pause.rc.right PANEL_X PANEL_W - 24; g_btn_pause.rc.bottom BOARD_Y 334; g_btn_pause.enabled 1; g_btn_pause.visible 1; g_btn_restart.rc.left PANEL_X 24; g_btn_restart.rc.top BOARD_Y 352; g_btn_restart.rc.right PANEL_X PANEL_W - 24; g_btn_restart.rc.bottom BOARD_Y 400; g_btn_restart.enabled 1; g_btn_restart.visible 1; g_btn_exit.rc.left PANEL_X 24; g_btn_exit.rc.top BOARD_Y 418; g_btn_exit.rc.right PANEL_X PANEL_W - 24; g_btn_exit.rc.bottom BOARD_Y 466; g_btn_exit.enabled 1; g_btn_exit.visible 1; } int main(void) { ExMessage msg; DWORD now; DWORD last_frame 0; srand((unsigned int)time(NULL)); initgraph(WIN_W, WIN_H); SetWindowText(GetHWnd(), TEXT(\u8d2a\u5403\u86c7 EasyX \u6559\u5b66\u7248)); setbkcolor(RGB(15, 20, 28)); setbkmode(TRANSPARENT); InitButtons(); ResetGame(); SetRunningState(STATE_MENU); BeginBatchDraw(); while (g_running) { while (peekmessage(msg, EM_MOUSE | EM_KEY, true)) { if (msg.message WM_MOUSEMOVE) { g_mouse_x msg.x; g_mouse_y msg.y; } else if (msg.message WM_LBUTTONDOWN) { g_mouse_x msg.x; g_mouse_y msg.y; OnMouseClick(msg.x, msg.y); } else if (msg.message WM_KEYDOWN) { OnKeyDown(msg.vkcode); } } now GetTickCount(); if (g_state STATE_RUNNING) { if (now - g_last_step (DWORD)CurrentStepMs()) { StepGame(); g_last_step now; } } if (now - last_frame 16) { cleardevice(); DrawScene(); FlushBatchDraw(); last_frame now; } Sleep(10); } EndBatchDraw(); closegraph(); return 0; }运行效果VS code教程1 疑难解析1 中文乱码请看看最后要加一行代码代码一代码如下code-runner.executorMap:{javascript:node,php:C:\\php\\php.exe,python:python,perl:perl,ruby:C:\\Ruby23-x64\\bin\\ruby.exe,go:go run,html:\C:\\Program Files (x86)\\Google\\Chrome\\Application\\chrome.exe\,java:cd $dir javac $fileName java $fileNameWithoutExt,c:chcp 65001 cd $dir gcc $fileName -o $fileNameWithoutExt $dir$fileNameWithoutExt},代码二下面这个基本上解决了控制台和运行窗口中文乱码的问题温馨提示使用下面的代码时在调用其他系统文件时要确保文件编码为GBK格式。例如在调用Windows系统的文本文件时要确保文件的编码格式为GBK格式code-runner.executorMap:{javascript:node,php:C:\\php\\php.exe,python:python,perl:perl,ruby:C:\\Ruby23-x64\\bin\\ruby.exe,go:go run,html:\C:\\Program Files (x86)\\Google\\Chrome\\Application\\chrome.exe\,java:cd $dir javac $fileName java $fileNameWithoutExt,// c: chcp 65001 cd $dir gcc $fileName -o $fileNameWithoutExt $dir$fileNameWithoutExtc:cd $dir gcc $fileName -o $fileNameWithoutExt -finput-charsetUTF-8 -fexec-charsetGBK .\\$fileNameWithoutExt//输入UTF-8 → 输出GBK兼容默认终端//参数作用//-finput-charsetUTF-8声明源代码文件为UTF-8编码若文件实际编码不符需调整//-fexec-charsetGBK强制可执行文件运行时使用GBK编码输出匹配CMD/PowerShell默认编码},点击可执行程序一闪而过解决可执行程序.exe一闪而过的方法在C语言中在主程序中的最后应加入system(pause),如出现无法识别system则应在头文件上加上#include stdlib.h即可在python中在Python脚本末尾添加阻塞代码强制等待用户输入(推荐系统兼容性好)input(按回车键退出...)或使用系统暂停命令importos os.system(pause)3 打开可执行程序.exe中文乱码如下图在tasks.json中添加-fexec-charsetGBK重启软件即可温馨提示注意添加时不要忘记代码的格式要在前面加上一个英文格式下的逗号分隔符在VScode里面打开控制台如下图在launch.json中把false改为true则可以再工具栏中的运行选项中选择以非调试模式运行打开控制台打开别人的程序文件中文乱码通过改变编码重新打开可选择GBK格式