C++实训时钟显示系统

更新时间:2023-12-21 16:47:01 阅读量: 教育文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

报告编号:第10组

综合课程设计报告

时钟显示系统

学生姓名: 指导教师: 所 在 系: 电 子 系 所学专业: 电子信息工程 年级班级: 11级电子(2)班

2012 年12月28日

目 录

【摘 要】 ................................................................................... 2 1 问题要求及任务描述 ............................................................. 2 1.1 题目要求 ........................................................................... 2 1.2 主要任务 ........................................................................... 2 2 解决问题的主要思路和方法 ................................................. 2 2.1关键问题 ............................................................................ 2 2.2 拟采用解决问题的方法 ................................................... 2 2.3 主要算法(截取主要源代码)和处理流程图 .............. 2 3 程序实现 ................................................................................. 4 3.1 程序实现时关系图 ........................................................... 4 3.2 主要源代码 ....................................................................... 4 4 测试 ........................................................................................... 4 测试结果及分析 ...................................................................... 4 5 小结 ........................................................................................... 6 6 致谢 ........................................................................................... 6 参考文献: ...................................................................................... 7 附录 ............................................................................................... 7

1

【摘 要】

本文是在VC语言环境下编写的一个程序,目的在于用七段管形式显示时间,

在编程中运用了类,函数的引用,以及对于一些基本程序的使用。对其中出现的相应问题的解决方法,基本关系程序功能图的介绍与相对应程序运行的数据分析,最终使其可以达到调用系统时间显示,还可以根据自动设定的时间来进行时间跳动转换。 【关键词】:时钟显示;类;time.h中引用;循环;

1 问题要求及任务描述

1.1 题目要求

时钟显示系统

需要调用系统时间函数,运行时显示机器当前时间。并且使用七段数码管效果(七段数码管是一种由七条直线构成的8数字形显示器件,通过设置七条直线的两灭可以显示从0到9的任何数字。对这7个管子进行编号,然后所有10个阿拉伯数字均对应一些“亮/灭”状态,把这个状态作为一个参数。)

1.2 主要任务

每个组员完成一小项单独程序,

1)将时间改为七段管显示(张新燕)

2)调用系统函数,研究调用系统时间(伍慧) 3)研究时间模拟跳动(郑星) 4)编程自动设定时间(黄克取)

5)将程序编和至一起,完成题目要求(王明楠)

2 解决问题的主要思路和方法

2.1关键问题

1)如何将时间改为七段管显示; 2)如何调用时间;

3)如何使其按自动设定的时间跳动。

2.2 拟采用解决问题的方法

查找资料,用不同代码来模拟七段管数字形式,根据对time.h的函数理解,来调用系统时间,根据学的知识用函数类来重新设定时间。

2.3 主要算法(截取主要源代码)和处理流程图

1)将单个时间显示改为七段管形式

2

staticchar*shapecode[]={\\

static string shape[]={\ \ ┃\━ \┃ \┃ ┃\

输出每一位的时间:

cout<

<

<

<

2)调用系统时间int t,h,m,s; t=time(NULL);

h=(t/3600+8)$;a=h/10;b=h; m=t/60`; c=m/10;d=m;

s=t`; e=s/10; f=s;

3)时间跳动进位if(!(f=++f)) if(!(e=++e%6)) if(!(d=++d)) if(!(c=++c%6)) if(a==1&&!(b=++b)) a++; else if(a==2&&!(b=++b%4))

a=0;

3

时钟显示系统 显示系统时间 CX() 自行设定时间 P.Set() 退出 exit()

图2.3.1处理流程图

3 程序实现

3.1 程序实现时关系图

时钟显示系统 输入m的值 m=1CX() 显示系统时间 m=2P.Set() 自行设定时间 m=3exit() 退出 m<1,m>3 请重新输入回到主界面 图3.1.1

3.2 主要源代码

源代码见附录

4 测试

测试结果及分析 1)运行后主界面

4

void exit() { }

void SJ::gettime() { }

void SJ::show() { system(\

static

char*

int t,h,m,s; t=time(NULL);

h=(t/3600+8)$;a=h/10;b=h; m=t/60`; c=m/10;d=m; s=t`; e=s/10; f=s;

cout<<\ *** 谢谢使用 ***\

shapecode[]={\24242\

static string shape[]={\ \ ┃\ ━ \┃ \┃ ┃\ for (int j=0;j<9;j++) gettime();

{cout<

******:\

for (int i=0;i<5;i++)

cout<

<

<

10

<

void SJ::show1() { system(\

static

char*

}

<

shapecode[]={\24242\

static string shape[]={\ \ ┃\ ━ \┃ \┃ ┃\ for (int j=0;j<9;j++)

{

cout<

******:\

for (int i=0;i<5;i++)

cout<

<

<

Sleep(1000);

system(\

if(!(f=++f))

if(!(e=++e%6))

if(!(d=++d)) if(!(c=++c%6))

11

}

}

if(a==1&&!(b=++b)) a++; else if(a==2&&!(b=++b%4))

a=0;

void menu() {

void Set();void CX();void exit();

int m,w1;SJ P; do {

cout<<\ *********欢迎使用时间模拟系统***********\

cout<<\ * 1.系统时间查询 *\

cout<<\ * 2.自行设定时间 *\

cout<<\ * 3.退出 *\ cout<<\

****************************************\ cout<<\请输入您的选择 (1-3) : [ ]\ cin>>m;

if(m<1||m>3)

{w1=1; system(\

cout<

12

else

w1=0;system(\}

while(w1==1); switch (m) {

case 1: CX(); break; case 2: P.Set(); break; case 3:exit(); } } int main() {

menu();

return 0; }

13

安徽师范大学皖江学院 课程设计成绩评定单

题目: 时钟显示系统 学生姓名 指导教师 指导教师评语: 指导教师评定 设计成绩等级 指导教师(签章): 20 年 月 日 14

本文来源:https://www.bwwdw.com/article/4i85.html

Top