VC++6.0和Codeblocks 真的是有很大区别的

从大学接触计算机编程开始,就是用VC++编程,直到假期接受了ACM培训,才开始认识Codeblocks ,老师是这么跟我们说的,就是头文件那里 stdio.h 换成 cstdio,其他都类似,一样可以用scanf,printf 输入,输出,然而我们都天真的相信了,直到遇到 1272 :http://acm.zcmu.edu.cn/JudgeOnline/problem.php?id=1272  那天VC++6.0和Codeblocks 真的是有很大区别的_第1张图片

代码很有缺陷,但是在VC中结果还是对的,在Codeblocks中就完全不是这么回事了,

 
#include
#include
 
int digui(int a,int n)
{
    int sum;
    if(n == 0)
    {
        sum = 1*a;
    }
    else
    {
        sum = digui(a,n-1) + a*pow(10,n);
    }
 return sum;
}
int main()
{


    int t,i, b = 0, a, n;
    scanf("%d", &t);
    scanf("%d%d",&a, &n);
    while(t--)
    {
        for(i = n; i>0;i--)
{
            b=b + digui(a,n-1);
            n--;
}
    }
    printf("%d\n",b);
    return 0;
}

截图就不发了,想试试的就试试吧,

最后附上AC过代码:

 #include
int main()
{
int t;
scanf("%d", &t);
while(t--)
{
int a, n, d, sum = 0, i, j;
scanf("%d%d", &a, &n);
d = a;
for(i = 0; i < n; i++)
{
a = d;
for(j = 0; j < i; j++)
{
                 a = a * 10 + d;
}
sum = sum + a;
}
        printf("%d\n", sum);
}
return 0;
}
 

你可能感兴趣的:(VC++6.0和Codeblocks 真的是有很大区别的)