求解类型转化问题

mac2025-03-21  17

今天刷pat一道题,提交时,doube乘int的结果过了全部的测试点,而int乘double只过了一半的测试点,按理来说int精度小于double,在计算的时候不应该是自动转换吗?

#include "pch.h" #include <iostream> #include<string.h> #include<stdio.h> #include<iomanip> #include<vector> #include<string> #include<algorithm> #include<queue> #include<map> #include<math.h> using namespace std; int main() { int n; cin >> n; int t = n; double*a = new double[n]; for (int i = 0; i < n; i++) cin >> a[i]; double sum = 0; for (int j = 1; j <=n; j++) { sum += a[j-1]*t*j;//这里如果是t*j*a[j-1]就过不了三四测试点 t--; } cout << fixed<<setprecision(2)<<sum << endl; }

 

 

 

 

最新回复(0)