如何在函数中使用指针?

时间:2017-11-02 00:18:44

标签: c function pointers

该程序应该使用calculateTaxes函数中的指针计算两个税值,然后在displayTaxes函数中显示它们。我的问题是在它们被计算之后再被放入我的指针中,如何在displayTaxes函数中显示它们?

#include <stdio.h>


int inputTotalSales();
int calculateTaxes(int sales,int *statePtr,int *countyPtr);
void displayTaxes(int state,int county);
int main()

{
    int sales,state,county;

    sales=inputTotalSales();

    printf("Sales are: %d\n", sales);

    calculateTaxes(sales,&state,&county);

    displayTaxes(state,county);



}

int inputTotalSales()
{
    int sales;
    printf("Enter monthly sales: ");
    scanf("%d", &sales);
    return sales;
}

int calculateTaxes(int sales,int *statePtr,int *countyPtr)
{
    int state=0.04;
    int county=0.02;


    state= sales*state;
    county=sales*county;

    *statePtr=state;
    *countyPtr=county;


}

void displayTaxes(int state,int county)
{

    int total; 
    total = county+state;

    printf("Taxes for your sales are: \n");
    printf("STATE: %d\n COUNTY: %d\n TOTAL: %d",state,county,total);



}

1 个答案:

答案 0 :(得分:1)

这里的问题不是来自你的指针,他们工作正常我认为

但是您将州和县计算为整数,但它们应该是浮点数(就像statePtr值和countyPtr值一样)

尝试将所有内容更改为float而不是整数。