我的代码如下:
#include <stdio.h>
int main()
{
int base, exp;
scanf ( "%d %d", &base, &exp );
if ( exp == 0 )
{
printf ( "%d %d", 0, 0 );
}
else
{
printf ( "%d %d", base*exp, exp-1 );
while ( exp - 1 != 0 )
{
scanf ( "%d %d", &base, &exp );
printf ( " %d %d", base*exp, exp-1 );
}
}
return 0;
}
实在想不出来后,在网络AC的代码根据它的思路,自己改了一下,也AC了。
#include <stdio.h>
int main()
{
int base, exp;
int flag = 0;
while ( scanf( "%d %d", &base, &exp ) != EOF )
{
if ( base*exp != 0 )
{
if ( flag != 0 )
{
printf (" ");
}
else
{
flag = 1;
}
printf ( "%d %d", base*exp, exp-1 );
}
}
if ( flag == 0 )
{
printf ( "%d %d", 0, 0 );
}
return 0;
}
可是这段代码测试用例为 9 0
时无限循环,没出结果,这样也是对的吗?
这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。
V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。
V2EX is a community of developers, designers and creative people.