收藏 分享(赏)

C语言课程实践严冬梅.ppt

上传人:hskm5268 文档编号:8004030 上传时间:2019-06-03 格式:PPT 页数:24 大小:355.50KB
下载 相关 举报
C语言课程实践严冬梅.ppt_第1页
第1页 / 共24页
C语言课程实践严冬梅.ppt_第2页
第2页 / 共24页
C语言课程实践严冬梅.ppt_第3页
第3页 / 共24页
C语言课程实践严冬梅.ppt_第4页
第4页 / 共24页
C语言课程实践严冬梅.ppt_第5页
第5页 / 共24页
点击查看更多>>
资源描述

1、,主讲:严冬梅,C语言课程实践, Lecture Grade (100) = Exercise Grade (50)+ Laboratory Grade (50) Laboratory Grade (50) =,课程评分方法 (Grading Policies),实验 (Laboratory Projects), 共 2 次;迟交罚扣为 10% /周;抄袭者0分; 2人一组,分工负责:编程(Programming: 25)、测试分析(Testing & Analyzing: 10)与文档(Documentation: 15); 上交软盘,请在标签上写明姓名和 Group ID (Project

2、 1 发还时将得到),并在文档末尾写明分工。,实验报告,一、问题描述 二、关键点 三、算法 四、程序 五、测试分析 六、总结 七、分工,C语言课程实践,综合实验一:人民币转化 实验一:简单的程序设计 实验二:数组 实验三:函数 实验四:递归函数 综合实验二 :注册登录问题 实验五:结构体 实验六:链表操作 实验七:文件操作 实验八:图形,综合实验一:人民币转化,将键盘输入的一实数转换成人民币的大写形式。 要求:1. 此实数的最小范围为21亿;2. 在必要的时候要添加“零”、“整”;3. 可以进行四舍五入。 例如:输入1000005008.9978输出为:壹拾亿伍仟零玖元整输入100000500

3、8.902输出为:壹拾亿伍仟零捌元玖角整输入1000005008.906输出为:壹拾亿伍仟零捌元玖角壹分,实验一:简单的程序设计,牛顿迭代算法是利用迭代公式求某一公式值的方法。设公式为x=f(a),迭代公式为xn+1=g(xn,a),算法步骤为: 10 选一个公式的近似值,赋给变量x0; 20 计算g(x0 ,a),将迭代结果保存于变量x1; 30 当x1-x0的绝对值还不小于指定的精度要求时,x0=x1 ,回到20步骤重复计算。 牛顿迭代算法也是求方程或方程组近似根的一种常用算法设计方法。设方程为f(x)=0,迭代公式为x1=x0-f(x0)/f(x0),算法步骤为: 10 选一个方程的近似

4、根,赋给变量x0; 20 将迭代结果保存于变量x1; 30 计算f(x1),当f(x1)的绝对值还不小于指定的精度要求时,x0=x1,回到20步骤重复计算。,实验一:简单的程序设计,用迭代法编程求x=sqrt(a),求平方根的迭代公式为:xn+1=0.5*(xn+a/xn) #include main() double r,x0,x1;scanf(“%lf“, ,实验一:简单的程序设计,用牛顿迭代法求方程2x3-4x2+3x-6=0在x=1.5附近的近似根,要求迭代精度为10-5 #include main() double x,x1,x0,f,f1;const double eps=1e-5

5、;scanf(“%lf”, ,求以元多项式 的值Pn(x),输入为(a0, a1 ,, an )、x和n。秦九韶算法可以求任意幂次的多项式的值。该方法要求多项式按降幂排列,即f(x)=anxn+an-1xn-1+an-2xn-2+a1x+a0f(x)=(0x+an)x+an-1)x+an-2)x+a1)x+a0f=f*x+a;,实验一:简单的程序设计,实验一:简单的程序设计,作业 用牛顿迭代法求f(x)=x3+0.5x2-0.5x-1=0在x=0.9附近的实根,要求迭代精度为10-5 计算f(x)=3x5-6x4+14x2-7x+100在x=0.5时的值 编写程序,某足球队参加M场联赛,获得积

