2025年北京化工大学计算机考研复试机试真题
2025年北京化工大学计算机考研复试上机真题
历年北京化工大学计算机考研复试上机真题
历年北京化工大学计算机考研复试机试真题
更多学校题目开源地址:https://gitcode.com/verticallimit1/noobdream
N 诺 DreamJudge 题库:输入 “学校名称” 即可筛选该校历年机试真题,题目均在考纲范围内,按难度自动排序。还可搭配《计算机考研机试攻略》刷题,书中题目可通过题号直接在题库中查找。
分数求和
题目描述
Time Limit: 1000 ms
Memory Limit: 256 mb
有一分数序列: 2/1 3/2 5/3 8/5 13/8 21/13...... 求出这个数列的前N项之和,保留两位小数。
输入输出格式
输入描述:
N
输出描述:
数列前N项和
输入输出样例
输入样例#:
10
输出样例#:
16.48
代码一
- #include "stdio.h"
- int main(){
- float a1 = 2, a2 = 3;
- float b1 = 1, b2 = 2;
- int n;
- scanf("%d", &n);
- if(n == 1){
- printf("%.2f\n", a1 / b1);
- return 0;
- }
- if(n == 2){
- printf("%.2f\n", a1 / b1 + a2 / b2);
- return 0;
- }
- float sum = a1 / b1 + a2 / b2;
- for(int i = 3; i <= n; i ++){
- float tempa = a1, tempb = b1;
- a1 = a2; b1 = b2;
- a2 += tempa; b2 += tempb;
- sum += a2 / b2;
- }
- printf("%.2f\n", sum);
- return 0;
- }
代码二
- #include <stdio.h>
- int main() {
- int n;
- scanf("%d", &n);
- double a = 2.0;
- double b = 1.0;
- double sum = 0.0;
- for (int i = 0; i < n; i++) {
- sum+=a/b;
- double an = a + b;
- double bn = a;
- a = an;
- b = bn;
- }
- printf("%.2f\n", sum);
- return 0;
- }
代码三
- #include <iostream>
- #include <iomanip>
- using namespace std;
- double arr(int n) { //第n项
- if (n == 1)
- return 1;
- if (n == 2)
- return 2;
- return arr(n - 1) + arr(n - 2);
- }
- int main() {
- int N;
- while (cin >> N) {
- double sum = 0;
- for (int i = 1; i <= N; i++)
- sum += arr(i + 1) / arr(i);
- cout << fixed << setprecision(2) << sum << endl;
- }
- return 0;
- }