gebiwangda 2022-09-03 12:49 采纳率: 81.8%
浏览 21
已结题

float类型数据在printf函数中用%f占位符输出出现错误

在最后一个printf函数中,以%f的形式输出salary,但是输出结果为0.0000,调试的时候可以看到salary的值是正常的float类型

#include<stdio.h>
int main()
{
    int choice;
    float work_hours;
    float salary;
    printf("Enter the number corresponding to hte desired pay rate or action:\n");
    printf("1)$8.75/hr\n2)$9.33/hr\n3)$10.00hr\n4)$11.20/hr\n5)quit\n");
    scanf("%d %f",&choice,&work_hours);
    switch(choice)
    {
        case 1:
            {
                salary=work_hours*8.75;
                break;
            }
        case 2:
            {
                salary=work_hours*9.33;
                break;
            }
        case 3:
            {
                salary=work_hours*10.00;
                break;
            }
        case 4:
            {
                salary=work_hours*11.20;
                break;
            }    
        case 5:
            {
                break;
            }    
        
    }
    printf("%5f是你的工资",&salary);
}

```

  • 写回答

1条回答 默认 最新

  • 亖夕 新星创作者: python技术领域 2022-09-03 12:58
    关注
    printf("%5f是你的工资",salary);不要带&这个取地址符
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

问题事件

  • 系统已结题 9月11日
  • 已采纳回答 9月3日
  • 创建了问题 9月3日