#include <stdio.h>
int main()
{
int t, w;
long int n, m, c, i, j, f = 0;
long long int b, s = 1;
scanf("%d",&t);
for(w = 1; w <= t; w++)
{
f = 0;
s = 1;
scanf("%ld %ld %ld",&n,&m,&c);
b = (long long int) n * m;
if (c > b) {
printf("%d\n",0);
} else {
for(i = 1; i <= n; i++) {
for(j = 1; j <= m; j++) {
s = i * j;
if (s == c) {
f++;
s = 1;
}
}
printf("%ld\n",f);
}
}
return 0;
}
}
输入时:
1
1000000
1000000
1000000
但是在输出中,它没有显示f的值。为什么输出没有显示f的值?有没有与我使用的数据类型相关的问题?
答案 0 :(得分:1)
至少这部分看起来很可疑。
您写道:
if(s==c)
f++;
s=1;
由于你的缩进,我认为你是在写:
if(s==c)
{
f++;
s=1;
}
但你真正写的是:
if(s==c)
{
f++;
}
s=1;
根据你的缩进,我猜这不是你想要的。