📜  C |回路和控制结构|问题9(1)

📅  最后修改于: 2023-12-03 14:59:38.120000             🧑  作者: Mango

C | 回路和控制结构 | 问题9

在C语言中,有各种控制结构可以用来控制程序的流程,以及回路可以用来重复执行相同的代码块。问题9主要涉及到循环结构。

问题描述

编写一个程序,循环读取用户输入的数字,直到输入0为止。输入的数字表示一个分数,程序需要计算输入的所有分数的平均值,并输出结果。

解决方案

首先,我们需要一个循环来读取数字直到输入0。在C语言中,我们可以使用while循环结构实现这一点。

int count = 0;       // 统计数字个数 
int sum = 0;         // 统计数字和 
int number = 0;      // 用户输入的数字 
float average = 0.0; // 平均值 

while (1) {          // 无限循环 
  printf("请输入数字(输入0结束):");
  scanf("%d", &number);
  if (number == 0) { // 输入数字为0时,跳出循环 
    break;           // 跳出循环 
  }
  count++;           // 统计数字个数 
  sum += number;     // 统计数字和 
}

if (count > 0) {
  average = sum * 1.0 / count;  // 计算平均值 
  printf("平均值为:%.2f", average);
} else {
  printf("未输入数字!");
}

在这个程序中,我们使用while循环读取用户输入的数字,如果输入数字为0,就跳出循环。在循环内部,我们统计了数字的个数和和,然后在循环结束后计算平均值并输出。

总结

在C语言中,控制结构(如while循环)用于控制程序的流程,回路用于重复执行相同的代码块。通过合理使用控制结构和回路,可以编写出简洁、有效的代码,实现各种需求。