请问怎么改一下可以按照上面的格式输出呀,第五行个最后一行始终不一样

#include<stdio.h>
#define STR1"computer"
#define STR2"english"
void prog7_5(void)
{
int a=5,b=7;float x=67.8546f,y=-789.124f;long n=1234567;unsigned int u=65535;printf("#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#\n");//编程者可利用#的个数确定字段宽度printf("a,b:%3d%3d\n",a,b);printf("x,y:%9.6f,%11.6f\n",x,y);printf("x,y:%-15.6f,%11.6f\n",x,y);printf("x,y:%8.2f,%9.4f\n",x,y);printf("x,y:%x,%x\n",x,y);printf("n,n,n:%d,%o,%x\n",n,n,n); //输出n的十进制,八进制和十六进制printf("u,u,u:%d,%o,%x\n",u,u,u); //输出u的十进制,八进制和十六进制printf("STR1,STR2:%s,%-5.3s\n",STR1,STR2);}
int main()
{
prog7_5();return 0;}