- 1、本文档共13页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
成 绩 评 定 表
学生姓名 黄荣泽明 班级学号 1103050135 专 业 计算机科学与技术 课程设计题目 矩阵的旋转反射 评
语
组长签字:
成绩
日期
20 年 月 日
课程设计任务书
学 院 信息科学与工程学院 专 业 计算机科学与技术 学生姓名 黄荣泽明 班级学号 1103050135 课程设计题目 矩阵的旋转反射 实践教学要求与任务:
输入矩阵的行列,选择旋转方式,输出旋转后的矩阵。
(1)绕X轴旋转;
(2)绕Y轴旋转;
(3)绕原点旋转。
工作计划与进度安排:
第17周
星期一:设计任务分析和总体设计
星期二:软件算法和流程设计
星期三、四、五:软件编码实现
第18周
周一:软件总体调试
周二:软件运行分析
周三:答辩、验收程序
周四:答辩、验收程序
周五:书写课程设计报告,提交
指导教师:
201 年 月 日 专业负责人:
201 年 月 日 学院教学副院长:
201 年 月 日
目 录
1 题目内容及设计要求 1
2 总体设计 1
2.1 总体功能框图 1
2.2 类的设计说明 1
2.3 主要算法流程图 1
3 程序清单及注释 1
4 运行结果与分析 1
5 总结 2
6 参考文献 2
1 题目内容及设计要求
输入矩阵的行列,选择旋转方式,输出旋转后的矩阵。
(1)绕X轴旋转;
(2)绕Y轴旋转;
(3)绕原点旋转。
2 总体设计
2.1 总体功能框图
题目的简洁给编程者提供了很大的发挥空间,实际上,从接手此题的刚开始,编程者就将目光放在了二维数组上,因为用二维数组作为矩阵的载体再好不过了,通过修改数组的元素的下标就可以实现对元素的操作即旋转反射。
框图:
2.2 类的设计说明
2.3 主要算法流程图
3、程序清单及注释
#include <iostream>
#include <stdio.h>
using namespace std;
class CMatrix //定义矩阵类
{
static int row,line; //定义静态变量,接收数组的行与列
int Mat [100][100]; //定义三个二维数组
int MatR [100][100];
public:
void InputFromKeyboard() //从键盘中输入矩阵
{
cout<<"请输入矩阵的行数:"<<endl;
cin>>row;
cout<<"请输入矩阵的列数:"<<endl;
cin>>line;
int i,j;
if(row>100) cout<<"数值超过计算范围,请重新输入"<<endl;
if(line>100) cout<<"数值超过计算范围,请重新输入"<<endl;
if(row<=100&&line<=100)
{cout<<"请输入数组各成员数据:\n";}
for(i=0;i<row;i++)
for(j=0;j<line;j++)
{
cout<<"第["<<i+1<<"]["<<j+1<<"]个数据:";
cin>>Mat [i][j];
}
}
void Show1() //输出函数①,输出原函数
{ int i,j;
for(i=0;i<row;i++)
{ for (j=0;j<line;j++)
{
if(j>0) cout<<" ";
cout<<Mat[i][j];
}
cout<<endl; }
}
void Show2() //输出函数②,输出原函数
{ int i,j;
for(i=0;i<row;i++)
{ for (j=0;j<line;j++)
{
if(j>0) cout<<" ";
cout<<MatR[i][j];
}
cout<<endl; }
}
void ReflectX() //X轴反射
{
int i,j;
for(i=0;i<row;i++)
for (j=0;j<line;j++)
文档评论(0)