c语言控制答案输出,一道C语言的程序题(急求答案)

一、题目:在控制台窗口中输出颜色方阵二、目的与要求1. 目的通过在控制台中输出颜色方阵,培养学生综合利用C++语言进行程序设计的能力,加强函数的运用及学生对软件工程方法的初步认识,提高软件系统分析能力和程序文档建立、归纳总结的能力,培养学生利用系统提供的标准函数及典型算法

一、题目:在控制台窗口中输出颜色方阵二、目的与要求1. 目的通过在控制台中输出颜色方阵,培养学生综合利用C++语言进行程序设计的能力,加强函数的运用及学生对软件工程方法的初步认识,提高软件系统分析能力和程序文档建立、归纳总结的能力,培养学生利用系统提供的标准函数及典型算法进行设计,并对Windows平台下的控制台进行深入的了解。2. 基本要求(1) 要求用C++语言编程,在Visual C++环境下调试完成;(2) 要求划分功能模块,各个功能分别使用函数来完成;(3) 源代码程序要求必要的注释。三、设计方法和基本原理1. 课题功能描述设计一个能够在控制台窗口中输出彩带的程序,要求实现的功能包括:根据用户的输入选择来输出规则颜色阵列和随机颜色阵列两种阵列形式(参见下图2. 问题详细描述设计一个在控制台输出彩带的程序,要求首先提示用户选择颜色阵列的类型(规则颜色、随机颜色或退出),然后根据用户的输入,输出相应的阵列。然后再次要求用户选择阵列类型或退出程序。要求编写多个函数分别实现上述功能,而后在main函数中进行调用。3. 问题的解决方案:根据问题的描述,可以按照程序要求的功能采用结构化的设计思想。首先输出颜色阵列的过程是个循环过程,当用户的输入满足循环的退出条件时结束程序的运行(在示例程序中,循环的退出条件是用户输入了0和1之外的数值)。在用户输入了相应的选择后,在屏幕上输出阵列。因为控制台只支持16种颜色,所以输出的阵列应该是16*16的阵列。对于规则的颜色阵列,各行前景色颜色不同,各列背景色不同,每个阵列元素输出的字符均是大写的‘Z’。而对于随机阵列来说16*16的阵列中的每个元素的前景色、背景色和输出字符都是随机的。四、主要技术问题的描述根据三的分析,主要问题在于:1. 控制台的基本概念控制台(Console)是一个基于字符界面的交互平台。Windows 2000里面自带的控制台同样也是一个基于字符界面的交互平台。我们本学期实验所编写的程序都是基于控制台的C++程序。在默认设置下,Windows 2000的控制台能够显示25行80列的字符,我们可以把控制台看作是一个有25行80列的一个矩阵,每个矩阵的元素能够显示一个标准的ASCII字符(汉字需要两个元素来显示)。2. 控制台的颜色控制控制台中的每个元素可以使用独立的前景色和背景色。在Windows 2000的控制台中可以使用的颜色有16种,见下图:上图中的颜色编码自左至右依次是0至15,0为黑色,15为白色。前景色和背景色都只有这16种颜色。3. 控制台颜色的控制时机因为控制台不能更改已经输出字符的颜色设置,所以要想更改输出的字符的颜色设置,必须在输出之前更改控制台的颜色配置。要改变控制台的颜色设置需要调用两个Windows操作系统的API函数。GetStdHandle函数用来获得当前控制台的句柄,用SetConsoleTextAttribute函数来改变选中控制台的颜色控制。这两个函数的声明存在于文件中。可以将这两个调用封装到SetColor函数中:例如:如果需要改变当前的控制台输出颜色为白底红字,则可以书写如下代码:#includevoidmain(){//12(red is the color of foreground//15(white)is the color of backgroundsetcolor(12,15);cout<voidmain(){//12(red) is the color of foreground//15(white) is the color of backgroundsetcolor(12,15);cout<voidmain (){//12(red) is the color of foreground//15(white) is the color of background setcolor(12,15); cout<

展开

全部

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值