您好,欢迎来到九壹网。
搜索
您的当前位置:首页实验八报告

实验八报告

来源:九壹网


实 验 报 告

实验课程名称 C语言程序设计

实验项目名称 实验八 函数议编程练习

年 级 2010

专 业

学生姓名

学 号

实验时间: 20 12年 5月 18 日

学生所在学院:理学院 专业:物理学 班级:物理101 姓 名 实验时间 学 号 实验组 成 绩 2010-5-18 指导教师 实验项目名称 函数编程练习 1

实验原理: 模块化是程序设计最重要的思想之一。C源程序是由函数组成的,函数是C源程序的基本模块, 通过对函数模块的调用实现特定的功能。 实验内容: . 给小学生出加法考试题 编写一个程序,给学生出一道加法运算题,然后判断学生输入的答案对错与否,按下列要求以循序渐进的方式编程。 程序1 通过输入两个加数给学生出一道加法运算题,如果输入答案正确,则显示“Right!”,否则显示“Not correct! Try again!”,程序结束。 程序2 通过输入两个加数给学生出一道加法运算题,如果输入答案正确,则显示“Right!”,否则显示“Not correct! Try again!”,直到做对为止。 程序3 通过输入两个加数给学生出一道加法运算题,如果输入答案正确,则显示“Right!”,否则提示重做,显示“Not correct! Try again!”,最多给三次机会,如果三次仍未做对,则显示“Not correct! You have tried three times! Test over!”,程序结束。 程序4 连续做10道题,通过计算机随机产生两个1~10之间的加数给学生出一道加法运算题,如果输入答案正确,则显示“Right!”,否则显示“Not correct!”,不给机会重做,10道题做完后,按每题10分统计总得分,然后打印出总分和做错的题数。 提示:可以模块化设计两个函数: (1)求和函数:计算两整型数之和,如果与用户输入的答案相同,则返回1,否则返回0 函数参数:整型变量a和b,分别代表被加数和加数 函数返回值:当a加b的结果与用户输入的答案相同时,返回1,否则返回0 (2)打印函数:打印结果正确与否的信息 函数参数:整型变量flag,标志结果正确与否 函数返回值:无 Tops: 随机产生1~10之间的加数的方法: srand(time(NULL)); /*用标准库函数srand()为函数rand()设置随机数种子*/ a = rand()%10 + 1; b = rand()%10 + 1; 注:记住程序需要包含头文件time.h 、stdlib.h, 即程序开头要有 #include #include 2

实验步骤: #include #include main() { float add(float a,float b); float sub(float a,float b); float x,y,z,c,d,e,z1,c1,d1,e1; int i=0,j,s=0; printf(\"please count: x+y=?\\n\"); printf(\"x,y=8,9\\n\"); printf(\"please enter your answer:\"); scanf(\"%f\ printf(\"the x,y=\"); scanf(\"%f,%f\ z1=add(x,y); if(z1==z) printf(\"Right!\\n\"); else printf(\"Not right,Try again!\\n\"); printf(\"please count:x-y=?\\n\"); printf(\"x,y=68,45\\n\"); while(1) { printf(\"please enter your answer:\"); scanf(\"%f\ printf(\"the x,y=\"); scanf(\"%f,%f\ c1=sub(x,y); if(c1==c) { printf(\"Right!\\n\");break;} else printf(\"Not right!Try again!\\n\"); } printf(\"please count:x+y=?\\n\"); printf(\"x,y=25,65\\n\"); while(i<3) {printf(\"please enter your answer:\"); scanf(\"%f\ printf(\"the x,y=\"); scanf(\"%f,%f\ if(d==d1) {printf(\"Right!\\n\");break;} else printf(\"Not correct!Try again!\\n\"); i++; 3

d1=add(x,y); } if(i==3)printf(\"Not correct! You have tried three times! Test over.\"); for(j=0;j<10;j++) { srand(time(NULL)); x=rand()%10+1; y=rand()%10+1; printf(\"%f,%f\\n\ printf(\"please count x+y=?\\n\"); printf(\"please enter your answer:\"); scanf(\"%f\ e=add(x,y); if(e==e1) { printf(\"Right!\\n\"); s=s+10; } else { printf(\"Not correct!\\n\"); i=i+1;} } printf(\"your's acheivement s=%d\\n\ printf(\"the number of error is i=%d\\n\ } float add(float a,float b) { float flag; flag=a+b; return(flag); } float sub(float a,float b) { float flag; flag=a-b; return(flag); } 4

指导教师意见: 签名: 年 月 日

5

因篇幅问题不能全部显示,请点此查看更多更全内容

Copyright © 2019- 91gzw.com 版权所有 湘ICP备2023023988号-2

违法及侵权请联系:TEL:199 18 7713 E-MAIL:2724546146@qq.com

本站由北京市万商天勤律师事务所王兴未律师提供法律服务