首页 music 关于 推荐 Codeforcce BiLiBiLi GitHub Search 1 《美丽数学》读书笔记 70 阅读 2 2023年10月11日创世之初 50 阅读 3 C语言基础 44 阅读 4 冒泡排序 39 阅读 5 排序算法 30 阅读 大事件 读书记录 C语言 SQL C++ 函数 算法 Python 数据结构 教程 登录 Search 标签搜索 C语言 SQL 函数 mellowsky 累计撰写 27 篇文章 累计收到 1 条评论 首页 栏目 大事件 读书记录 C语言 SQL C++ 函数 算法 Python 数据结构 教程 页面 music 关于 推荐 Codeforcce BiLiBiLi GitHub 搜索到 27 篇与 的结果 2024-04-13 各种函数的用法 sort函数 algorithm头文件中的sort函数运用作用: 对范围内元素进行排序语法: 需要声明algorithm头文件sort( first ,last ,comp );其中first与last为起始与终末位置first与last为地址并非值。comp是接收两个元素并返回bool类型的函数,注意并非函数调用,因此在函数名后面无需添加()comp函数不改变值,可以是函数指针或函数对象comp可以省略,当省略时将使用默认排序,默认排序为从小到大排序。 实例:#include<iostream> #include<algorithm> using namespace std; bool comp(int x, int y) { return x > y;//从大到小排序 } int main() { int arr[5] = { 52,23,71,17,89 }; sort(arr, arr+5,comp); for (int i = 0; i < 5; i++) { cout << arr[i]<<" "; } cout<<endl; return 0; }getline函数 作用: 对字符串进行输入 特点: 与cin不同可以读入cin不能读入的空格。 此函数可读取整行,包括前导和嵌入的空格,并将其存储在字符串对象中。 语法: getline(cin, inputLine); inputline是接收输入的字符串string变量的名字。 实例:#include<iostream> #include<string> using namespace std; int main() { string str; getline(cin, str); cout << str << endl; return 0; } 2024年04月13日 12 阅读 0 评论 0 点赞 2024-03-21 C++简单实现扫雷游戏 在test.cpp中测试#include"game.h" void menu() { //打印初始界面 cout << "******************" << endl; cout << "******************" << endl; cout << "****1.开始游戏*****" << endl; cout << "****0.结束游戏*****" << endl; cout << "******************" << endl; cout << "******************" << endl; } void game() { //实现扫雷游戏 //mine中存放雷 char mine[ROWS][COLS] = { '0' };//数组全部初始化为0 //show中存放排查出的雷的信息 char show[ROWS][COLS] = { '*' };//数组全部初始化为* //初始化棋盘 InitBoard(mine, ROWS, COLS, '0'); InitBoard(show, ROWS, COLS, '*'); //打印棋盘 //DisplayBoard(mine, ROW, COL); //DisplayBoard(show, ROW, COL); //布置雷 SetMine(mine,ROW,COL); //DisplayBoard(mine, ROW, COL); DisplayBoard(show, ROW, COL); //排查雷 FindMine(mine ,show,ROW,COL); } void test() { int input; srand((unsigned int)time(NULL)); do { menu(); cout << "请选择->" << endl; cin >> input; switch (input) { case 1: cout << "开始扫雷" << endl; game(); break; case 0: cout << "退出游戏" << endl; break; default : cout << "选择错误,请重新选择" << endl; } } while (input); } int main() { test(); return 0; } 在game.cpp中实现扫雷主要功能#include"game.h" #include<ctime> #include<cstdlib> //初始化棋盘 void InitBoard(char arr[ROWS][COLS], int rows, int cols,char temp) { for (int i = 0; i < ROWS; i++) { for (int j = 0; j < COLS; j++) { arr[i][j] = temp; } } } //打印棋盘 void DisplayBoard(char arr[ROWS][COLS], int row, int col) { int i; //打印列号 cout << "----------扫雷----------" << endl; for (i = 0; i <= COL; i++) { cout << i; } cout << endl; for (i = 1; i <= ROW; i++) { cout << i; for (int j = 1; j <= COL; j++) { cout << arr[i][j]; } cout << endl; } } //布置雷 void SetMine(char mine[ROWS][COLS], int row, int col) { int count = EASY_COUNT; while (count) { int x = rand() % row + 1; int y = rand() % col + 1; if(mine[x][y] == '0') { mine[x][y] = '1'; count--; } } } //计算周围雷的个数 static int GetMineCount(char mine[ROWS][COLS], int x, int y) { return mine[x + 1][y] + mine[x - 1][y] + mine[x + 1][y + 1] + mine[x][y + 1] + mine[x - 1][y + 1] + mine[x + 1][y - 1] + mine[x][y - 1] + mine[x - 1][y - 1] - 8 * '0'; } //找雷 void FindMine(char mine[ROWS][COLS], char show[ROWS][COLS], int row, int col) { int x; int y; while(1) { cout << "请输入要排查的雷" << endl; cin >> x >> y; //判断数据是否有效 if (x >= 1 && x <= row && y >= 1 && y <= col) { if (mine[x][y] == '1') { cout << "很遗憾你被炸死了"<<endl; DisplayBoard(mine, ROW, COL); break; } else { //该坐标不是雷,显示周围有几个雷 int count=GetMineCount(mine,x,y); show[x][y] = count + '0'; DisplayBoard(show, ROW, COL); } } else { cout << "输入无效,请重新输入"; } } }在game.h中声明行列,雷的个数,函数#pragma once #include<iostream> #include<ctime> #include<cstdlib> using namespace std; //控制行和列 #define ROW 9 #define COL 9 #define ROWS ROW+2 #define COLS COL+2 #define EASY_COUNT 10 //声明函数 void test(); void InitBoard(char arr[ROWS][COLS], int rows ,int cols,char set); void DisplayBoard(char arr[ROWS][COLS], int row, int col); void SetMine(char arr[ROWS][COLS],int row,int col); void FindMine(char mine[ROWS][COLS], char show[ROWS][COLS], int row, int col); 2024年03月21日 26 阅读 0 评论 2 点赞 2023-11-15 冒泡排序 冒泡排序的大致流程:依次 比较 相邻的两个数,正序则不动,倒序则交换位置,如此循环,直到整个数组为有序为止#include<stdio.h> int main() { int i, j, arr[10], num; for (i = 0; i < 10; i++) { scanf_s("%d", &arr[i]); } //冒泡次数为i-1次 for (i = 0; i < 9; i++) { for (j = 0; j < 9 - i; j++) { if (arr[j] > arr[j + 1]) { num = arr[j]; arr[j] = arr[j + 1]; arr[j + 1] = num; } } } for (i = 0; i < 10; i++) { printf("%d ", arr[i]); } printf("\n"); return 0; }... 2023年11月15日 39 阅读 0 评论 0 点赞 2023-11-05 SQL 什么是数据库:将大量数据保存起来,通过计算机加工而成的可以进行高效访问的数据集合称为数据库 2023年11月05日 13 阅读 0 评论 1 点赞 2023-10-21 C语言基础 基本符号:0 1 2 3 4 5 6 7 8 9 //数字十个 a b c d e f g h i j k l m n o p q r s t u v w x y z A B C D E F G H I J K L M N O P Q R S T U V W X Y Z //大小写字母各26个 + - * / % < <= > >= == != && || ! //主要的特殊符号: & | ~ = ++ -- ?: << >> () [] {} , //由1到2个特殊符号组成32个关键字:关键字作用关键字作用auto局部变量break跳出循环case判断选择char声明单个字符const定义常量且不能被修改continue结束本次循环,进行下一次循环default缺省情况do执行某代码块double双精度浮点型elseif不满足则执行int整数值long长整型register寄存器变量return表示返回或返回指定类型的值short短整型signed有符号的sizeof单目操作符static隐藏,保持变量内容的持久,默认初始化为 0struct结构体switch多分支选择语句typedef自定义数据类型名称union保存多个数据类型的数据unsigned声明无符号类型的整数类型void无类型volatile直接存取原始内存地址while循环标识符可以由英文字母,数字,下划线“_”组成不能以关键字作为标识符为了使程序易读易改,应该命名恰当数据类型(1)基本类型1.整型短整型(short),整型(int),长整型(long)。2.实型单精度型(float),双精度型(double)。3.字符类型 char(2)结构类型数组,结构体(struct),联合体(union),枚举类型(enum)。(3)指针类型(4)空类型 void(5)定义类型 typedefprintfprintf ( " " ); 用来打印,引号内为打印内容,如可在内输入Hello World,运行时打印出Hello World 可在" "内使用转义字符scanfscanf ( " " ) ; 用于输入," "内为输入内容, 2023年10月21日 44 阅读 1 评论 0 点赞 1...456