6、分N分。假设赢一场得3分,平一场得1分,输一场得0分,求此队赢、平、输各多少场。例如,赛5场,得9分,则输出结果为: 赢2,平3,输0 赢3,平0,输2 已知f(x)=cos(x)-x。x的初始值为3.14159/4,用牛顿法求解方程f(x)=0的近似解,要求精确到0.0000001。Xn+1 = Xn-(cos(Xn)- Xn)/(-sin(Xn)-1),实验二:数组,编写程序,把从键盘输入的金额数(以元为单位)按人民币面额划分,然后显示支付金额的各种面额的人民币的数量。 例如:输入124.07元时,输出为: yibaiyuan 1ershiyuan 1eryuan 2wufen 1erfe

7、n 1 有一长度为m+n(m,n已知)的一维数组B,其值事先已经赋好,成初态:b0,b1,.,bm-1,bm,.,bm+n-1, 将数组的前m个元素值与后n个元素值(在保持原来各自的内部顺序的前提下)易位成终态 bm,bm+1,.,bm+n-1,b0,.,bm-1 。要求时间、空间代价最小。 数组B为123456789,若m为3,则数组B变为456789123。,实验三:函数(参数传递),1.求两个矩阵的乘积。请编写cheng函数。 #define M 3 #define L 4 #define N 2 main() int aML,bLN,cMN,i,j,k;void cheng(int(*

8、)L,int(*)N,int(*)N,int,int,int);printf(“Enter matrix A(%d*%d):n“,M,L);for(i=0;iM;i+) for(j=0;jL;j+) scanf(“%d“, ,实验三:函数(参数传递),2.荷兰旗问题:有N个桶,一列排开,每个桶中装有一个砾石,它们可以是红色的、白色的或兰色的。要求重新排列这些砾石,使得所有的红色砾石在所有白色砾石的前面,所有的白色砾石在所有兰色砾石的前面。(不得使用记数后赋值的方法)。请编写函数stone和函数Print 。 #define N 10 enum stone red,white,blue; mai

9、n() enum stone aN=red,red,blue,white,red,blue,white,white, red,blue;void stone(enum stone *,int),Print(enum stone *,int);printf(“Before sortingn“); Print(a,N);stone(a,N);printf(“After sortingn“); Print(a,N); ,调用函数与被调用函数之间的链接和信息交换一般是由编译系统通过栈来实现的。栈中保存的信息主要包括: 返回地址; 函数被调用时所有局部变量的值以及传值形式参数的值; 所有引用参数及常量引

10、用参数的定义。 递归函数是指直接或间接地调用自己的函数。,实验四:递归函数,用递归解决问题的一般步骤: 确定递归结束的条件; 定义递归的执行部分。,实验四:递归函数,实验四:递归函数,int Fact (int n) /使用递归函数求Fact 函数的值if(n=0) return 1;retuen Fact(n-1)*n; / Factint fib(int n) if(n=0) return(0);if(n=1) return(1);return(fib(n-1)+fib(n-2); ,综合实验二 :注册登录问题,编写登录程序,用户的名称和密码存放在一文件中,用户登录时输入名称和密码,由系统

11、自动检查是否存在此用户、密码是否正确,若名称和密码均正确,则登录成功,若不正确,可以提供三次修改机会。要求:1. 为了进行登录,还要编写注册程序(输入管理员密码,正确则允许管理员增加新用户,错误则提供三次修改机会);2. 密码必须使用掩码形式。,实验五:结构体,设有类型定义: typedef struct int year;int month;int day; DATE; 按照下面函数原型说明,编写函数完成对参数d作为日期的合法性检查:若 d 是合法日期函数返回非0值;否则为0。 int DateValid ( DATE d );,实验六:链表操作,一群小孩围成一个圈,任意假定一个数m,从第一

12、个小孩起,顺时针方向数数,每数到m个小孩时,该小孩离开。小孩不断离开,圈子不断缩小。最后,剩下的小孩就是胜利者。究竟胜利者是第几个小孩呢?,实验七:文件操作,1.统计磁盘文件“test.txt”中的单词数。 2.有一磁盘文件“score.txt”存放20名学生的各科成绩。每个学生的数据包括:学号、数学、语文、英语三门课成绩。要求计算所有学生的平均成绩(用函数实现),然后生成新文件“avgscore.txt”存放学号和平均成绩。,实验八:图形,自命题作图 #include #define PATH “e:turboc2“ main() int gdriver,gmode;void star(int,int,int,int);void cover(int,int,int,int);gdriver=DETECT;initgraph( ,

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 企业管理 > 管理学资料

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报