0
点赞
收藏
分享

微信扫一扫

原来用心学C++后,刷数据结构题跟喝水一样

栖桐 2022-05-10 阅读 59

🎉每一个不曾起舞的日子都是对生命的辜负🎉

目录

一、C++发展历程与背景

二、C++知识点推荐

1.在网站找视频资源

2.结合数据结构线性表

三、技术应用项目

四、学习总结


一、C++发展历程与背景

二、C++知识点推荐

1.在网站找视频资源

  在b站我最喜欢看黑马程序员创作的C++入门视频,因为他针对初学者非常友好,讲的非常基础且全面,还有案例来巩固知识点,有时候我们受不了代码学习的枯燥,那么为何不从小做起呢,跟着他的视频,我们自己做出来不同的程序,也有成就感支持我们继续学下去。不过我在学习的同时会发散思维,如果自己开头了解了,那我会先按照自己的思路把程序完成再去和他讲的做对比,很有趣也有成就感,例如,他在讲猜数字游戏的时候,我自己弄出了一个抽自己班级同学学号的案例,随机抽取,公平公正,很舒服的,代码展示一下:

#include<iostream>
#include<ctime>
using namespace std;
int main()
{                                        /*注:1.本程序的学号均为整数类型。
											   2.学号太大的话会不适用,可以去掉高位重复的数字,用尾号代表学号*/
	int n = 1, x = 0, y = 0, z = 0, t = 0;
	cout << "请输入区间范围,填一个整数即可:";
	cin >> x;
	cout << "请输入第一个学号:";
	cin >> y;
	cout << "请输入一次抽取的个数:";
	cin >> z;
	cout << "请输入需要抽取的次数:";
	cin >> t;
	srand((unsigned int)time(NULL));
	while (1)
	{
		int i = 1;
		for (; i <= z; i++) {
			int Num = rand() % x + y;
			cout << "此次抽到的学号为:" << Num << endl;
		}
		cout << "一次抽奖完成" << endl;
		cout << "----------------" << endl;
		n++;
		if (n > t)
		{
			cout << "抽奖结束,如果有重复请多次抽取,选择学号不重复的一组学号" << endl;
			break;
		}
	}
	system("pause");
}

有兴趣的可以拿去抽抽数字,为平凡的一天增加乐趣!!! 

2.结合数据结构线性表

可以利用C++来定义结构体,分文件编写,分化大项目等等,来一个测试线性表的案例。

#pragma once
#include<stdio.h>  
#include<stdlib.h>  
#include<malloc.h>
#define LIST_INIT_SIZE  10  
#define LISTINCREMENT   10    
#define OK              1  
#define ERROR           0  

typedef struct SqList {
    int* elem;
    int len;
    int size;
}SqList;
int InitList_Sq(struct SqList* L);//初始化顺序表
int ListInsert_Sq(struct SqList* L, int i, int e);// 向顺序表中插入数据
int ListDelete_Sq(struct SqList* L, int i, int* e);//删除顺序表中的数据  
void ListShow_Sq(struct SqList* L, const char* s);//输出顺序表中的数据  
void DestroyList(SqList* L);//销毁表

 运行效果图示:

 

三、技术应用项目

C++可用于服务端开发,游戏,虚拟现实,数字图像处理等领域,相较于C语言语言简洁,输入输出可用IO流,使用方便、灵活;拥有丰富的运算符;支持面向对象过程和面向对象的方法。C++语言能应用于大应用的底层代码,比起Python有运行快速的特点。

项目代码

/*解析一个 JSON 字符串至一个 document (DOM),对 DOM 作出简单修改,最终把 DOM 转换(stringify)至 JSON 字符串。*/

// rapidjson/example/simpledom/simpledom.cpp`
#include "rapidjson/document.h"
#include "rapidjson/writer.h"
#include "rapidjson/stringbuffer.h"
#include <iostream>
 
using namespace rapidjson;
 
int main() {
    // 1. 把 JSON 解析至 DOM。
    const char* json = "{\"project\":\"rapidjson\",\"stars\":10}";
    Document d;
    d.Parse(json);
 
    // 2. 利用 DOM 作出修改。
    Value& s = d["stars"];
    s.SetInt(s.GetInt() + 1);
 
    // 3. 把 DOM 转换(stringify)成 JSON。
    StringBuffer buffer;
    Writer<StringBuffer> writer(buffer);
    d.Accept(writer);
 
    // Output {"project":"rapidjson","stars":11}
    std::cout << buffer.GetString() << std::endl;
    return 0;
}
//注意此例子并没有处理潜在错误。

四、学习总结

举报

相关推荐

0 条评论