2 条题解

  • 0
    @ 2026-9-15 21:28:36

    这题还是用C语言写吧。

    import sys, struct
    
    def f32(x):
        return struct.unpack('f', struct.pack('f', x))[0]
    
    # 读入所有内容,按空白切分成 token
    data = sys.stdin.read().split()
    
    c = data[0]                  # 字符
    n = int(data[1])             # 整数
    f1 = f32(float(data[2]))     # 单精度
    f2 = float(data[3])          # 双精度
    
    print(f"{c} {n} {f1:.6f} {f2:.6f}")
    
    
    • 0
      @ 2025-9-16 0:57:30

      核心逻辑

      依次读取字符、整数、单精度浮点数、双精度浮点数,按顺序输出,中间用空格分隔,且两个浮点数均保留6位小数。

      代码实现

      C

      #include <stdio.h>
      
      int main() {
          char c;
          int n;
          float f;
          double d;
          
          // 读取输入(注意字符读取需处理可能的换行,此处输入为单独行,直接读取即可)
          scanf("%c", &c);
          scanf("%d", &n);
          scanf("%f", &f);
          scanf("%lf", &d);
          
          // 输出,浮点数保留6位小数
          printf("%c %d %.6f %.6f\n", c, n, f, d);
          return 0;
      }
      

      C++

      #include <bits/stdc++.h>
      using namespace std;
      
      int main() {
          char c;
          int n;
          float f;
          double d;
          
          cin >> c;
          cin >> n;
          cin >> f;
          cin >> d;
          
          // fixed + setprecision(6) 确保浮点数保留6位小数
          cout << c << " " << n << " " << fixed << setprecision(6) << f << " " << d << endl;
          return 0;
      }
      

      Python

      # 读取输入
      c = input().strip()
      n = int(input())
      f = float(input())
      d = float(input())
      
      # 格式化输出,浮点数保留6位小数
      print(f"{c} {n} {f:.6f} {d:.6f}")
      

      验证(样例输入)

      输入:

      a
      12
      2.3
      3.2
      

      输出:a 12 2.300000 3.200000,与样例一致。

      所有输入均按类型正确读取,浮点数通过格式控制保留6位小数,符合题目要求。

      • 1

      信息

      ID
      445
      时间
      1000ms
      内存
      128MiB
      难度
      7
      标签
      递交数
      239
      已通过
      54
      上传者