一.应用程序结构及开发方法
1.设计方法: 自顶向下–>逐步细化–>模块化设计–>结构化编码
2.常用结构: main–>菜单–>功能1,…功能n–>细化功能模块
二.应用程序结构设计思路
1.设计原则:高内聚、低耦合
函数高内聚: 代码相关性强,责任单一;
函数低耦合: 各模块间相互联系少(参数少,全局变量少);
2.具体技术
提取出独立的功能,与通用的功能
慎用全局变量、静态局部变量
尽量使用值传递,慎用传地址
/包含文件
#include<……>
……
/自定义函数声明
……
/必要的全局变量
……
int main()
{
...
}
/定义自定义函数
……
三.一个"打豆豆"程序实例
#include <stdio.h>
int choose();
void eat(int, char*);
void sleep(int);
void hitdoudou();
int main()
{
int iChioce;
do
{
iChioce = choose();
switch (iChioce)
{
case 1:
eat(2, "鲜鱼");
break;
case 2:
sleep(30);
break;
case 3:
hitdoudou();
break;
case 0:
break;
default:
printf("\007选择错误!\n");
continue;
}
printf("恭喜你完成了一项工作!\n\n");
} while (1);
return 0;
}
int choose()
{
int i;
printf("请选择: \n");
printf("** 1.吃饭\n");
printf("** 2.睡觉\n");
printf("** 3.打豆豆\n");
printf("** 0.退出\n");
printf("** 请选择0-3: ");
scanf_s("%d", &i);
return i;
}
void eat(int n, char* food)
{
printf("我吃了%d斤%s.\n", n, food);
}
void sleep(int m)
{
printf("我睡了%d分钟.\n", m);
}
void hitdoudou()
{
static int count = 0; //使用静态函数记录次数,符合高内聚原则;
count++;
printf("打豆豆%d次了.\n", count);
}
四.编程的决定因素——— 对初学者的忠告
不在于你对语言多么熟悉、对概念理解的多么透彻,而是你是否能将你想做的事说清楚。
若没有正在做什么和应如何去做的清晰思路,无论选何种语言编程,都无济于事。