我认为问题在嵌套 if 之前开始,因为在代码末尾它应该输出 sales = price * sold
的结果,但它也输出 0
#include<stdio.h>
main() {
int num, price, sold, sales;
float compercent, commision;
printf("Enter Unit Price: ");
scanf("%d", &price);
printf("Enter Quantity Sold: ");
scanf("%d", &sold);
sales = price * sold;
if (sales >= 50000) {
compercent = 0.1;
}
else if (sales >= 40000 && sales < 50000) {
compercent = 0.08;
}
else if (sales >= 30000 && sales < 40000) {
compercent = 0.06;
}
else if (sales >= 20000 && sales < 30000) {
compercent = 0.04;
}
else if (sales >= 10000 && sales < 20000) {
compercent = 0.02;
}
else if (sales >= 5000 && sales < 10000) {
compercent = 0.01;
}
else if(sales<5000){
compercent = 0;
}
commision = sales * compercent;
printf("Sales: ");
printf("sales = %f", &sales);
printf("Commision: ");
printf("%f", &commision);
}
最佳答案
当您使用 prinf
时,您不需要提供变量作为引用。该函数需要一个整数或 float ,而不是一个指针。
这应该可以解决:
printf("sales = %i\n", sales);
printf("Commision: ");
printf("%f", commision);
关于c++ - 为什么我的语法正确时我的代码输出为 0,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58356616/