函数编程练习

上传人:博****1 文档编号:499401585 上传时间:2023-03-09 格式:DOC 页数:7 大小:59.50KB
返回 下载 相关 举报
函数编程练习_第1页
第1页 / 共7页
函数编程练习_第2页
第2页 / 共7页
函数编程练习_第3页
第3页 / 共7页
函数编程练习_第4页
第4页 / 共7页
函数编程练习_第5页
第5页 / 共7页
点击查看更多>>
资源描述

《函数编程练习》由会员分享,可在线阅读,更多相关《函数编程练习(7页珍藏版)》请在金锄头文库上搜索。

1、实验四 函数编程练习 给小学生出加法考试题编写一个程序,给学生出一道加法运算题,然后判断学生输入的答案对错与否,按下列要求以循序渐进方式编程:程序1:通过输入两个加数给学生出一道加法运算题,如果输入答案正确,则显示“Right!”,否则显示“Not correct! Try again!”;程序2:通过输入两个加数给学生出一道加法运算题,如果输入答案正确,则显示“Right!”,否则显示“Not correct! Try again!”,直到做对为止;程序3:通过输入两个加数给学生出一道加法运算题,如果输入答案正确,则显示“Right!”,否则提示重做,显示“Not correct! Try

2、again!”,最多给三次机会,如果三次仍未做对,则显示“Not correct. You have tried three times! Test over!”程序结束;程序4:连续做10道题,通过计算机随机产生两个110之间的加数给学生出一道加法运算题,如果输入答案正确,则显示“Right!”,否则显示“Not correct!”,不给机会重做,10道题做完后,按每题10分统计总得分,然后打印出总分和做错的题目数量。程序5:通过计算机随机产生10道四则运算题,两个操作数为110之间的随机数,运算类型为随机产生的加、减、乘、整除中的任意一种,如果输入答案正确,则显示“Right!”,否则显示

3、“Not correct!”,不给机会重做,10道题做完后,按每题10分统计总得分,然后打印出总分和做错的题目数量。实验授课提示:通过这个实际例子熟悉函数的编程与使用方法,进一步熟悉含有选择、循环结构的程序的设计方法。参考答案:实验四 函数编程练习程序1参考答案:#include /* 函数功能: 计算两整型数之和,如果与用户输入的答案相同,则返回1,否则返回0 函数参数: 整型变量a和b,分别代表被加数和加数 函数返回值:当a加b的结果与用户输入的答案相同时,返回1,否则返回0*/int Add(int a, int b)int answer;printf(%d+%d=, a, b);sca

4、nf(%d, &answer);if (a+b = answer) return 1;else return 0;/* 函数功能: 打印结果正确与否的信息。 函数参数: 整型变量flag,标志结果正确与否 函数返回值:无*/void Print(int flag)if (flag) printf(Right!n); elseprintf(Not correct!n);main() /*主函数*/int a, b, answer;printf(Input a,b:);scanf(%d,%d, &a, &b);answer = Add(a, b);Print(answer);程序两次测试的运行结果

5、分别如下:Input a,b:1,2 1+2=3 Right!Input a,b:1,2 1+2=4 Not correct!程序2参考答案:#include /* 函数功能: 计算两整型数之和,如果与用户输入的答案相同,则返回1,否则返回0 函数参数: 整型变量a和b,分别代表被加数和加数 函数返回值:当a加b的结果与用户输入的答案相同时,返回1,否则返回0*/int Add(int a, int b)int answer;printf(%d+%d=, a, b);scanf(%d, &answer);if (a+b = answer) return 1;else return 0;/* 函

6、数功能: 打印结果正确与否的信息。 函数参数: 整型变量flag,标志结果正确与否 函数返回值:无*/void Print(int flag)if (flag) printf(Rright!n);elseprintf(Not correct. Try again!n);main() /*主函数*/int a, b, answer;printf(Input a,b:);scanf(%d,%d, &a, &b);doanswer = Add(a, b);Print(answer);while (answer = 0);程序运行结果如下:Input a,b:1,21+2=4Not correct.

7、Try again!1+2=5Not correct. Try again!1+2=3Rright!程序3参考答案:#include /* 函数功能: 计算两整型数之和,如果与用户输入的答案相同,则返回1,否则返回0 函数参数: 整型变量a和b,分别代表被加数和加数 函数返回值:当a加b的结果与用户输入的答案相同时,返回1,否则返回0*/int Add(int a, int b)int answer;printf(%d+%d=, a, b);scanf(%d, &answer);if (a+b = answer) return 1;else return 0;/* 函数功能: 打印结果正确与否

8、的信息。 函数参数: 整型变量flag,标志结果正确与否 整型变量chance,表示同一道题已经做了几次还没有作对 函数返回值:无*/void Print(int flag, int chance)if (flag) printf(Right!n);else if (chance 3)printf(Not correct. Try again!n);else printf(Not correct. You have tried three times!nTest over!n);main() /*主函数*/int a, b, answer, chance;printf(Input a,b:);

9、scanf(%d,%d, &a, &b);chance = 0;doanswer = Add(a, b); chance+;Print(answer, chance); while (answer = 0) & (chance 3);程序两次测试的运行结果分别如下:Input a,b:1,21+2=4Not correct. Try again!1+2=5Not correct. Try again!1+2=2Not correct. You have tried three times!Test over!Input a,b:1,21+2=4Not correct. Try again!1+

10、2=3Right!程序4参考答案:#include #include #include /* 函数功能: 计算两整型数之和,如果与用户输入的答案相同,则返回1,否则返回0 函数参数: 整型变量a和b,分别代表被加数和加数 函数返回值:当a加b的结果与用户输入的答案相同时,返回1,否则返回0*/int Add(int a, int b)int answer;printf(%d+%d=, a, b);scanf(%d, &answer);if (a+b = answer) return 1;else return 0;/* 函数功能: 打印结果正确与否的信息。 函数参数: 整型变量flag,标志结

11、果正确与否 函数返回值:无*/ void Print(int flag)if (flag) printf(Rright!n);else printf(Not correct!n); main()/*主函数*/int a, b, answer, error, score, i; srand(time(NULL);error = 0;score = 0;for (i=0; i10; i+) a = rand()%10 + 1;b = rand()%10 + 1;answer = Add(a, b);Print(answer);if (answer = 1)score = score + 10;el

12、seerror+; printf(score = %d, error numbers = %dn, score, error);程序运行结果如下:10+1=11Rright!5+9=14Rright!4+6=10Rright!7+2=9Rright!3+10=13Rright!1+1=2Rright!5+2=7Rright!3+7=10Rright!4+7=10Not correct!5+6=11Rright!score = 90, error numbers = 1程序5参考答案:#include #include #include /* 函数功能:对两整型数进行加减乘除四则运算,如果用户输

13、入的答案与结果相同,则返回1,否则0 函数参数: 整型变量a和b,分别代表参加四则运算的两个操作数 整型变量op,代表运算类型,当op值为1、2、3、4时,分别执行加、减、乘、整除运算 函数返回值:当用户输入的答案与结果相同时,返回1,否则返回0*/int Compute(int a, int b, int op)int answer, result;switch (op)case 1:printf(%d + %d=, a, b);result = a + b;break;case 2:printf(%d - %d=, a, b);result = a - b;break;case 3:printf(%d * %d=, a, b);resul

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 建筑/环境 > 施工组织

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号