C语言编程题及答案.pdf
C C 语言编程题及答案语言编程题及答案(三)(三) 1. 给小学生出加法考试题 编写一个程序,给学生出一道加法运算题,然后判断学生输入的答案对错与否,按下列要 求以循序渐进的方式编程。 程序程序 1通过输入两个加数给学生出一道加法运算题, 如果输入答案正确, 则显示 “Right” , 否则显示“Not correct Try again” ,程序结束。 程序程序 2通过输入两个加数给学生出一道加法运算题, 如果输入答案正确, 则显示 “Right” , 否则显示“Not correct Try again” ,直到做对为止。 程序程序 3通过输入两个加数给学生出一道加法运算题, 如果输入答案正确, 则显示 “Right”, 否则提示重做, 显示 “Not correct Try again” , 最多给三次机会, 如果三次仍未做对, 则显示 “Not correctYou have tried three times Test over” ,程序结束。 程序程序 4连续做 10 道题,通过计算机随机产生两个 110 之间的加数给学生出一道加法 运算题,如果输入答案正确,则显示“Right” ,否则显示“Not correct” ,不给机会重做,10 道题做完后,按每题 10 分统计总得分,然后打印出总分和做错的题数。 程序程序 5通过计算机随机产生 10 道四则运算题,两个操作数为 110 之间的随机数,运 算类型为随机产生的加、减、乘、整除中的任意一种,如果输入答案正确,则显示“Right” , 否则显示“Not correct” ,不给机会重做,10 道题做完后,按每题 10 分统计总得分,然后打 印出总分和做错题数。 【思考题】如果要求将整数之间的四则运算题改为实数之间的四则运算题,那么程序该 如何修改呢请读者修改程序,并上机测试程序运行结果。 2掷骰子游戏 编写程序模拟掷骰子游戏。已知掷骰子游戏的游戏规则为每个骰子有 6 面,这些面包含 1、2、3、4、5、6 个点,投两枚骰子之后,计算点数之和。如果第一次投的点数和为 7 或 11, 则游戏者获胜;如果第一次投的点数和为 2、3 或 12,则游戏者输;如果第一次投的点数和为 4、5、6、8、9 或 10,则将这个和作为游戏者获胜需要掷出的点数,继续投骰子,直到赚到该 点数时算是游戏者获胜。如果投掷 7 次仍未赚到该点数,则游戏者输。 【思考题】将游戏规则改为计算机想一个数作为一个骰子掷出的点数(在用户输入数 据之前不显示该点数) ,用户从键盘输入一个数作为另一个骰子掷出的点数,再计算两点数之 和。其余规则相同,然后请读者重新编写该程序。 第 2 章上机实验指导 137 答案 1.1。 。 include /* 函数功能计算两整型数之和,如果与用户输入的答案相同,则返回 1,否则返回 0 函数参数整型变量 a 和 b,分别代表被加数和加数 函数返回值当 a 加 b 的结果与用户输入的答案相同时,返回 1,否则返回 0 */ intAddint a, int b intanswer; printf“dd“, a, b; scanf“d“, if ab answer return 1; else return 0; /* 函数功能打印结果正确与否的信息 函数参数整型变量 flag,标志结果正确与否 函数返回值无 */ voidPrintint flag if flag printf“Rightn“; else printf“Not correctn“; main inta, b, answer; C 语言大学实用教程学习指导138 printf“ a,b“; scanf“d,d“, answer Adda, b; Printanswer; 1.2。 。 。 include /* 函数功能计算两整型数之和,如果与用户输入的答案相同,则返回 1,否则返回 0 函数参数整型变量 a 和 b,分别代表被加数和加数 函数返回值当 a 加 b 的结果与用户输入的答案相同时,返回 1,否则返回 0 */ intAddint a, int b intanswer; printf“dd“, a, b; scanf“d“, if ab answer return 1; else return 0; /* 函数功能打印结果正确与否的信息 函数参数整型变量 flag,标志结果正确与否 函数返回值无 */ void Printint flag if flag printf“Rrightn“; 第 2 章上机实验指导 139 else printf“Not correct. Try againn“; main inta, b, answer; printf“ a,b“; scanf“d,d“, do answer Adda, b; Printanswer; while answer 0; 1.3。 。 。 include /* 函数功能计算两整型数之和,如果与用户输入的答案相同,则返回 1,否则返回 0 函数参数整型变量 a 和 b,分别代表被加数和加数 函数返回值当 a 加 b 的结果与用户输入的答案相同时,返回 1,否则返回 0 */ intAddint a, int b intanswer; printf“dd“, a, b; scanf“d“, if ab answer return 1; else return 0; C 语言大学实用教程学习指导140 /*函数功能打印结果正确与否的信息 函数参数整型变量 flag,标志结果正确与否 整型变量 chance,表示同一道题已经做了几次还没有做对 函数返回值无 */ void Printint flag, int chance if flag printf“Rightn“; else if chance include 第 2 章上机实验指导 141 include /* 函数功能计算两整型数之和,如果与用户输入的答案相同,则返回 1,否则返回 0 函数参数整型变量 a 和 b,分别代表被加数和加数 函数返回值当 a 加 b 的结果与用户输入的答案相同时,返回 1,否则返回 0 */ intAddint a, int b intanswer; printf“dd“, a, b; scanf“d“, if ab answer return 1; else return 0; /* 函数功能打印结果正确与否的信息 函数参数整型变量 flag,标志结果正确与否 函数返回值无 */ void Printint flag if flag printf“Rrightn“; else printf“Not correctn“; main inta, b, answer, error, score, i; srandtimeNULL; error 0; score 0; for i0; i include include /* 函数功能对两整型数进行加、减、乘、除四则运算 如果用户输入的答案与结果相同,则返回 1,否则返回 0 函数参数整型变量 a 和 b,分别代表参加四则运算的两个操作数 整型变量 op,代表运算类型, 当 op 值为 1,2,3,4 时,分别执行加、减、乘、整除运算 函数返回值当用户输入的答案与结果相同时,返回 1,否则返回 0 */ int Computeint a, int b, int op intanswer, result; switch op case 1 printf“d d“, a, b; result a b; 第 2 章上机实验指导 143 break; case 2 printf“d – d“, a, b; result a – b; break; case 3 printf“d * d“, a, b; result a * b; break; case 4 if b 0 printf“d / d“, a, b; result a / b;/*注意这里是整数除法运算,结果为整型*/ else printf“Division by zeron“; break; default printf“Unknown operatorn“; break; scanf“d“, if result answer return 1; else return 0; /* 函数功能打印结果正确与否的信息 函数参数整型变量 flag,标志结果正确与否 函数返回值无 */ void Printint flag if flag C 语言大学实用教程学习指导144 printf“Rrightn“; else printf“Not correctn“; main inta, b, answer, error, score, i, op; srandtimeNULL; error 0; score 0; for i0; i include include int rollDicevoid; 第 2 章上机实验指导 145 main enum Status CONTINUE, WON, LOST; intsum, myPoint, count 0; enum Status gameStatus; srandtimeNULL; sum rollDice; switch sum case 7 case 11 gameStatus WON; break; case 2 case 3 case 12 gameStatus LOST; break; default gameStatus CONTINUE; myPoint sum; printf“Point is dn“, myPoint; break; while gameStatus CONTINUE sum rollDice; count ; if sum myPoint gameStatus WON; else if count 7 gameStatus LOST; C 语言大学实用教程学习指导146 if gameStatus WON printf“Player winsn“; else printf“Player losesn“; int rollDicevoid int die1, die2, workSum; die1 1 rand6; die2 1 rand6; workSum die1 die2; printf“Player rolled d d dn“, die1, die2, workSum; return workSum;
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
如需转载请保留出处:https://bianchenghao.cn/34747.html