1樓:匿名使用者
【解題思路】
本題的關鍵是要算出每一項的值,比如當a=5時,那麼第1項必須是5,第2項55,第三項555……,可以用迴圈巢狀來解決這個問題:外迴圈讓i=1到n,求出從第1項到第n項的值,並累加;內迴圈必須求第i項的值,可以先讓第i項的值sn=a,然後從第2項開始,讓j=2到i,每次執行內迴圈時,讓sn=sn*10+a。比如當i=6時,求第6項的值,必須先讓sn=5,然後執行5次sn=sn*10+5,就會得到555555。
最後再把每一項累加,並輸出。具體**如下:
【程式**】
#include //控制檯操作標頭檔案
int main() //主函式
while(a<1||a>9);//輸入一個1-9的數給a
dowhile(n<1); //輸入一個大於1的數給n
printf("s%d=",n); //輸出sn=
for(s=0,i=1;i<=n;i++) //從第1項至第n項
{for(sn=a,j=2;j<=i;j++) sn=sn*10+a;//算出第i項的值
printf("%d",sn); //輸出第i項的值
if(i
2樓:匿名使用者
你好!首先:程式中應該是要讓b=1,11,111,1111這樣重複下去.
但是b+=(b*10),再第三次迴圈時b的值就等於121了.第二:sn是用來累加a+aa+aaa..
的值, 但是c已經累加過一次了.所以會重複. 具體請看下面的**:
for(b=1;b<=pow(10,n);b=b*10+1) //b每次應該是*10+1;
//如果是b+=(b*10))這樣的話,b首先等於1,然後+=1*10;b=11;
//然後再+=11*10;b就等於11+110=121. 從這裡開始b就錯了
3樓:匿名使用者
是#include
#include不要漏了「.h」
4樓:匿名使用者
#include
#include
using namespace std;
using namespace std;
int main()
cout<<"sn="< return 0;} c語言編寫:求sn=a+aa+aaa+…+aa…a n個a之值 5樓:匿名使用者 l#include "stdio.h" int main() printf(" = %ld",sum); return 0; }樓上的解答不對 6樓:樂觀的志 看了一下樓上的**,在樓上的基礎上改進了一下,比樓上的簡便一些。希望可以幫到你們。(int可以改為long) #include main() printf("值的結果是:%d\n",sum); return 0;} 7樓:匿名使用者 你用的是tc還是vc?我這裡給你個tc環境的,供你參考一下。 #include "stdio.h" int main() printf(" = %ld",sum); return 0; }這好像有一種演算法,但是我也不知道具體的。我也是菜鳥一個,希望能幫到你。 求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++求s=a+aa+aaa+aaaa+aa…a(n個a)之值,其中a是一個數字。例如:1+11+111+1111(此 12樓:匿名使用者 :#include using namespace std; int main() cout < return 0;} 13樓:義高蒲靜逸 當i不等於n的時候在s字串最後加上一個「+」號,當輸出最後一個字串, 內比如22222時候i=5,容n=5,這個時候不要再s最後加上「+」號 如果有這句,比如a=2,n=5時候輸出是這樣的: 當a=2時,n=5時,s=2+22+222+2222+22222如果沒有這句if i<>nthens= s+"+"那麼輸出是這樣的: 當a=2時,n=5時,s=222222222222222或者沒有判斷語句,只有s=s +"+" 那麼輸出是這樣的: 當a=2時,n=5時,s=2+22+222+2222+22222+ 14樓:匿名使用者 #include #include int main() printf("%d\n", sum); return 0;} 15樓: =na+10(n-1)a+100(n-2)a+..+10^(n-1)a =a[n+10(n-1)+10²(n-2)+...+10^(n-1)(n-(n-1)]=a 16樓:紫夜丶風流 #include #include "cstdio" #include "string.h" using namespace std; int main() cout<<"s = "< 17樓:匿名使用者 #include int main() printf("%d\n",s); return 0; }望採納 c++語言程式:sn=a+aa+aaa+…(有n個a) a,n由鍵盤輸入,求sn? 我剛學c+ 18樓:金色潛鳥 // c 程式 加上 前2 行 就成了 c++ 程式,一字不改。 #include using namespace std; #include main() printf("sn=%d",sum);} 19樓:匿名使用者 #include using namespace std; void main() {int a=0,n=0,sn=0,ia=0; //ia用於標記每項a的個數 //輸入a和n cout<<"請輸入a:"<>a; cout<<"請輸入n:"<>n; //求sn for(int iloop=0;iloop 20樓: #include void main() {int a,n,sn,a1; cin>>a>>n; sn=0; //初始a1=a a1=a; for(int i=0;i 21樓:水上漂湯 n個a是什麼意思,n個a相乘嗎? c語言程式設計編寫一程式, 求sn= a+aa+aaa+…+aaa…aaa(n個a)的值,其中a是 1~9之間的一個數字............ 22樓:孤獨的落葉 #include // n+1 代表的是位數,從0開始,即n=0代表一位int getvalue(int a, int n)return temp; }int main() cout << result << endl; return 0; }注意:自己替換一下輸入輸出!c語言的輸入輸出比較麻煩所以,就換成了c++的寫法!總體的演算法不變 根據格抄林公式 襲s 1 2 xdy ydx 再繼續算第二型曲線積分就行了 你給的例題給錯了,伯努利雙紐線應該是 x 2 y 2 2 a 2 x 2 y 2 極座標下是r a cos2 1 2,把積分轉換成角度 的定積分即可,答案是a 2 此題有誤。這是一個不封閉的曲線。因此無法求得面積。一般可以用... include include using namespace std void main while h 1e 5 h 1e 5 pi 4 s cout pi 裡面涉及到型別轉換問題。還有就是條件運算子的優先順序高於 所以給h賦值時要加括號。另外,abs 的引數要求是整數.2n 1不能直接這樣寫,... lz應該知道棧這個東西吧。這道題可以利用兩個棧來完成計算任務。棧a用來存放數字,棧b用來存放運算子。設定好乘除和加減的優先順序關係就可以做了。流程圖這裡不好畫,我把執行過程寫出來給你看吧。用一個指標p順序採集輸入字串。在p指向運算子的時候根據優先順序確定是否計算。例 input a b c d1.p...
利用曲線積分求圖形面積,利用曲線積分,求星形線x acos 3t y asin 3t所圍成的圖形面積
c 求1 1 7糾錯,c 求1 1 3 1 5 1 7 糾錯
求c程式設計答案,求C程式設計答案