C语言综合实验(一)之计费管理系统的需求分析与人机接口设计

实验内容

(1)搭建开发环境。

开发工具:Microsoft Visual Studio 2010

操作:下载Microsoft Visual Studio 2010软件、安装、配置。

(2)创建工程,输出“计费管理系统”。

步骤一:创建解决方案

选择解决方案为“Blank Solution”,解决方案名为:AMS。

步骤二:创建工程

    “计费管理系统”是一个控制台程序,选择工程类型为“Empty Project”。工程名为AccountManagement。

步骤三:添加main.c文件

    在工程中添加一个“.cpp”文件,文件名为“main.c”,作为程序的入口文件。

步骤四:编辑程序

1)程序入口:控制台程序的入口函数为main()函数,在main.c文件中添加main()函数,作为程序的入口函数。

2)输出文本:在main()函数中,调用printf()输出文本。

步骤五:编译和连接程序

步骤六:运行程序

(3)在控制台界面显示选择菜单,并输出用户选择的菜单名称。

在“创建工程”的基础上迭代开发,在main()函数中实现本次迭代的功能,实现步骤如下:

步骤一:导入解决方案

步骤二:输出系统名称和系统菜单

根据系统的功能,每个功能对应一个菜单项,每个菜单项都对应一个编号。系统的功能包括:添加卡、查询卡、上机、下机、充值、退费、查询统计、注销卡。

步骤三:提示用户选择菜单编号

使用switch~case语句,根据输入的菜单项编号,输出对应的菜单名。

步骤四:输出用户的选择

(4)循环输出菜单。

在本次迭代中,do…while循环的循环体语句就是上一个迭代功能,输出菜单,其中包括输出菜单、提示用户选择和输出用户的选择。

使用do…while循环,首先输出一次菜单,供用户选择。循环结束的条件为输入的菜单项编号为0,则不再输出菜单,结束程序。

(5)将输出菜单语句,封装成函数。

“主菜单函数”功能在“循环输出菜单”功能迭代上进行开发,步骤如下:

步骤一:定义outputMenu()函数。

步骤二:调用outputMenu()函数。

步骤三:声明outputMenu()函数。

(6)“搭建程序框架”在“主界面”功能的基础上进行迭代开发。

程序整体按三层结构进行搭建:表示层、业务逻辑层、数据存储层。

(7)根据三层结构的思路,修改程序代码。

编写相应预处理指令:文件包含,条件编译,宏定义。

main.cpp
主函数文件

#include"stdio.h"
#include"menu.h"
int main() {
	outputmenu();
	return 0;
}

menu.h
菜单头文件

void outputmenu();

menu.cpp
菜单源文件

#define _CRT_SECURE_NO_WARNINGS//消除scanf警告
#include"stdio.h"
#include"stdlib.h"
#include"menu.h"
void outputmenu() {
	do {
		char i;
		printf("以下为本账户管理系统的菜单界面\n");
		printf("1.添加卡\n");
		printf("2.查询卡\n");
		printf("3.上机\n");
		printf("4.下机\n");
		printf("5.充值\n");
		printf("6.退费\n");
		printf("7.查询统计\n");
		printf("8.注销卡\n");
		printf("请输入1-8数字来进行选择,输入0退出\n");
		scanf("%c", &i);
		switch (i) {
		case '0': {
			exit(0);
			break;
		}
		case '1': {
			system("cls");
			printf("以下为添加卡的菜单界面\n");
			system("pause");
			/*
			添加卡
			*/
			break;
		}
		case '2': {
			system("cls");
			printf("以下为查询卡的菜单界面\n");
			system("pause");
			/*
			查询卡
			*/
			break;
		}
		case '3': {
			system("cls");
			printf("以下为上机的菜单界面\n");
			system("pause");
			/*
			上机
			*/
			break;
		}
		case '4': {
			system("cls");
			printf("以下为下机的菜单界面\n");
			system("pause");
			/*
			下机
			*/
			break;
		}
		case '5': {
			system("cls");
			printf("以下为充值的菜单界面\n");
			system("pause");
			/*
			充值
			*/
			break;
		}
		case '6': {
			system("cls");
			printf("以下为退费的菜单界面\n");
			system("pause");
			/*
			退费
			*/
			break;
		}
		case '7': {
			system("cls");
			printf("以下为查询统计的菜单界面\n");
			system("pause");
			/*
			查询统计
			*/
			break;
		}
		case '8': {
			system("cls");
			printf("以下为注销卡的菜单界面\n");
			system("pause");
			/*
			注销
			*/
			break;
		}
		default: {
			system("cls");
			printf("请输入正确的1-8数字\n");
			break;
		}
		}
	} while (1);
}

你可能感兴趣的:(C,C)