請問一下C語言編寫 求Sn a aa aaaaa a n個a之值n 2的時候還對,為什麼等於3的時候就錯誤

2021-04-13 01:49:03 字數 3041 閱讀 8325

1樓:冷葉憶雪

假設你輸入的是 1 3,應該是 1  111  1111,但是你看你的程式其實每次是 1  11  121(110 + 11)。

c = a * 10 + a,這句專**的問題,屬後面的 +a 其實每次應該加你最開始的 a,但是你每次迴圈之後 a 的值卻被改變的。

所以,可以在進入迴圈前記錄下 a 的值,像這樣:

#include

main()

printf("%d\n",sn);

}執行:

c語言編寫:求sn=a+aa+aaa+…+aa…a n個a之值

2樓:匿名使用者

這個計算是錯的吧,是a+aa+aaa+...+aaaaaa所以可以做如下修改:

#include

#include

int main()

printf("sn=%d",sn);

return 0;}

3樓:匿名使用者

for (m = 0, sn = 0; m < n /*更簡便*/; m++)

sn = sn * 10 + a;

c語言編寫:求sn=a+aa+aaa+…+aa…a n個a之值

4樓:匿名使用者

l#include "stdio.h"

int main()

printf(" = %ld",sum);

return 0;

}樓上的解答不對

5樓:樂觀的志

看了一下樓上的**,在樓上的基礎上改進了一下,比樓上的簡便一些。希望可以幫到你們。(int可以改為long)

#include

main()

printf("值的結果是:%d\n",sum);

return 0;}

6樓:匿名使用者

你用的是tc還是vc?我這裡給你個tc環境的,供你參考一下。

#include "stdio.h"

int main()

printf(" = %ld",sum);

return 0;

}這好像有一種演算法,但是我也不知道具體的。我也是菜鳥一個,希望能幫到你。

c語言程式設計編寫一程式, 求sn= a+aa+aaa+…+aaa…aaa(n個a)的值,其中a是 1~9之間的一個數字............

7樓:孤獨的落葉

#include

// n+1 代表的是位數,從0開始,即n=0代表一位int getvalue(int a, int n)return temp;

}int main()

cout << result << endl;

return 0;

}注意:自己替換一下輸入輸出!c語言的輸入輸出比較麻煩所以,就換成了c++的寫法!總體的演算法不變

求sn=a+aa+aaa+……+aa…a(n個a)之值,其中a是一個數字,n表示a的位數 。用c語言怎樣程式設計

8樓:匿名使用者

#include

int main(int argc, char *argv)else//以後的都滿足關係:這個數

等於前一個數*10+a

}printf("%d",sum);//輸出總和return 0;

9樓:匿名使用者

^首先,an=a*111…1=a/9*999…9=a/9*(10^n-1)。所以,sn=a/9*(10-1+10^2-1+…+10^n-1)=a/9*(1+10+10^2+…+10^n-n-1)=a/9*((10^(n+1)-1)/9-n-1)。

剩下用c程式設計好了。用迴圈是最笨的辦法。

10樓:三石

舉個例子吧,2222就等於(10000-1)/9*2,在用個累加就行了,思路是這樣,

11樓:匿名使用者

#include

void main()

printf("s=%ld\n",s);}

c語言作業。求sn=a+aa+aaa+……+aaa…a(n個a)之值,其中a是一個數字,n表示a的

12樓:最終幻夜

#include

int main() {

int n,temp,i,sum=0,a;

scanf("%d %d",&n,&a);

temp=a;

for(i=0; i

您好   不知道這樣是否滿足您的 需求  望採納

13樓:匿名使用者

#include

int main(void)

printf("結果=%d\n",sn);

return 0;}

c語言 求sn=a+aa+aaa+…+aa…aaa(有n個a)之值,其中a是一個數字。幫我看看哪寫的不對,謝謝!

14樓:資料**

如果我記得沒錯的話 你是第二次來提問這個問題了!

15樓:匿名使用者

你這明顯錯了,a=a*10+a,這個語句你確定是2,22,222?應該是a=a*10+2

16樓:泰山

那點錯了, 你沒看, 你少寫了東西, 對, 就那塊錯誤了.

c語言編寫:求sn=a aa aaa … aa…a n個a之值

17樓:匿名使用者

#include

void main(){

int i,a,n,m=0,s=0;

scanf("%d%d",&a,&n);

for(i=0;i

執行示例:

即輸入a的值版為權2,n的值為5時

sn=2+22+222+2222+22222=24690

用c語言編寫程式,求s1,用C語言編寫程式,求S11223nn1,直到最後一項的絕對值小於

只求從bai第二項起的浮點du 和,把第一項1作為初值zhi直接賦給和dao變數s。如內下 include stdio.h int main int argc,char argv 執行結果如下 最後一項的絕對值小於10的幾次方呀 最後問題顯示沒顯示完整 include stdio.h double ...

C語言求助請編寫程式輸出一下的圖案的程式,圖案的行數由輸入的整數值確定

define tem a int main return 0 c語言 編寫程式,輸入一個整數,將它逆序組成一個整數後輸出。你在這個函式中 double reverse int number 將sum定義為int型 而函式的返回值是double型 最後返回sum時,你說這能匹配專嗎 根據題目屬 要求,...

哪位大神幫忙求一下解讀一下每一步的C語言程式,看不懂

就是一個判斷是bai不是素數,你先得知道du素數的定義把,zhi比如dao2,3,5,7,11,就是因數只有自內己和1的數就叫素數,容1不算。這個是一個比較普通的方法,還有更快的,仔細發現從5開始,素數一定是出現在6的倍數的兩邊,而每次迭代6會比進1來的快的多 最近在看一個linux下的c語言程式,...