B. 实验6-3 使用函数求特殊a串数列和
题目描述
给定两个均不超过9的正整数a和n,要求编写函数求a+aa+aaa++⋯+aa⋯a(n个a)之和。
要求定义并调用函数fn(a,n),它的功能是返回aa⋯a(n个a)。
输入
两个正整数a和n
输出
见样例
样例查看模式
正常显示
查看格式
输入样例1
2 3
输出样例1
fn(2, 3) = 222
s = 246
这道题没什么特别需要注意的,主要就是当输入9 9 的时候可能溢出
#include<stdio.h>
void put_(int a,int n)
{
int i;
for(i=0;i<n;i++)
printf("%d",a);
}
long sum(int a,int n)
{
long i,sum=0;
int b=a;
for(i=0;i<n;i++)
{
sum+=a;
a=a*10+b;
}
return sum;
}
int main()
{
int a,n,m;
scanf("%d %d",&a,&n);
m=sum(a,n);
printf("fn(%d, %d) = ",a,n);
put_(a,n);
printf("\n");
printf("s = %ld",sum(a,n));
return 0;
}