14级C语言程序设计综合实训任务书-指导书要点
编制部门:计算机系 编制人:申时全 编制日期:2014年12月6日
项目编号C09项目名称综合应用实训训练对象14软件工程
本科(3)(4)学时48课程名称C语言程序设计教 材《C语言程序设计项目化教程》
刘军 主编 实训目标1、掌握选择结构、循环结构程序设计方法;
2、掌握一维数组、二维数组应用程序设计方法
3、掌握。。主要监测点1、基本实训任务:共7个项目。
2、扩展实训任务:包括3个题目,从给定内容至少选做1题。实施条件个人计算机, Windows XP或windows7, 安装VC6.0编译开发环境实训内容基本内容:
用结构体表示日期,输入一个日期(年、月、日),计算从输入年的1月1日到输入的日期的总天数days并输出。
从键盘输入n(>2),计算斐波那契数列的前n项并按每行10个数据输出。
编写程序,生成并输出杨辉三角形(10行)。
从键盘输入两个double类型数据啊,a,b,通过调用函数max_ab实现求a与b的最大值输出,并定义函数max_ab。
编写程序从键盘输入10个float类型数存入一维数组a中,求这10个数的平均值,然后用函数aver实现平均值计算,输出这10个数以及平均值,要求数组和元素个数作为参数传递。
编写程序,从键盘输入10个int类型数,按从小到大顺序进行排序,然后输出。要求用函数sort()进行排序,用函数input()输入数据,用函数output()输出数据。
基于数组存储和函数的一卡通系统设计与实现。
基于结构体和文件存储的一卡通系统设计与实现。
扩展实训内容(可任选1道完成):
基于链表的一卡通系统程序设计。
五子棋游戏程序
打印日历程序实施步骤与技术要点
. 一、基本内容:
1、用结构体表示日期,输入一个日期(年、月、日),计算从输入年的1月1日到输入的日期的总天数days并输出。。
技术要点:
用结构体存储输入日期,定义结构体和日期变量如下:
typedef struct date{
int yeay;
int month;
int day;
}DATE;
DATE date;
scanf( )函数输入年号date.year,月号date.month,日期date.day,输入语句如下:
scanf("%d%d%d",&date.year,&date.month,&date.day);
用下述条件确定是否闰年:
year % 4==0 && year %100 !==0 || year % 400==0
由此确定2月份天数days是28天还是29天。
用一维数组m_day[12]存每月天数:
int m_day[12]={31,28,31,30,31,30,31,31,30,31,30,31};
用for循环计算到输入月份上月底的天数
for (mm=1,days=0;mm
days+=m_day[mm-1];
根据是否大于2月且是否闰年决定天数是否加1
if(date.month>2){
if (date.year % 400==0 ||date.year%4==0 &&date%100 !=0)
days++;
}
实施步骤:
运行VC6.0或Visual studio 2012集成环境
建立一个控制台应用项目projection1,建立源文件date.c
根据前述要点编写和输入程序
调试和运行程序,保存结果截图。
2、从键盘输入n(>2),计算斐波那契数列的前n项并按每行10个数据输出。
技术要点:
用变量fib0表示当前计算项的前2项,fib1表示前1项,初始fib0=1,fib=1,用迭代法计算当前项: fib=fib0+fib1; fib0=fib1; fib1=fib;
用for循环输出从第3项开始的项。
实施步骤:
(1)运行VC6.0或Visual studio 2012集成环境
(2)建立一个控制台应用项目projection2,建立源文件fibo.c
(3)根据前述要点编写和输入程序
调试和运行程序,保存结果截图
编写程序,生成并输出杨辉三角形(10行)。
技术要点:
用一维数组yh[]存储一行数据,生成一行就打印一行。
通过已输出的行计算当前要输出的行,计算从行号开始向0移动
for(col=row;col>0;col--) yh[col]=yh[col]+yh[col-1];
核心代码
int yh[N]={1};
for(row