C语言实现的一个交互小程序(三)

关于C语言如何有效正确的学习,我写了一个专栏:你可以这样学习C语言,有兴趣的小伙伴可以来看看哦,希望能对你有收获!本文例子需要源码的可以关注我后私信我。

阅读本文之前,请先阅读:

1、C语言实现的一个交互小程序(一)

2、C语言实现的一个交互小程序(二)

三、功能扩展示例

你可以很方便的在这个程序上扩展你自己的功能模块。

现在这个结构已经有两个功能模块,一个是function1,它包含一个.h头文件”function1.h“,还包含一个.c实现文件”function1.c“;另一个是function2,它包含一个.h头文件”function2.h“,还包含一个.c实现文件”function2.c“。

下面我用一个”学生管理系统“的例子来说明如何扩展这个结构。”学生管理系统“的源码网上有很多,也是很经典的C语言上手实例项目。我们假设学生管理系统有三个功能需要实现,如下:

1. ”学生“类型的定义;

2. 添加一个学生;

3. 删除一个学生;

现在针对这三个功能,我们在这个程序上来扩展。

1. 扩展”学生“类型的定义

我们可以增加一个.h头文件:student.h,文件内容如下:

typedef struct student{
      char name[10];//学生名
      char sex[5];//学生性别
} Stu;

2. 扩展”添加学生“的功能模块

 

扩展这个功能模块时,需要添加.h头文件AddStu.h,以及一个.c文件AddStu.c。

在AddStu.h文件中,声明如下函数:

extern void AddStu();//添加一个学生的函数

在AddStu.c文件中,实现如下函数:

void AddStu()
{
    puts("成功添加一个学生!");
}

在菜单选择界面,添加一个”学生添加“选项"puts(" 3. add_stu");":

void show_menu() {
	puts("======================================");
	puts(" Here is the choice     ");
	puts(" 1. menu_one");
	puts(" 2. menu_two");
        puts(" 3. add_stu");
	puts(" 0. quit");
}

在switch语句中,添加case语句3:调用”AddStu“的模块

switch(input)
		{
			case 1:
				system("cls");
				function1();
				PauseAndTip();
				system("cls");
				show_menu();
				break;
			case 2:
				system("cls");
				function2();
				PauseAndTip();
				system("cls");
				show_menu();
				break;
                        case 3:
                                system("cls");
				AddStu();
				PauseAndTip();
				system("cls");
				show_menu();
				break;
			default:
				break;

		}

 

3. 扩展”删除学生“的功能模块

扩展这个功能模块时,需要添加.h头文件DelStu.h,以及一个.c文件DelStu.c。

在DelStu.h文件中,声明如下函数:

extern void DelStu();//删除一个学生

在DelStu.c文件中,实现如下函数:

void DelStu()
{
    puts("删除一个学生成功");
}

在菜单选择界面,添加一个”学生删除“选项"puts(" 4. del_stu");":

void show_menu() {
	puts("======================================");
	puts(" Here is the choice     ");
	puts(" 1. menu_one");
	puts(" 2. menu_two");
        puts(" 3. add_stu");
        puts(" 4. del_stu");
	puts(" 0. quit");
}

在switch语句中,添加一个case语句4:调用”DelStu“的模块

switch(input)
		{
			case 1:
				system("cls");
				function1();
				PauseAndTip();
				system("cls");
				show_menu();
				break;
			case 2:
				system("cls");
				function2();
				PauseAndTip();
				system("cls");
				show_menu();
				break;
                        case 3:
                                system("cls");
				AddStu();
				PauseAndTip();
				system("cls");
				show_menu();
				break;
                        case 4:
                                system("cls");
				DelStu();
				PauseAndTip();
				system("cls");
				show_menu();
				break;
			default:
				break;

		}

 

基本上扩展的套路就是这样。

如果你觉得欢迎界面或者菜单选择界面不够丰富,不够美观,你也可以自行完善里面的信息。如果你美学功底深厚,又有点技术底子,可以考虑使用graphics图形库画个漂亮的界面。

  • 3
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

C语言答疑课堂

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值