C++代码练习
OliverkingLi
耶耶
展开
-
标准模板库中的队列实现例子
// c++_test.cpp : 定义控制台应用程序的入口点。//#include"stdafx.h"#include#include#include#includeusing namespace std;int main() { queue q1; queue> q2; q1.push(1); q1.push(2); q1.push(3); q2.push(4)原创 2017-05-15 22:50:47 · 432 阅读 · 1 评论 -
C语言小练习--指针数组等
#include"stdafx.h"#include #include #include #include #include // #include #define SIZE 100void to_binary(unsigned long);int StrToInt(char*string);int sum(const int*);void copy_arr(double原创 2018-03-15 19:09:51 · 374 阅读 · 0 评论 -
c语言实现函数指针小demo
#include"stdafx.h"#include #include #include #include // #include #define LEN 81char showmenu(void);// 读取至行尾void eatline(void);void show(void(*fp)(char *), char *str);// 字符串转换为大写void ToUp原创 2018-03-23 20:02:23 · 391 阅读 · 0 评论 -
c语言结构体demo
#include"stdafx.h"#include #include #include // #include #define LEN 20#define FUNDLEN 50#define SIZE 81int loop(int);void trysat(void);// double sum(const struct funds*);double sum(const原创 2018-03-21 15:41:09 · 438 阅读 · 0 评论 -
c代码实现结构体存储信息到文件操作
#include"stdafx.h"#include #include #include // #include #define MAXTITL 40#define MAXAUTL 40#define MAXBKS 10char *s_gets(char*st, int n);// book模板struct book { char title[MAXTITL]; cha原创 2018-03-21 16:30:45 · 1941 阅读 · 0 评论 -
线性表的定义
#include"stdafx.h"#include #include #include #include // #include #define MAXSIZE 100// 定义线性表的结构体typedef struct LNode*List;struct LNode { // 定义数据域和指向像一个节点的指针 int Data; List*next;};// 获取链原创 2018-04-03 12:11:02 · 1136 阅读 · 3 评论 -
堆栈定义
#include"stdafx.h"#include #include #include #include // #include #define MAXSIZE 100/*// 定义堆栈的结构体typedef struct SNode*Stack;struct SNode {// 数据域int Data[MAXSIZE];// 栈顶指针int top;};// 入原创 2018-04-03 12:11:59 · 703 阅读 · 0 评论 -
队列定义
#include"stdafx.h"#include #include #include #include // #include #define MAXSIZE 100/*typedef struct QNode*Queen;struct QNode { int Data[MAXSIZE]; int front; int rear;};int isFull(Queen原创 2018-04-03 12:13:10 · 293 阅读 · 0 评论 -
最大公约数&最小公倍数(GCD,LCM)
// 最大公约数void get_GCD(){ int a, b; while (scanf_s("%d%d", &a, &b) != EOF) { /* 求解两个正整数的最大公约数: 假设为a,b;如果g是a,b的最大公约数,那么g也一定是b和(a mod b)的最大公约数 则可以迭代: a = b,b = a mod b把问题规模降下来...原创 2019-02-01 15:37:21 · 973 阅读 · 0 评论 -
素数求解
// 求某个正整数是否为素数void is_Prime(){ int s; while (scanf_s("%d", &s) != EOF) { if (s < 2) { printf("NO\n"); } else { int r = -1; // 这里先计算平方根,然后+1避免精度损失,同时for循环仅计算一次平方根 // 同时...原创 2019-02-01 15:41:52 · 383 阅读 · 0 评论 -
二叉排序树构建和前序,中序,后续遍历实现
好久没冒过泡。。。这次复习数据结构,搞个二叉排序树code:#include "stdafx.h"#include <stdio.h>#include <iostream>#include <vector>#include <string>#include <unordered_map>#include <..原创 2019-01-28 18:47:54 · 539 阅读 · 0 评论 -
根据二叉树前序序列和中序序列还原二叉树,并输出后序遍历序列
code:#include "stdafx.h"#include <stdio.h>#include <iostream>#include <vector>#include <string>#include <unordered_map>#include <stdexcept>#include&原创 2019-01-28 18:53:41 · 2779 阅读 · 2 评论 -
给定序列构造二叉排序树,判断是否为同一二叉排序树
#include "stdafx.h"#include <stdio.h>#include <string.h>#include <iostream>struct Node { Node*lchild; Node*rchild; int c;}Tree[110];int loc;Node*create(){ Tree[loc].lch...原创 2019-01-30 16:05:52 · 2408 阅读 · 0 评论 -
素因数问题
求解出某个数的素因数的个数,包括重复的素因数// 2019.cpp : 定义控制台应用程序的入口点。//#include "stdafx.h"#include<iostream>bool mark[100001];int prime[100001];int primeSize;// 素数刷选法选择出0-100000的素数void init(){ prim...原创 2019-02-12 18:32:17 · 1078 阅读 · 0 评论 -
Linux环境下编译链接调试C/C++源程序
一:单文形式 这里介绍最常用的GCC编译连接器。其中gcc基本的使用格式:gcc[选项] [选项][目标文件] 上面的使用格式中目标文件可以缺省,gcc会默认生成可执行的文件,生成名:编译文件.out。gcc会按照命令选项要求对输入文件进行预处理,编译,汇编,链接等操作,生成输出文件。 参考一些gcc命令手册有: 以千年规律:hell原创 2018-01-15 18:15:58 · 577 阅读 · 0 评论 -
C++多线程浅析
在Windows系统下,Windows api提供了很多对多线程的支持。一个程序中至少有一个线程,这个线程称之为主线程(main thread)。Windows下的线程操作办法如下:CreateThread用于创建一个线程,函数原型为:HANDLE WINAPI CreateThread( LPSECURITY_ATTRIBUTES lpThreadAttributes, //原创 2017-11-24 11:21:59 · 392 阅读 · 0 评论 -
C++内存管理浅谈
一个由C/C++编译的程序占用的内存分为以下几个部分: 1、栈区(stack):又编译器自动分配释放,存放函数的参数值,局部变量的值等,其操作方式类似于数据结构的栈。 2、堆区(heap):一般是由程序员分配释放,若程序员不释放的话,程序结束时可能由OS回收,值得注意的是他与数据结构的堆是两回事,分配方式倒是类似于数据结构的链表。 3、全局区(static):也叫静态转载 2017-11-24 10:22:37 · 329 阅读 · 0 评论 -
数学之美,C++之美,代码之美
用三段 140 字符以内的代码生成一张 1024×1024 的图片Kyle McCormick 在 StackExchange 上发起了一个叫做 Tweetable Mathematical Art 的比赛,参赛者需要用三条推这么长的代码来生成一张图片。具体地说,参赛者需要用 C++ 语言编写 RD 、 GR 、 BL 三个函数,每个函数都不能超过 140 个字符。每个函数都会接到 i 和原创 2017-09-25 17:07:35 · 712 阅读 · 0 评论 -
最大连续子数组
问题描述,给定一个数组A[0,1,...,n-1],求出A的连续数组,使得该子数组的和最大。 例如:数组A[1,-2,3,10,-4,7,2],则最大的子数组为[3,10,-4,7,2]解法:1.暴力法2.分治法3.动态规划法一:暴力发分析:直接求解A[i,...,j]的值,0代码分析:int maxSubArr原创 2017-11-18 10:50:29 · 1425 阅读 · 0 评论 -
虚函数导引学习一
// c_datastructure.cpp : 定义控制台应用程序的入口点。//#include "stdafx.h"#include#includeusing namespace std;class Point {public: Point(float x=0, float y=0); void setXY(float, float); float getX() co原创 2017-11-21 19:39:55 · 311 阅读 · 0 评论 -
虚函数学习二
// c_datastructure.cpp : 定义控制台应用程序的入口点。//#include "stdafx.h"#include#includeusing namespace std;class Student {public: Student(int n, string nam, float sco) :num(n), name(nam), score(sco) {原创 2017-11-21 20:05:01 · 297 阅读 · 0 评论 -
虚函数析构函数三
// c_datastructure.cpp : 定义控制台应用程序的入口点。//#include "stdafx.h"#include#includeusing namespace std;class Student {public: Student() {} Student(int n, string nam, float sco) :num(n), name(nam)原创 2017-11-21 20:35:33 · 426 阅读 · 0 评论 -
为什么不能在构造函数中使用虚函数
先上代码:// c_datastructure.cpp : 定义控制台应用程序的入口点。//#include "stdafx.h"#include#includeusing namespace std;class Base {public: Base() { fun(); } virtual void fun() { cout << "Base" << endl;原创 2017-11-21 22:00:40 · 1176 阅读 · 0 评论 -
虚函数学习之虚函数表--四
// c_datastructure.cpp : 定义控制台应用程序的入口点。//#include "stdafx.h"#include#includeusing namespace std;class Base {public: Base() { cout << "Base构造函数" << endl; } virtual void f() { cout << "Base:原创 2017-11-21 22:43:03 · 280 阅读 · 0 评论 -
虚函数综合版五
// c_datastructure.cpp : 定义控制台应用程序的入口点。//#include "stdafx.h"#include#includeusing namespace std;class Shape {public: virtual float area() const{ return 0.0; } virtual float volume() const原创 2017-11-22 10:47:26 · 267 阅读 · 0 评论 -
C++字符流操作
// c_datastructure.cpp : 定义控制台应用程序的入口点。//#include "stdafx.h"#include#include#includeusing namespace std;int main(){ cout << "************" << endl; char ch[20]; cout << "enter a sente原创 2017-11-22 19:57:43 · 1983 阅读 · 0 评论 -
C++文件操作与文件流学习
一:对ASCII码的文件// c_datastructure.cpp : 定义控制台应用程序的入口点。//#include "stdafx.h"#include#include#include#includeusing namespace std;void inputFile(char *);void outputFile(char *);int main(){原创 2017-11-22 21:59:46 · 465 阅读 · 0 评论 -
C++字符串流练习
// c_datastructure.cpp : 定义控制台应用程序的入口点。//// C++字符串流的练习demo#include "stdafx.h"#include#include#include#include#includeusing namespace std;struct Student { int num; char name[20]; int sco原创 2017-11-23 19:12:46 · 397 阅读 · 0 评论 -
素数解法笔记
// c_datastructure.cpp : 定义控制台应用程序的入口点。//// C++字符串流的练习demo#include "stdafx.h"#include#include#include#include#include#includeusing namespace std;bool isPrime_1(long num) { if (num <= 1)原创 2017-11-23 20:10:06 · 314 阅读 · 0 评论 -
C++内存管理之泄露检查
参考自:http://blog.csdn.net/zxcred/article/details/3228239C++程序的复杂性很大一部分在于他的内存管理,没有C#那样的垃圾回收机制,内存管理对初学者来说很困难。经常会出现内存泄露的情况。那么我们写程序如何避免内存泄露呢?首先我们需要知道程序有没有内存泄露,然后定位到底是哪行代码出现内存泄露了,这样才能将其修复。 本文描述了如何检测内存泄露原创 2017-11-24 09:59:33 · 437 阅读 · 0 评论 -
C++虚函数机制实现多态性
// 2019.cpp : 定义控制台应用程序的入口点。//#include "stdafx.h"#include<iostream> // 定义抽象基类(包含有纯虚函数的类就成为抽象类或者抽象基类)class shape{public: virtual float area() const { return 0.0; } virtual float volu...原创 2019-03-04 15:36:31 · 498 阅读 · 0 评论