m0_74371288 2023-02-20 12:18 采纳率: 42.9%
浏览 17
已结题

c++中添加一个while语句使得数据可以多次输入

下面这个代码如果我想在其中插入一个while语句,使得数据可以循环多次输入,这个while语句应该加在哪?


#include<iostream>
#include<stdio.h>
using namespace std;

int main() {
    int a=0 ;
    int i = 0;
    double sum = 0;
    
        for (i = 0; i < 9999; i++) {
            cin >>a;

            if (a == 9999)
                break;
            else
                sum = sum + a;
        }

        double con = sum / i;
        printf("%.2f", con);
    
    
    system("pause");
    return 0;
}
  • 写回答

3条回答 默认 最新

  • MarkHan_ 2023-02-20 12:21
    关注

    你可以将整个代码块放在while循环内,并在循环开始前重置 sum 和 i 的值。这样,当用户输入 9999 时,会退出当前循环并回到循环开头,直到满足某些条件结束循环。以下是示例代码:

    #include<iostream>
    #include<stdio.h>
    using namespace std;
     
    int main() {
        int a = 0;
        int i = 0;
        double sum = 0;
        while (true) {
            sum = 0;
            i = 0;
            while (i < 9999) {
                cin >>a;
                if (a == 9999) {
                    break;
                }
                sum = sum + a;
                i++;
            }
            if (i == 0) {
                break;
            }
            double con = sum / i;
            printf("%.2f\n", con);
        }
        system("pause");
        return 0;
    }
    

    在这个例子中,当用户输入 9999 时,内部循环会结束并计算平均值。如果用户想继续输入数据,则会重新进入内部循环,否则整个程序会结束。

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论 编辑记录
查看更多回答(2条)

报告相同问题?

问题事件

  • 系统已结题 2月28日
  • 已采纳回答 2月20日
  • 创建了问题 2月20日

悬赏问题

  • ¥200 总是报错,能帮助用python实现程序实现高斯正反算吗?有偿
  • ¥15 对于squad数据集的基于bert模型的微调
  • ¥15 为什么我运行这个网络会出现以下报错?CRNN神经网络
  • ¥20 steam下载游戏占用内存
  • ¥15 CST保存项目时失败
  • ¥15 树莓派5怎么用camera module 3啊
  • ¥20 java在应用程序里获取不到扬声器设备
  • ¥15 echarts动画效果的问题,请帮我添加一个动画。不要机器人回答。
  • ¥15 Attention is all you need 的代码运行
  • ¥15 一个服务器已经有一个系统了如果用usb再装一个系统,原来的系统会被覆盖掉吗