c++定义一个长度为 30 的整型数组,用于存储 n 位学生的学号(学号均为小于 1000 的正整数)。其中男生的学号为奇数,女生的学号为偶数,编程统计这个班级的男女生人数。如果学生的学号中有小于 0 或者大于对于 1000 的情况,则直接输出 "NO"。
时间: 2024-10-27 21:09:39 浏览: 56
西南交通大学计算机程序设计基础-实验6-C++.docx
5星 · 资源好评率100%
在C++中,你可以首先定义一个大小为30的动态数组`std::vector<int>`来存储学号,因为`vector`允许我们在运行时动态添加或删除元素。然后,你可以遍历整个数组,检查每个学号是否满足条件,并统计男生和女生的人数。以下是实现这一功能的一个示例:
```cpp
#include <iostream>
#include <vector>
int main() {
std::vector<int> studentNumbers(30);
int maleCount = 0;
int femaleCount = 0;
// 假设n已知并作为输入读取
int n = ...; // 从用户输入或其他来源获取
if (n > 30) { // 检查学生总数不超过数组长度
std::cout << "NO" << std::endl;
return 0;
}
for (int i = 0; i < n; ++i) {
int number = ...; // 从用户输入或其他数据源获取每位学生的学号
if (number < 0 || number > 1000) {
std::cout << "NO" << std::endl;
return 0;
}
// 判断性别
if (number % 2 == 0) { // 女生
femaleCount++;
} else { // 男生
maleCount++;
}
}
std::cout << "男生人数: " << maleCount << std::endl;
std::cout << "女生人数: " << femaleCount << std::endl;
return 0;
}
```
在这个程序中,我们假设了学生人数`n`和每个人的学号都已经准备好。在实际应用中,你需要从输入流(如控制台输入或文件读取)中获取这些值。
阅读全文