if 1 is given output=" 1 "
if 12 is given output=" 12"
if 123 is given output=“123”
thank you
Could you please provide more details.How exactly do you wish to output ?
printf doesn’t have a centre align option. But it has a left align and a right align option. But if you are really in need of a centre align feature, you can write your own custom function for that purpose. Here is a sample.
void centrePrint(int n, int width)
{
char s[20] = {'\0'};
int len;
sprintf(s, "%d", n);
len = strlen(s);
if (len >= width)
printf(s);
else
{
int remaining = width - len;
int spacesRight = remaining / 2;
int spacesLeft = remaining - spacesRight;
printf("%*s%s%*s", spacesLeft, "", s, spacesRight, "");
}
}
2 Likes
And this can be customized for not just an integer, but for any datatype. The idea behind is what matters