虽然说是道水题,但其中有很多技巧性的东西。
在输入的时候最好使用%*c可以省略( )字符直接读取数字。
这题还用到了sprintf(),对某些函数的熟练程度的练习是个不错的机会。
Dficience:在平方的处理上有些模棱两可。
附上代码:
#include <stdio.h>
#include<string.h>
#define N 100
int plo(int n,int m)
{
int i,j,k;
int s=1;
if(m==0)
return 1;
else
{
while(m--)
s*=n;
return s;
}
}
int main()
{
int i,j,k,n,m,l,r;
int sum;
char s[N];
while(scanf("%d",&n)==1)
{
sum=0;
for(i=0;i<n;i++)
{
scanf("%d%*c%d%*c",&r,&m);
sprintf(s,"%d",r);
k=strlen(s);
for(j=k-1,l=0;j>=0;j--,l++)
sum+=(s[j]-'0')*plo(m,l);
}
printf("%d\n",sum);
memset(s,'\0',sizeof(s));
}
return 0;
}