自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(21)
  • 收藏
  • 关注

原创 计算机图形学MFC 实现

代码下载地址觉得有帮助的给个starSudaCgMFC介绍计算机图形学课程实验包含二维点类三维点类的建立,面类,二维变换,三维变换,zbuffer,背面剔除,反走样划线,颜色填充,模型数据文件读入开源协议MIT License软件架构说明├── Readme.md├── LICENSE├── .gitignore├── Test4│  ├── res│  ├── 模型数据文档│  │  ├── 1.txt //人脸数据│  │  ├── 3.txt

2021-12-04 19:56:58 1438

原创 方格涂色问题

排成一排n个方格,用三种不同颜色填充,求所有满足的涂法采用递归f(n) = f(n-1) + 2 *f(n-2)#include<stdio.h>#include<stdlib.h>int main(void){ int n,i; long long a[51] a[1] = 3; a[2] = 6; a[3] = 6; for(i=4;i<51;i++) { a[i] = 2*a[i-2]+a[i-1]; } while(scanf("%d"

2021-10-24 22:16:46 1103

原创 MFC绘制独孤信印章

基于之前的背面剔除算法,我们需要设计一个印章类CXin.h#pragma once#include"P3.h"#include"Facet.h"#include"P2.h"#include"Projection.h"#include"Vector.h"#define ROUND(d) int(d+0.5)class CXin{public: CXin(void); virtual ~CXin(void); void ReadPoint(void); void ReadFacet(

2021-10-22 20:21:28 667

原创 MFC背面剔除算法

本文是基于之前的三维变换三维变换完成的首先需要添加一个向量类CVectorVector.h#pragma once#include"P3.h"#include<math.h>class CVector{public: CVector(void); virtual ~CVector(void); CVector(double x, double y, double z); CVector(const CP3& p); CVector(const CP3&

2021-10-21 19:47:19 739

原创 MFC制作简易画板

