第五次作業

來源:互聯網
上載者:User

標籤:內容   images   turn   log   sum   迴圈   amp   數字   main   

一·實驗內容

5-1輸入兩個正整數m,n要求m<=n,求m!+(m+1)!+(m+2)!+...+n!

#include<stdio.h>int main(){int m,n,i;float sum,p;printf("請輸入兩個正整數m,n:\n");scanf("%d",&m);scanf("%d",&n);sum=0;if(m<=n){for(i=m;i<=n;i++){p=1;for(i=m;i<=n;i++){p=p*i;    sum=sum+p;}}}else{printf("error\n");}printf("sum=%.0f\n",sum);return 0;}

  

5-2輸出1000以內的所有完數。完數是指這個數恰好等於出它本身外的所有因子的和,例:6的因子為1,2,3,6,所以6=1+2+3,所以6為完數。

int main(){int i,j,s;for(i=1;i<=1000;i++){s=0;for(j=1;j<=i-1;j++){if(i%j==0){s+=j;}}if(s==i){printf("%d\n",i);}}return 0;}

  

5-3奇偶歸一猜想,對於每一個正整數如果它是奇數,則對它乘3再加1,如果它是偶數,則對它除以2,如此迴圈最終都能夠得到1。

#include<stdio.h>int main(){int x,a=0,b=0,sum=0;printf("請輸入一位正整數x:\n");scanf("%d",&x);do{if(x>0&&x!=1){            if(x%2==0){x=x/2;a++;}else if(x%2!=0){x=x*3+1;b++;}}}while(x!=1);sum=a+b;printf("數字x一共經過了%d次運算",sum);return 0;}

  

二·實驗總結

1.第一個程式編程時遇到的問題是迴圈嵌套大括弧加的不對,導致執行出來假如輸入1和3,輸出的是6,而正確答案是9.這是一個應該注意的問題,之外這道題的思路大致歸結為:先聲明變數,輸入的和和累加累乘的變數為浮點型;賦予sum為0初始值,然後判斷,分別考慮符合和不符合的情況;套用兩個迴圈結構,外迴圈判斷累加,內迴圈判斷累乘,注意大括弧的位置,考慮程式到底執行到哪;最後輸出保留兩位小數,格式為%.2f。

2.第二個程式編程時畫了一個程式架構,有點理不清,輸入的變數沒弄清各自代表的含義,程式編的也有問題,大括弧又用錯,導致語句執行的不對。之外這道題的思路大致歸結為:先聲明變數,輸入的i表示輸入的完數,j表示輸入的因子,s表示輸入的因子的和;使用for迴圈,要確定範圍,給因子的和賦予一個初始值,然後for迴圈嵌套,判斷因子,依次累加,前提明白因子比完數小;再判斷j是不是i的因子,大括弧語句的執行強調;最後若完數與因子的和相等,證明這個數的確是完數。輸出

3.第三個程式編程的時候遇到的問題是,畫程式框圖時沒錯,編的時候do...while,for...else if語句中的步驟子句存在問題。之外這道題的思路大致歸結為輸入一個數,賦予a,b,sum,初始值,a代表偶數的次數,b代表奇數的次數,用do...while先迴圈,再做判斷,強調不能等於1的原因是最終都能夠得到1,如果輸入1就直接輸出了沒意義。注意執行的步驟

第五次作業

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.