2014-01-17 3 views
0
int potenz(float x[1001], float y[1001]) 
{ 
    int i; 
    float c=0.0f,k=0.0f; 


    system("clear"); 

    printf("Wahl der Potenzfunktion der Form c * x^k\n"); 

    printf("Bitte geben sie den Koeffizienten c ein: "); 
    scanf("%f",&c); 

    printf("\nBitte geben sie den Exponenten k ein: "); 
    scanf("%f",&k); 


    printf("\nIhre Funktion: %f x^ %f\n",&c,&k); 

} 

Этот вопрос довольно прост, вот лог ввода/вывода:Чтение значений поплавка; выход приходит как 0.00000

Bitte geben sie den Koeffizienten c ein: 23.512 

Bitte geben sie den Exponenten k ein: 5.1 

Ihre Funktion: 0.000000 x^ 0.000000 

любая идея, почему он делает это, или как избежать этого?

+0

Вы не должны передавать адрес 'c' и' k' '' printf'. Просто передайте значения без адреса оператора. –

+0

Не связаны, но почему вы передаете y и x в качестве параметров. Его даже не используются в функции! –

ответ

5

Вы печатаете адреса переменных c и k вместо их содержимого. Вы должны сделать это:

printf("\nIhre Funktion: %f x^ %f\n",c,k); 
1

Для Printf указать переменную, а не адрес переменной:

printf("\nIhre Funktion: %f x^ %f\n",c,k); 
             ^^^^ 
1

Вы выводя адрес поплавков не сами поплавки. Попробуйте изменить его на:

printf("\nIhre Funktion: %f x^ %f\n",c,k); 
Смежные вопросы