实验二:简易画板作者:19074021269赵龙辉相关变量初始化CMFCApplication3View::CMFCApplication3View() noexcept{ // TODO: 在此处添加构造代码 m_PenSize = 1; m_PenColor = RGB(0, 0, 0); m_BrushColor = RGB(0, 0, 0); m_PointBegin = CPoint(0, 0); m_pointEnd = CPoint(0, 0); m_DrawType =

2021-10-20 15:30:04 1561

原创 MFC三维变换

所需类P2类class CP2{public: CP2(void); virtual ~CP2(void); CP2(double x, double y); friend CP2 operator + (const CP2& p0, const CP2& p1); friend CP2 operator - (const CP2& p0, const CP2& p1); friend CP2 operator * (const CP2& p,

2021-10-19 19:40:22 1777

原创 MFC在屏幕的中间绘制如图所示的正五边形与正五角星的嵌套结构。试取递归深度n为4,请编写递归函数

OnDraw CRect rect; GetClientRect(&rect); //将坐标轴及原点移至中央 pDC->SetMapMode(MM_ANISOTROPIC); pDC->SetWindowExt(rect.Width(), rect.Height()); pDC->SetViewportExt(rect.Width(), -rect.Height()); pDC->SetViewportOrg(rect.Width() / 2, rect.Hei

2021-09-23 09:06:13 1243

原创 MFC把一个半径为R的圆40等份,以每个等分点为圆心,以r为半径画圆。假定R=r,试编程绘制图所示的环。分别测试R>r,R<r时候得到的图形。

OnDraw部分CRect rect;GetClientRect(&rect);//将坐标轴及原点移至中央pDC->SetMapMode(MM_ANISOTROPIC);pDC->SetWindowExt(rect.Width(), rect.Height());pDC->SetViewportExt(rect.Width(), -rect.Height());pDC->SetViewportOrg(rect.Width() / 2, rect.Height()

2021-09-23 09:03:14 1010

原创 共享栈

#include <iostream>using namespace std;#define Maxsize 20struct ShareStack{ int data[Maxsize]; int top1, top2;};int InitShareStack(ShareStack* S){ S->top1 = -1; S->top2 = Maxsize; return 0;}int PushShareStack(ShareStack*

2021-04-20 14:55:21 61

原创 单链表基本操作

#include <iostream>using namespace std;typedef char ElemType;struct LinkList{ ElemType data; LinkList* next;};//初始化void InitList(LinkList*& L){ L = (LinkList*)malloc(sizeof(LinkList)); L->next = NULL;}//尾插void CreateListR(Link

2021-04-06 22:15:19 84

原创 顺序表合并

给定两个顺序表L1,L2,顺序表结构如下struct SqList{ int data[MAX]; int length;}假设L1中元素递增,L2中元素递减。设计一个算法,将L1和L2合并为一个新的顺序表L3,且L3中的元素递增#include <iostream>#define MAX 100using namespace std;struct SqList{ int data[MAX]; int length;};void createList(SqLis

2021-03-31 08:30:05 525

原创 判断天数

输入一个年月日,格式如2020/3/26,判断这一天是这一年的第几天#include <iostream>using namespace std;int day(int y, int m, int d){ int a[12] = { 31,28,31,30,31,30,31,31,30,31,30,31 }; int i, sum=0; for (i = 0; i <m-1; i++) { sum = sum + a[i]; } if (m > 2) {

2021-03-26 19:35:06 105

原创 判断素数

#include <iostream>using namespace std;int isprime(int m){ int i; for (i = 2; i <= sqrt(m); i++) { if (m % i == 0) return 0; } return 1;}int main(){ int n; cin >> n; if (isprime(n)) { cout << "is prime" <<

2021-03-26 19:24:26 55

原创 判断润年

#include <iostream>using namespace std;int main(){ int n; cin >> n; if (n % 4 == 0 && n % 100 != 0 || n % 400 == 0) { cout << "Yes" << endl; } else { cout << "No" << endl; } return 0;}

2021-03-26 19:08:32 95

原创 有n个人围成一圈,顺寻排号,从第一个人开始报数(从1到3)凡报到3的人退出圈子,问最后留下的人是原来的第几号c++

#include <iostream>#include <string> #define MAX 100using namespace std;int main(){ int i, n, j,k,w; int count = 0; int a[MAX], b[MAX]; cout << "请输入人数: "; cin >> n; for (i = 0; i < n; i++) { a[i] = i + 1; } for (

2021-03-14 15:17:06 193

原创 c++输入一个整数,输出该整数位数,并倒序输出

#include <iostream>#define N using namespace std;int main(){ int n, i, j, temp, number=0; cout << "请输入一个小于10位的整数" << endl; cin >> n; i = 0; do { temp = n % 10; n = n / 10; number = number*10+temp; i++; } while

2021-03-11 23:05:54 7016

原创 c++输出乘法口诀表

#include <iostream>using namespace std;int main(){ int i,j,n; for (i = 1; i <= 9; i++) { for (j = 1; j <= i; j++) { n = i * j; cout << j << "x" << i << "=" << n << "\t"; } cout << en

2021-03-11 22:19:17 510

原创 leetcode题解2020/11/8

给你一个整数 n 。按下述规则生成一个长度为 n + 1 的数组 nums :nums[0] = 0nums[1] = 1当 2 <= 2 * i <= n 时,nums[2 * i] = nums[i]当 2 <= 2 * i + 1 <= n 时,nums[2 * i + 1] = nums[i] + nums[i + 1]返回生成数组 nums 中的 最大 值#include <stdio.h>int getMaximumGenerated(int n

2020-11-08 11:32:59 247

原创 leetcode 题解2020/11/3

判断一个整数是否是回文数。回文数是指正序(从左向右)和倒序(从右向左)读都是一样的整数。#include <stdio.h>bool ishuiwenshu(long int x){ int t; long int num=0; if(x<0||x>2^31-1) return false; while(x!=0) { t=x%10; num=mum*10+t; x=x/10; } if (num==x||x=0) re

2020-11-03 10:29:48 696

原创 leetcode题解2020/11/3

给出一个 32 位的有符号整数,你需要将这个整数中每位上的数字进行反转。假设我们的环境只能存储得下 32 位的有符号整数。请根据这个假设,如果反转后整数溢出那么就返回 0。#include<stdio.h>int main(void){ int x,t; long int num=0; scanf("%d",&x); while(x!=0) { t=x%10; num=num*10+t; x=x/10;

2020-11-03 09:53:45 44

原创 leetcode题解2020/11/3

给定一个整数数组 nums 和一个目标值 target,请你在该数组中找出和为目标值的那 两个 整数,并返回他们的数组下标。你可以假设每种输入只会对应一个答案。但是,数组中同一个元素不能使用两遍。暴力法c语言#include <stdio.h>#define N 20void twonum(int nums[N],int target){ int a,b; for(a=0;a<N;a++) for(b=a+1;b<N;b++) {

2020-11-03 09:26:51 91

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除