C语言的编程题目

来源:百度知道 编辑:UC知道 时间:2024/05/14 10:11:45
.编写函数S(n,a),实现a+aa+aaa+...+aa..a(n个a的和),并将和返回,在main中调用这个函数,在main中n和a(n和a是实参)由键盘输入,注意合法性的判断。n不大于50,a是一个一位数

#include "stdio.h"
int S(int n,int a) //放在前面可以省去声明节省内存
{
int i,result=0,m=a;
for(i=0;i<n;i++)
{
result+=m;
m=10*m+a;
}
return result;

}
main()
{
int n,a,b;
printf("请输入n(<=50)的值");
scanf("%d",&n);
printf("请输入a(<10)的值"); //这样规定范围就不会出轨了吧
scanf("%d",&a);
b=S(n,a)
printf("结果为:%d",b);
getch();
}

#include "stdio.h"
int S(int,int);
int main()
{
int n,a;
printf("请输入n的值");
scanf("%d",&n);
printf("请输入a的值");
scanf("%d",&a);
printf("结果为:%d",S(n,a));
return 0;
}
int S(int n,int a)
{
int i,result,next;
next=a;result=0;
for(i=0;i<n;i++)
{
result+=next;
next=next*10+a;