程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> C語言 >> C++ >> C++入門知識 >> C++項目:小試循環問題解答

C++項目:小試循環問題解答

編輯:C++入門知識

C++項目:小試循環問題解答


【項目-小試循環】

  寫出實現下面求解任務的程序【提示:m是一個變量,在程序中輸入】
  (1)求1到m的平方和
  (2)求1到m間所有奇數的和
  (3)求1到m的倒數和,即1+12+13+14+...+1m

 
  (4)求值:1?12+13?14+...+(?1)(m+1)×1m  
  (5)求m!,即1×2×3×...×m  

 


【參考解答】

  寫出實現下面求解任務的程序【提示:m是一個變量,在程序中輸入】
  (1)求1到m的平方和

#include 
using namespace std;
int main( )
{
    int n,m,total;
    cin>>m;
    n=1;
    total=0;
    while(n<=m)
    {
        total+=(n*n);
        n++;
    }
    cout<<"total="<

或用for循環:

#include 
using namespace std;
int main( )
{
    int n,m,total;
    cin>>m;
    total=0;
    for(n=1;n<=m;n++)
    {
        total+=(n*n);
    }
    cout<<"total="<

  (2)求1到m間所有奇數的和

#include 
using namespace std;
int main( )
{
    int n,m,total;
    cin>>m;
    n=1;
    total=0;
    while(n<=m)
    {
        total+=n;
        n+=2;
    }
    cout<<"total="<

或用for循環:

#include 
using namespace std;
int main( )
{
    int n,m,total;
    cin>>m;
    total=0;
    for(n=1;n<=m;n+=2)
    {
        total+=n;
    }
    cout<<"total="<

  (3)求1到m的倒數和,即1+12+13+14+...+1m

 

 

#include 
using namespace std;
int main( )
{
    int n,m;
    double total;
    cin>>m;
    n=1;
    total=0;
    while(n<=m)
    {
        total+=(1.0/n); //注意1.0引發的類型轉換,非常重要!
        n++;
    }
    cout<<"total="<

或用for循環:

#include 
using namespace std;
int main( )
{
    int n,m;
    double total;
    cin>>m;
    n=1;
    total=0;
    for(n=1;n<=m;n++)
    {
        total+=(1.0/n); //注意1.0引發的類型轉換,非常重要!
    }
    cout<<"total="<

  (4)求值:1?12+13?14+...+(?1)(m+1)×1m

 

 

#include 
using namespace std;
int main( )
{
    int n,m,sign;
    double total;
    cin>>m;
    n=1;
    total=0;
    sign=1; //用sign代表累加項的符號,這是處理一正一負累加的技巧
    while(n<=m)
    {
        total+=(sign*(1.0/n)); 
        n++;
        sign*=-1; //sign變號
    }
    cout<<"total="<

或用for循環:

#include 
using namespace std;
int main( )
{
    int n,m,sign;
    double total;
    cin>>m;
    n=1;
    sign=1; //用sign代表累加項的符號,這是處理一正一負累加的技巧
    total=0;
    for(n=1; n<=m; n++)
    {
        total+=(sign*(1.0/n)); //注意1.0引發的類型轉換,非常重要!
        sign*=-1; //sign變號
    }
    cout<<"total="<

  (5)求m!,即1×2×3×...×m

 

 

#include 
using namespace std;
int main( )
{
    int n,m;
    long fact; //階乘值很大,數據類型方面考慮一些
    cin>>m;
    n=1;
    fact=1;
    while(n<=m)
    {
        fact*=n;
        n++;
    }
    cout<#include 
using namespace std;
int main( )
{
    int n,m;
    long fact; //階乘值很大,數據類型方面考慮一些
    cin>>m;
    fact=1;
    for(n=1;n<=m;n++)
    {
        fact*=n;
    }
    cout<

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved