在C中退出Do While循环后,如何使用在Do While循环中输入的值

在C中退出Do While循环后,如何使用在Do While循环中输入的值,c,for-loop,do-while,C,For Loop,Do While,我是C编程的新手。我很想知道是否有可能在do while循环中输入一个值并在循环外使用它。我试过几次编写代码,但都不管用。如果有人能帮我解决这件事,我将不胜感激 #include <stdio.h> int main() { float salary, hours, bonus; float rateperhour = 2.50; do { printf("Please enter hours worked: "); scanf("%f", &ho

我是C编程的新手。我很想知道是否有可能在do while循环中输入一个值并在循环外使用它。我试过几次编写代码,但都不管用。如果有人能帮我解决这件事,我将不胜感激

#include <stdio.h>
int main() {
  float salary, hours, bonus;
  float rateperhour = 2.50;
  do {
    printf("Please enter hours worked: ");
    scanf("%f", &hours);
    salary = hours * rateperhour;
    if (salary > 500 && salary < 1000) {
      printf("Range: 5000-10000\n");
    } else {
      hours = 0;
    }
    printf("Salary: %.2f\n", salary);
  } while (hours > 0);
  for (bonus = 10; bonus <= 15; ++bonus) {
    salary = hours * bonus;
  }
  printf("Salary: %d", salary);
}
#包括
int main(){
浮动工资、工时、奖金;
每小时浮动率=2.50;
做{
printf(“请输入工作时间:”);
scanf(“%f”、&hours);
工资=小时*每小时费率;
如果(工资>500&工资<1000){
printf(“范围:5000-10000\n”);
}否则{
小时=0;
}
printf(“工资:%.2f\n”,工资);
}而(小时>0);
(奖金=10;奖金)
“在退出C中的
do while
循环后,如何使用在
do while
循环中输入的值?”

如果将值指定给的对象在循环外部声明,则访问循环外部的对象没有问题

如果对象仅在循环中声明相反,则它在循环中只有其生存期和作用域

但这不是代码的问题


“尝试编写了几次代码,但对我无效。”

这不是它不打印预期输出的原因。除了上次调用
printf
时错误的格式说明符之外:

printf("Salary: %d", salary);
而不是

printf("Salary: %.0f", salary);

因为
工资
属于
浮动
类型


正如您所看到的,您的代码在语法上没有任何错误,因此您可以查看算法背后的逻辑。

您想在以下方面做什么:

for (bonus = 10; bonus <= 15; ++bonus) {
   salary =hours * bonus;
  }

for(bonus=10;bonus)您的变量一开始就在循环之外声明,并且可以在整个函数中访问,您在这里有一个错误:
printf(“Salary:%d”,Salary);
-->
printf(“Salary:%.0f”,Salary);
此外,这个循环没有意义:
for(bonus=10;bonus程序本身是从伪代码转换而来的。至于奖金部分,它是这样的(bonus=10,bonus≤15,增加奖金1)开始用于薪资等额到小时数乘以奖金结束用于显示薪资我正在尝试显示薪资的值,而不必再次输入新值。但是如果您不在案例中使用条件,则FOR循环没有sens,一旦您在do while循环中计算了薪资,是否要为此薪资添加奖金?如果是,请说明用一句简单的话告诉我这个比例
for (bonus = 10; bonus <= 15; ++bonus) {
   salary =hours * bonus;
  }