You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

实现变量自赋值与多价格求和及SEK转换的技术问询

嘿,我来帮你实现这个带汇率转换的购物价格计算器!根据你的需求,我整理了完整的实现方案,包括菜单交互、汇率设置、价格求和与转换的功能,一起来看看吧:

实现带汇率转换的购物价格计算器

需求梳理

首先明确要实现的核心功能:

  • 支持变量自赋值:比如汇率变量可以被设置为用户输入的指定值,初始默认1.00
  • 价格输入与计算:接收任意多个正数价格,输入负数时结束输入,计算所有价格的总和,并按设置的汇率转换为瑞典克朗(SEK)
  • 菜单交互:提供设置汇率、输入价格、退出程序的选项,处理无效输入

代码实现思路

你提供的初始代码逻辑有个小问题:while循环的条件写反了,应该是持续接收输入直到用户输入负数。我调整了逻辑,同时加入了菜单交互功能,让程序更易用。

以下是完整的C语言实现代码:

#include <stdio.h>

int main() {
    double exchange_rate = 1.00; // 初始汇率,变量自赋值为1.00
    int choice;
    double sum = 0.0;
    double price;

    printf("购物助手\n");
    while (1) {
        // 显示菜单
        printf("1. 设置瑞典克朗(SEK)汇率(当前汇率:%.2f)\n", exchange_rate);
        printf("2. 输入外币价格\n");
        printf("3. 结束程序\n");
        printf("请输入选择(1-3):");
        scanf("%d", &choice);

        switch (choice) {
            case 1:
                // 设置汇率,变量自赋值为用户输入的值
                printf("请输入汇率:");
                scanf("%lf", &exchange_rate);
                break;
            case 2:
                sum = 0.0; // 每次输入价格前重置总和
                printf("请输入价格(输入负数结束):");
                while (scanf("%lf", &price)) {
                    if (price < 0) {
                        break;
                    }
                    sum += price;
                    printf("请输入价格(输入负数结束):");
                }
                // 输出计算结果
                printf("外币总价:%.2f\n", sum);
                printf("瑞典克朗总价:%.2f\n", sum * exchange_rate);
                break;
            case 3:
                printf("程序结束!\n");
                return 0;
            default:
                printf("无效选项!!\n");
        }
    }
    return 0;
}

代码关键点说明

  • 变量自赋值:exchange_rate初始被赋值为1.00,当用户选择选项1时,通过scanf("%lf", &exchange_rate)将用户输入的值赋值给它,实现变量值与指定输入一致的需求
  • 价格输入逻辑:用内层while循环持续接收价格,只要输入的是正数就累加到sum,输入负数则跳出循环并计算转换后的金额
  • 菜单循环:外层while(1)实现菜单的循环显示,直到用户选择退出(选项3)

运行示例

购物助手
1. 设置瑞典克朗(SEK)汇率(当前汇率:1.00)
2. 输入外币价格
3. 结束程序
请输入选择(1-3):1
请输入汇率:9.71
1. 设置瑞典克朗(SEK)汇率(当前汇率:9.71)
2. 输入外币价格
3. 结束程序
请输入选择(1-3):4
无效选项!!
1. 设置瑞典克朗(SEK)汇率(当前汇率:9.71)
2. 输入外币价格
3. 结束程序
请输入选择(1-3):2
请输入价格(输入负数结束):2.75
请输入价格(输入负数结束):3.50
请输入价格(输入负数结束):-23
外币总价:6.25
瑞典克朗总价:60.69
1. 设置瑞典克朗(SEK)汇率(当前汇率:9.71)
2. 输入外币价格
3. 结束程序
请输入选择(1-3):3
程序结束!

内容的提问来源于stack exchange,提问作者Rassal

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.14 07:49:53