Print a leading '+' for positive numbers in printf
I've a temperature conversion program as an assignment, which I've completed. The program has many printf statements in it which print the temperature. Now the negative temperatures are printed the way I want them but the positive temperatures are printed without a leading + sign.
Now what is the best way to get printf print a leading +sign for positive number. All I could think of is to change
printf("Min temp = %d\n",max_temp)
if(max_temp > 0) printf("+"); printf("Min temp = %d\n",max_temp)
But that calls for many changes in program :(
Another option is to write my own print function and put this logic there. What do you suggest ?
You can use the + flag of printf to print positive numbers with a leading + sign as:
printf("%+d %+d",10,-10); // prints +10 -10
Add the + flag. Here is an example.
int n; printf("%+d", n);
(assuming n is an int - just replace %d for other numeric types)