
C&C++日常总结
C&C++日常总结
王保保_个人学习
重新出发
展开
-
Linux常用操作
原创 2020-11-04 17:21:46 · 261 阅读 · 0 评论 -
写一函数,将一个3*3的整型矩阵转置。
写一函数,将一个3*3的整型矩阵转置。(指针法)方法一:#include <stdio.h>void trans(int (*s)[3], int x, int y); //定义转置函数int main(){ int a[3][3], *p, i, j; for (p=*a, printf("Please enter array: "); p<*a+9; scanf("%d", p++)); //输入矩阵元素 trans(a, 3, 3转载 2020-10-05 17:02:28 · 19752 阅读 · 2 评论 -
C - 2048 Game
You are playing a variation of game 2048. Initially you have a multiset s of n integers. Every integer in this multiset is a power of two.You may perform any number (possibly, zero) operations with this multiset.During each operation you choose two equal原创 2020-09-21 20:46:07 · 389 阅读 · 0 评论 -
B - Knights
You are given a chess board with n rows and n columns. Initially all cells of the board are empty, and you have to put a white or a black knight into each cell of the board.A knight is a chess piece that can attack a piece in cell (x2, y2) from the cell (原创 2020-09-21 19:25:02 · 279 阅读 · 0 评论 -
A - Perfect Team
InputThe first line contains a single integer q (1≤q≤104) — the number of queries.Each of the next q lines contains three integers c, m and x (0≤c,m,x≤108) — the number of coders, mathematicians and students without any specialization in the university,原创 2020-09-21 00:02:29 · 138 阅读 · 0 评论 -
C++程序设计第三版(谭浩强版)第八章习题
1、#include <iostream>using namespace std;class Time{public: void set_time(void); void show_time(void);private: int hour; int minute; int sec;};int main(){ Time t; t.set_time(); t.show_time(); return 0;}void Time :: set_time(vo原创 2020-07-30 11:46:27 · 882 阅读 · 0 评论 -
输入一个字符串,内有数字和非数字字符,将其中连续的数字作为一个整数,依次存放到一数组a中。统计共有多少个整数,并输出这些数。
#include <iostream>#include <string>using namespace std;int main(){ int judge(char n); char input[100]; cin >> input; char* p, *q; int a[100]; int num = 0; int sum = 0; for (p = input; *p != '\0'; p++) { if (*p>='0'&am原创 2020-07-28 10:42:16 · 1466 阅读 · 0 评论 -
用指针操作字符串数组
#include <iostream>using namespace std;int main(){ char str1[50] = { 0 }; char str2[] = "i love you!"; char* p; char* q; for (p = str2, q = str1; *p != '\0'; p++,q++) { *q = *p; } cout << str1 << endl; return 0;}原创 2020-07-27 16:02:27 · 1054 阅读 · 0 评论 -
获取整型数组中的最大最小值
#include <iostream>#include <string>using namespace std;int main(){ int max, min; void get_min_max(int[], int*, int*, int); int a[] = { 2,23,3,5,6,3241,324,3,2,2,0}; get_min_max(a, &max, &min, sizeof(a)/4); cout << "m原创 2020-07-27 15:11:23 · 837 阅读 · 0 评论 -
不用strcmp函数实现字符串的连接
#include <iostream>using namespace std;int main(){ int Count(char b[]); void Connect(char des[], const char sou[], int len); char a[50] = "hello"; char b[] = ",leekaimao"; int len = Count(a); Connect(a, b, len); cout << "a = " <&l原创 2020-07-26 16:32:21 · 352 阅读 · 0 评论 -
输入10个整数,将其中最小的数与第一个数对换,把最大的数与最后一个数对换。写3个函数:1.输入10个整数;2.进行处理;3.输出10个数
**输入10个整数,将其中最小的数与第一个数对换,把最大的数与最后一个数对换。写3个函数:1.输入10个整数;2.进行处理;3.输出10个#include <iostream>using namespace std;int main(){ int a[10]; void Input(int* p, int n); void Sort(int* p, int n); void Output(int* p, int n); Input(a, 10); Sort(a, 10);原创 2020-07-24 09:45:28 · 1660 阅读 · 0 评论 -
输入三个字符串,按又小到大的顺序输出
方法1:#include <iostream>#include <string>#pragma warning(disable:4996)using namespace std;int main(){ char str1[20], str2[20], str3[20]; cout << "请输入三个字符串:" << endl; gets_s(str1,20); gets_s(str2,20); gets_s(str3,20); if (st原创 2020-07-23 17:11:14 · 601 阅读 · 0 评论 -
VS用不了strcpy函数怎办
增加预编译指令#pragma warning(disable:4996)搞定!原创 2020-07-23 15:59:55 · 1760 阅读 · 0 评论 -
输入三个整数,按由小到大的顺序输出
#include <iostream>using namespace std;void swap(int* p1, int* p2){ int temp; temp = *p1; *p1 = *p2; *p2 = temp;}void exchange(int* a, int* b, int* c){ if (*a > *b)swap(a, b); if (*a > * c)swap(a, c); if (*b > * c)swap(b, c);...原创 2020-07-23 15:45:27 · 1681 阅读 · 0 评论 -
VS2019中报错E01104“const char *”类型的值不能用于初始化“char *”类型的实体时怎么办
当你初学C++的时候,满怀期待地照着书,你可能在写这样一行代码:很不幸的是,结果是这样的:你看了书上的代码再三确定自己是跟着书本一步一步来的,没理由出问题,当你实在没办法的时候,嘿!看这里:一、二、即在VS2019中依次点击项目->属性->C/C+±>语言->符合模式,将原来的“是”改为“否”即可。还有一种解决办法:在声明变量 char 时改成 const char 即可...原创 2020-07-23 08:54:21 · 780 阅读 · 1 评论 -
局部变量和全局变量c++
1、什么是局部变量,什么是全局变量?举个例子:张三是张三村的村长,李四是李四村的村长,那么张三村的村民有什么事儿都可以去找张三村,张三也对该存有管辖权,对吧?李四呢,自然李四村的村民都能找到李四这个村长了。反过来,你让李四村的村民去找张三村的村长来解决问题那肯定是不行的,不是一个村子,自然不能相互公用了。那么这时候呢如果出来个王五镇长,那么就方便多了。张三村和李四村的村民都可以直接找王五镇长办事儿。所以这里面的张三、张三村的村民、李四、李四村的村民都算是局部变量,只能在自己的范围内或者说作用域内活动,那转载 2020-07-19 16:37:38 · 359 阅读 · 0 评论 -
函数的返回值注意事项精简
函数的返回值:一般情况下,通过函数的调用,使调用函数可以获得被调用函数的函数值,这个值就叫做返回值。注意事项:①、有的函数有返回值,有的函数没有返回值,具体看函数的声明类型,如果返回值类型为 void 则为无返回值类型;②、函数的返回值是通过函数中的 return 语句获得的。一个函数中可以有一个以上的return语句,执行到哪个return就从哪个return返回了,return语句执行完之后,他之后的代码不会被执行;③、函数内部的return返回值类型要与函数本身定义时候的返回值类型一致,即使原创 2020-07-19 08:20:49 · 720 阅读 · 0 评论 -
C++的输入输出超级超级详细讲解
一、cin 和 coutC++相关变量值的输出,使用的是 cout,那么在C++中进行打印输出一般是用输入与输出流库中的 cin 和 cout 来实现的。cin 和 cout 的定义是在 iostream 中,命名空间为 std,所以如果我们的程序中要使用 cin 和 cout 就必须要加上以下两条语句:#include <iostream>using namespace std;在进行输入和输出的时候,我们经常使用 << 和 >> 符号。例如:cout &l转载 2020-07-18 15:21:28 · 27744 阅读 · 3 评论 -
逗号表达式和运算符的优先级
逗号表达式:逗号表达式在以后的编程中也会经常遇到,其规则是: 所有以逗号间隔的表达式都进行计算,各个表达式的计算顺序按照从左往右。整个表达式的值是最后一个逗号表达式的值。 例如:int x = 0;int y = 0;x +=2, y+= 3;int q = ((x++), (++y));我要问问大家了,q的值是多少呢?q的值等于3.运算符的优先级:...原创 2020-07-18 14:43:12 · 3019 阅读 · 5 评论 -
混合类型运算规则
混合类型运算规则:在表达式遇到不同数据类型的混合运算时,要求不同类型的数据要先转换成同一类型然后才能进行运算。默认编译器会有个规则进行自动转换:自动转换遵循以下规则:1) 若参与运算的两个参数类型不同,则先转换成同一类型,然后再进行运算;2) 按照数据长度增加的方向进行(即:由 少字节类型 向 多字节类型 转换),以保证精度不丢失;3) 所有的浮点运算都是以双精度进行的,即使仅含 float 单精度量运算的表达式,也要先转换成 double 类型,再作运算;4) char 类型 和 short原创 2020-07-18 13:09:34 · 2374 阅读 · 0 评论 -
顺序表操作大全
顺序表的存储结构#define MAXSIZE 100 //顺序表可能达到的最大长度typedef struct{ ElemType *elem; //存储空间的基地址 int length; //当前长度}Sqlist; //顺序表的结构类型为SqList多项式的顺序存储结构的类型定义#define MAXIZE 100 //多项式可能达到的最大长度typedef struct原创 2020-07-07 11:45:43 · 248 阅读 · 0 评论 -
抽象数据类型(复数)
构建复数结构体数据类型头文件://complex.h头文件内容#ifndef COMPLEX_H#define COMPLEX_Htypedef struct { float Realpart; float Imagepart;}complex;//创建一个复数complex Creat(float x, float y);//获得复数的实部float Getreal(complex c);//获得数据的虚部float Getimage(complex c);//求两个复数的原创 2020-06-27 15:12:33 · 1884 阅读 · 0 评论 -
C的作用域规则
任何一种编程中,作用域是程序中定义的变量所存在的区域,超过该区域变量就不能被访问。C 语言中有三个地方可以声明变量:在函数或块内部的局部变量在所有函数外部的全局变量在形式参数的函数参数定义中局部变量在某个函数或块的内部声明的变量称为局部变量。它们只能被该函数或该代码块内部的语句使用。局部变量在函数外部是不可知的。下面是使用局部变量的实例。在这里,所有的变量 a、b 和 c 是 ma...原创 2020-03-27 19:15:06 · 205 阅读 · 0 评论 -
函数参数的两种传递方式
如果函数要使用参数,则必须声明接受参数值的变量。这些变量称为函数的形式参数。形式参数就像函数内的其他局部变量,在进入函数时被创建,退出函数时被销毁。当调用函数时,有两种向函数传递参数的方式:一、传值调用该方法把参数的实际值复制给函数的形式参数。在这种情况下,修改函数内的形式参数不会影响实际参数。默认情况下,C 语言使用传值调用方法来传递参数。一般来说,这意味着函数内的代码不会改变用于调用...原创 2020-03-27 19:02:11 · 7615 阅读 · 1 评论 -
位运算符详细介绍及各种使用技巧
一,位运算符的详细介绍位运算符作用于位,并逐位执行操作。&、 | 和 ^ 的真值表如下所示:假设如果 A = 60,且 B = 13,现在以二进制格式表示,它们如下所示:A = 0011 1100B = 0000 1101A&B = 0000 1100A|B = 0011 1101A^B = 0011 0001~A = 1100 0011下表显示了 C 语言...原创 2020-03-27 18:41:40 · 4021 阅读 · 0 评论 -
新手必须熟悉的运算符优先级
括号成员是老大; // 括号运算符 成员运算符. ->全体单目排老二; // 所有的单目运算符比如++、 --、 +(正)、 -(负) 、指针运算*、&乘除余三,加减四; // 这个"余"是指取余运算即%移位五,关系六; // 移位运算符:<< >> ,关系:> < >= <= 等等与不等...原创 2020-03-27 17:56:57 · 773 阅读 · 0 评论 -
C存储类关键字:auto register static extern
C 存储类存储类定义 C 程序中变量/函数的范围(可见性)和生命周期。这些说明符放置在它们所修饰的类型之前。autoauto 存储类是所有局部变量默认的存储类。{ int mount; auto int month;}定义了两个带有相同存储类的变量,auto 只能用在函数内,即 auto 只能修饰局部变量。registerregister 存储类用于定义存储在寄...原创 2020-03-27 12:52:41 · 254 阅读 · 0 评论 -
五分钟深刻理解宏定义常量#define和onst常变量
宏常量:#define 标识符(一般大写) 字符串(无论你输入的是什么它都会当成字符串,不区分数据类型)因为宏定义是一条编译预处理指令(效率更高),所以它不是一条c语句,最后不用加分号。意在替换。const常量:编译器将const常量放在只读存储区(只读存储区不允许进行写操作)为什么要将const常量放在只读存储区中呢,因为它是一个常量……所以只能在定义的时候赋初值。...原创 2020-03-27 12:32:50 · 1274 阅读 · 0 评论 -
C语言extern详解必懂
一、首先,extern是关于声明的关键字:变量的声明有两种情况:1、一种是需要建立存储空间的。例如:int a 在声明的时候就已经建立了存储空间。2、另一种是不需要建立存储空间的,通过使用extern关键字声明变量名而不定义它。 例如:extern int a 其中变量 a 可以在别的文件中定义的。简单总结:除非有extern关键字,否则都是变量的定义。extern int i; /...转载 2020-03-27 12:16:16 · 72217 阅读 · 16 评论 -
01字串
简单记录问题描述对于长度为5位的一个01串,每一位都可能是0或1,一共有32种可能。它们的前几个是:0000000001000100001100100请按从小到大的顺序输出这32种01串。输入格式本试题没有输入。输出格式输出32行,按从小到大的顺序每行一个长度为5的01串。样例输出00000000010001000011<以下部分省略>代码1:#...原创 2020-03-25 13:07:22 · 107 阅读 · 0 评论 -
用%c格式符输入数据时存在的问题
用scanf()函数的%c格式符输入字符型数据时 要注意什么问题?一、出现的问题先看代码:#include <stdio.h>int main(){ int a; char b; float c; printf("Please input an integer:"); scanf("%d", &a); printf("i...原创 2020-03-24 14:42:31 · 1801 阅读 · 0 评论 -
十六进制转八进制(基础版)
思路:先将输入的十六进制字符转换正十进制数,再以十进制数为中间媒介进行八进制的转换。上代码:#include <stdio.h>#include <string.h>#include <math.h>const int maxn = 128;char input[maxn];int getnum(char a){ switch(a) ...原创 2020-03-16 22:12:27 · 585 阅读 · 0 评论 -
二进制转十进制,八进制转十进制,十六进制转十进制,十进制转二进制,十进制转八进制,十进制转十六进制。
此篇博客是摘抄总结的,巩固基础。上代码:二进制转10进制:int BinarytoDecimal(long long n){ int decimalnumber = 0, i = 0, remainder; while(n!=0) { remainder = n%10; n/=10; decimalnumber +...原创 2020-03-13 12:37:44 · 453 阅读 · 0 评论 -
蓝桥杯基础练习30题-数列排序
问题描述 给定一个长度为n的数列,将这个数列按从小到大的顺序排列。1<=n<=200输入格式 第一行为一个整数n。 第二行包含n个整数,为待排序的数,每个整数的绝对值小于10000。输出格式 输出一行,按从小到大的顺序输出排序后的数列。样例输入58 3 6 4 9样例输出3 4 6 8 9上代码:#include <stdio.h>#in...原创 2020-03-11 21:19:03 · 311 阅读 · 0 评论 -
用getchar()函数输入数据存在的问题
首先,用getchar()函数的时候有两大特征:以回车符’\n’结束字符的输入 输入的字符(包括回车符)都放在输入缓冲区中这就需要讲一讲行缓冲(Line-buffer)输入方式:1、将输入字符先放入输入缓冲队列中,再从缓冲队列读取字符 2、直到键入回车符或文件结束符EOF时,程序才认为输入结束 3、一行输入结束,getchar()才开始从输入缓冲队列读取字符, 前面函数没读走的数...原创 2020-03-06 16:31:18 · 1306 阅读 · 0 评论 -
素数筛选
总结两种素数筛选:简单版:bool isprime(int n){ int i; for(i=2; i*i<=n; i++) { if (n%i==0) return false; } return true;}复杂版(相较于上者时间复杂度要低):int prime[100005] ;void isprime(){ int i,j; for(i=2;...原创 2020-03-04 13:35:06 · 172 阅读 · 0 评论 -
【C语言做题系列】完数
完数的定义:如果一个大于1的正整数的所有因子之和等于它的本身,则称这个数是完数,比如6,28都是完数:6=1+2+3;28=1+2+4+7+14。本题的任务是判断两个正整数之间完数的个数。Input输入数据包含多行,第一行是一个正整数n,表示测试实例的个数,然后就是n个测试实例,每个实例占一行,由两个正整数num1和num2组成,(1<num1,num2<10000) 。Out...原创 2020-03-04 11:59:27 · 2838 阅读 · 1 评论 -
【C语言做题系列】Number Steps
Starting from point (0,0) on a plane, we have written all non-negative integers 0, 1, 2,… as shown in the figure. For example, 1, 2, and 3 has been written at points (1,1), (2,0), and (3, 1) respectiv...原创 2020-02-13 12:24:26 · 289 阅读 · 0 评论 -
【C语言做题系列】Binary Numbers
Given a positive integer n, find the positions of all 1’s in its binary representation. The position of the least significant bit is 0.ExampleThe positions of 1’s in the binary representation of 13 ...原创 2020-02-13 11:54:51 · 611 阅读 · 0 评论 -
【C语言做题系列】A Simple Task
Given a positive integer n and the odd integer o and the nonnegative integer p such that n = o2^p.ExampleFor n = 24, o = 3 and p = 3.TaskWrite a program which for each data set:reads a positive i...原创 2020-02-13 10:54:48 · 478 阅读 · 0 评论