请教此程序错在哪里?(并改之)
请问此程序错在哪里?(并改之)
题目:给定程序,函数fun的功能是求s=a+aa+aaa+…+aa…a(此处a和n的值在1~9之间,aa…a表示n个a)。
#include "conio.h "
#include "stdio.h "
#include "math.h "
fun(int a,int n)
{int j,i;
long sum=0,t;
for(j=1;j <=n;j++)
{ t=0;
for (i=0;i <j;i++)
t=pow(10,i)*a+t;
sum+=t;
}
return sum;
}
void main()
{int a,n;
clrscr();
printf( "\Please enter a and n:\n " ");
scanf( "%d,%d ",&a,&n);
printf( "\nThe Sum is:%ld ",fun(a,n));
}
结果运行后出现错误:问题是出现在 return sum 这里的~~怎么回事???
------解决方案--------------------
#include "conio.h "
#include "stdio.h "
#include "math.h "
long fun(int a,int n)
{int j,i;
long sum=0,t;
for(j=1;j <=n;j++)
{ t=0;
for (i=0;i <j;i++)
t=pow(10,i)*a+t;
sum+=t;
}
return sum;
}
void main()
{int a,n;
clrscr();
scanf( "%d,%d ",&a,&n);
printf( "\nThe Sum is:%ld ",fun(a,n));
getch();
}
输入:5,2 <enter>
输出:The Sum is:60
题目:给定程序,函数fun的功能是求s=a+aa+aaa+…+aa…a(此处a和n的值在1~9之间,aa…a表示n个a)。
#include "conio.h "
#include "stdio.h "
#include "math.h "
fun(int a,int n)
{int j,i;
long sum=0,t;
for(j=1;j <=n;j++)
{ t=0;
for (i=0;i <j;i++)
t=pow(10,i)*a+t;
sum+=t;
}
return sum;
}
void main()
{int a,n;
clrscr();
printf( "\Please enter a and n:\n " ");
scanf( "%d,%d ",&a,&n);
printf( "\nThe Sum is:%ld ",fun(a,n));
}
结果运行后出现错误:问题是出现在 return sum 这里的~~怎么回事???
------解决方案--------------------
#include "conio.h "
#include "stdio.h "
#include "math.h "
long fun(int a,int n)
{int j,i;
long sum=0,t;
for(j=1;j <=n;j++)
{ t=0;
for (i=0;i <j;i++)
t=pow(10,i)*a+t;
sum+=t;
}
return sum;
}
void main()
{int a,n;
clrscr();
scanf( "%d,%d ",&a,&n);
printf( "\nThe Sum is:%ld ",fun(a,n));
getch();
}
输入:5,2 <enter>
输出:The Sum is:60