浙大版《C語言程序設計(第3版)》題目集 習題6-2 使用函數求特殊a串數列和 (20分)

給定兩個均不超過9的正整數a和n,要求編寫函數求a+aa+aaa++⋯+aa⋯a(n個a)之和。

函數接口定義:

int fn( int a, int n );
int SumA( int a, int n );

其中函數fn須返回的是na組成的數字;SumA返回要求的和。

裁判測試程序樣例:

#include <stdio.h>

int fn( int a, int n );
int SumA( int a, int n );
	
int main()
{
    int a, n;

    scanf("%d %d", &a, &n);
    printf("fn(%d, %d) = %d\n", a, n, fn(a,n));		
    printf("s = %d\n", SumA(a,n));	
	
    return 0;
}

/* 你的代碼將被嵌在這裏 */

簡介: 

          譚浩強C語言書上挺經典的一道題目

         

int fn( int a, int n )
{//也可以用和下面那個函數類似的方法
	/*a = 2, n = 3*/
	int sum = 0;
	for(int i = 0; i < n ;i++){
		sum += (int)a*pow(10,i);
	}
	return sum;
}
int SumA( int a, int n )
{
	int sn = 0, tn = 0;
	int i = 1;
	while(i <= n){
		tn += a;
		sn += tn;
		a *= 10;
		++i;
	}
	return sn;
	
}

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章