怎么回事啊这个
#include
#include
int main()
{
long int a , x , y ;
int n , i , j ;
scanf( "%d %d" , &a , &n ) ;
for ( y = 0 , i = 0 ; i <= n ; i++ )
{
for ( x = 0 , j = 0 ; j < i ; j++ )
{
x += pow( 10 , j ) * a ;
}
y += x ;
}
printf ( "%d" , y ) ;
return 0;
}
long int修改为long long
%d修改为%ld
该回答引用GPTᴼᴾᴱᴺᴬᴵ
修改后的代码如下:
#include <stdio.h>
#include <math.h>
int main()
{
long int a, x, y = 0;
int n, i, j;
scanf("%ld %d", &a, &n);
for (i = 0; i <= n; i++) {
for (x = 0, j = 0; j < i; j++) {
x += pow(10, j) * a;
}
y += x;
}
printf("%ld", y);
return 0;
}
这么改,供参考:
#include <stdio.h>
//#include <math.h> 修改
int main()
{
long int a , x , y ;
int n , i , j ;
scanf( "%d %d" , &a , &n ) ;
for ( y = 0 , x = 0, i = 0 ; i < n ; i++ )
//for ( y = 0 , i = 0 ; i <= n ; i++ ) 修改
{
x = x * 10 + a; //修改
//for ( x = 0 , j = 0 ; j < i ; j++ ) 修改
//{
//x += pow( 10 , j ) * a ;
//}
y += x ;
}
printf ("%ld" , y) ;
return 0;
}