一道很适合复习函数定义的题,包含一维数组和简单逻辑判断
任务描述
本关任务:编写一个能根据学生号码来输出对应成绩的小程序。
编程要求
实数个数为5(人数为5),注意成绩由程序员赋值为:65,79, 98, 87, 83。 输入用户指定的学生的号码(1-5),输出对应的成绩,当用户输入为0时程序结束。
要求:用户输入、查找成绩并输出都在函数中实现。 提示:函数原型 void check(int x[], int N);
效果如下: 输入: 3 3 3 3 0
输出: 98 98 98 98
【审题时间】
1.成绩由程序员赋值 -> 自己预先定义数组 >> 要把数组定义在主函数里,因为check函数只负责逻辑的处理,不需要给定具体值
2.输出0时程序结束 -> 0时必须强制退出,不能有任何返回值 >> 因为是取数组值,如果不加这个条件系统会随机返回一个值,所以一定要条件break
3.输入、查找和输出都在check函数中实现 -> 主函数中不需要cin or cout or 判断 >> 在check函数中都做完,只要调用一次,系统就会自动运行并完成输入-判断-输出的整个过程
【上代码】
#includeusing namespace std; void check(int x[],int N); int main() { int n; int score[5]={65,79,98,87,83}; //审题1 check(score,n); //审题3 简单粗暴地直接调用,其他事情都交给check函数来搞定吧~ //这里有个我自己遇到的小坑:check函数的格式是(数组,数字),所以逗号前的位置只要写数组的名字就可以了,不需要加中括号(可能只有我一个人会搞错吧 捂脸逃跑 } void check(int x[],int N) { do{cin>>N; if(N==0)break; //审题2 else {cout< =1 && N<=5); //do-while变体 //选择用do-while语句而不是if,因为用户可能输入多个值,只要在范围内都需要系统给出返回值,所以需要循环操作而不是只做一次 } //华丽谢幕



