I am new to C and learning it for my University course. I am learning about functions and have to create a function that doesn’t have any printf or scanf in it, just a function that calculates how many days are in a week.
int main(days)
{
int weeks;
printf("\nPlease enter a number of weeks: ");
scanf("%i", &weeks);
weekstodays(weeks);
printf("\nThere are %i days in %i weeks.\n", days, weeks);
return 0;
}
int weekstodays(weeks){
int days;
days = weeks * 7;
printf("%i", days);
return(days);
}
Whenever I build and run this, the main function outputs 1 day, but the weekstodays function outputs the desired result. (The printf in the weekstodays function is just to see the value of days)
Does anyone know why the weekstodays function is not returning the day variable correctly?
>Solution :
You are not using the returned value of the function in this statement
weekstodays(weeks);
Write
int days = weekstodays(weeks);
Pay attention to that the function declaration is incorrect
int weekstodays(weeks){
Write
int weekstodays(int weeks){
Also place one more function declaration before main.
Pay attention to that also the declaration of main is incorrect
int main(days)
According to the C Standard the function shall be declared either like
int main( void )
or
int main( int argc, char * argv[] )