第57章 专业课作业“大翻车”,室友来救场

10月24号晚上,302宿舍的台灯齐刷刷亮着,却听不到往常的打闹声。

《计算机导论》的第一次编程作业成了所有人的“难题”。

周教授要求用C语言写一个“简易计算器”,实现加减乘除四则运算,还得包含“输入错误提示”功能,截止日期就在第二天早上八点,逾期提交直接扣30%平时分。

林舟坐在电脑前,手指悬在键盘上半天没落下。屏幕上的空白文档刺眼得很,他虽然能记住printf、scanf这些基础代码,可怎么把“输入数字”“判断运算符”“计算结果”“错误提示”这几个功能串起来,完全摸不着头脑。之前跟着系统学的编程技巧,到了实际应用时全乱了套,脑子里像塞了一团乱麻。

“完了完了,我连输入数字的代码都写错了。”张强对着屏幕哀嚎,他把“%d”写成了“%s”,运行时直接弹出乱码,“早知道上课就不偷偷看漫画了,现在连基础语法都记混了。”

王浩也好不到哪儿去,他倒是写出了加减运算的代码,可一遇到乘法就报错,屏幕上红色的“error”字样让他烦躁地抓了抓头发:“这星号到底怎么用啊?为什么一乘就报错,难道电脑也跟我一样数学不好?”

只有李哲相对顺利,他已经写完了加减乘除的基础功能,正在调试错误提示模块,时不时推推眼镜,在纸上写写画画:“输入非数字时的提示不难,加个if判断就行,难的是除数为0的情况,得单独写个分支语句。”

林舟看着自己的空白文档,又瞥了眼墙上的时钟,已经晚上十一点了,离截止日期只剩九个小时,冷汗渐渐浸湿了后背。

他之前帮苏晴修过电脑、帮王浩抢过票,总觉得自己有点编程天赋,可真正面对专业课作业,才发现自己还差得远。

“不能慌,再试试。”林舟深吸一口气,打开之前记的课堂笔记,试着敲下“输入数字”的代码。

运行后倒是能正常输入,可接下来怎么判断运算符是“+”“-”“*”还是“/”,他又卡壳了。试着重叠if语句,结果要么只执行加法,要么直接报错,屏幕上的错误提示像在嘲笑他的笨拙。

眼看时间一分一秒过去,林舟急得额头冒汗,对着键盘小声默念:“系统,签到!作业救急!求个清晰的代码思路,别让我平时分打水漂!”

【叮!检测到宿主在“作业攻坚地(302宿舍林舟书桌)”签到,恭喜获得奖励:“简易计算器代码逻辑简化图”(已存入系统空间,含功能模块拆解、代码流程标注、错误处理方案,附“模块拼接技巧”)。】

林舟眼前一亮,赶紧在脑海里打开简化图。图纸把复杂的计算器功能拆成了四个清晰的模块,像搭积木一样标注了每个步骤的逻辑:

1. 输入模块:先定义变量(数字a、b,运算符op),用scanf获取用户输入,搭配printf提示输入格式,避免用户操作失误。

2. 判断模块:用switch语句判断运算符op——case 对应加法,case 对应减法,case 对应乘法,case 对应除法,default对应“无效运算符”错误提示。

3. 计算模块:每个case下写对应的计算公式(如加法a+b),除法需额外加if(b==0)判断,避免除数为0的错误。

4. 输出模块:计算完成后用printf输出结果,错误情况输出对应的提示(如“输入错误,请重新输入”“除数不能为0”)。