QZHY-HTX / Data-Structure

泉州海洋职业学院信息工程学院2023-2024学年第二学期数据结构课程仓库
MIT License
6 stars 9 forks source link

魏锦成 2304470082 #12

Open wjczser opened 7 months ago

wjczser commented 7 months ago

一、提高题:

include < stdio.h>

Sum1(int n)//函数使用了一个简单的循环来计算阶乘的累加和。在每次循环中,它更新了阶乘的值并将其加到总和中 { int p = 1, sum = 0, m; for (m = 1; m <= n; m++) { p *= m; sum += p; } 回报(总和);

} Sum2(int n)//函数也使用了循环,但在每次循环中,它重新计算了阶乘的值,而不是像 Sum1 那样简单地更新现有的阶乘值。 { int sum = 0, p, m, t; for (m = 1; m <= n; m++) { p = 1; for (t = 1; t <= m; t++) p = t; sum += p; } 回报(总和); } fact(int n)//函数是一个递归函数,它通过递归方式计算阶乘。 { if (n <= 1) return (1); else return (n fact(n - 1));

int main() { printf(“%d\n”, Sum1(5)); printf(“%d\n”, Sum2(5)); printf(“%d\n”, fact(5)); 返回 0; } 第二次课后作业

include

include

include

using namespace std;

// 学生信息结构体 struct Student { int id; // 学号 float score; // 成绩 };

// 输入学生成绩 void inputScores(vector& students) { int n; cout << "请输入学生人数: "; cin >> n; students.resize(n); for (int i = 0; i < n; ++i) { cout << "请输入第 " << i + 1 << " 个学生的学号和成绩: "; cin >> students[i].id >> students[i].score; } }

// 按成绩从高到低排序 void sortScores(vector& students) { sort(students.begin(), students.end(), [](const Student& a, const Student& b) { return a.score > b.score; }); }

// 计算平均成绩 float calculateAverage(const vector& students) { float sum = 0; for (const auto& student : students) { sum += student.score; } return sum / students.size(); }

// 计算不及格人数 int countFailures(const vector& students) { int count = 0; for (const auto& student : students) { if (student.score < 60) { // 假设60分为及格线 ++count; } } return count; }

// 打印成绩 void printScores(const vector& students) { for (const auto& student : students) { cout << "学号: " << student.id << ", 成绩: " << student.score << endl; } }

int main() { vector students;

inputScores(students);        // 输入学生成绩
sortScores(students);         // 排序
printScores(students);        // 打印排序后的成绩

float average = calculateAverage(students);   // 计算平均成绩
cout << "平均成绩: " << average << endl;

int failures = countFailures(students);       // 计算不及格人数
cout << "不及格人数: " << failures << endl;

return 0;

}

QZHY-HTX commented 7 months ago

阅,你的 C++ 有待提高,尤其是 include 没有写全。