MFC,我想在视图框中输出99乘法表,我在视图类中的OnDraw函数中添加了如下代码,
为什么运行后显示的只有9*9=81呢?charbuf[500];for(inti=1;i<=9;i++)for(intj=1;j<=i;j++){sprintf(buf,...
为什么运行后显示的只有9*9=81呢?
char buf[500];
for(int i=1;i<=9;i++)
for(int j=1;j<=i;j++)
{
sprintf(buf,"%d*%d=%d",i,j,i*j);
pDC->TextOut(10,10,buf);
} 展开
char buf[500];
for(int i=1;i<=9;i++)
for(int j=1;j<=i;j++)
{
sprintf(buf,"%d*%d=%d",i,j,i*j);
pDC->TextOut(10,10,buf);
} 展开
2个回答
展开全部
你的TextOut()函数有问题,之前输出的都被擦除掉了,
你可以这样,
static int k = 0;
TEXTMETRIC tm;
pDC->GetTextMetrics(&tm);
char buf[500];
for(int i=1;i<=9;i++)
for(int j=1;j<=i;j++)
{
sprintf(buf,"%d*%d=%d",i,j,i*j);
pDC->TextOut(0,tm.tmHeight*(++k),buf);
}
你可以这样,
static int k = 0;
TEXTMETRIC tm;
pDC->GetTextMetrics(&tm);
char buf[500];
for(int i=1;i<=9;i++)
for(int j=1;j<=i;j++)
{
sprintf(buf,"%d*%d=%d",i,j,i*j);
pDC->TextOut(0,tm.tmHeight*(++k),buf);
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询