循環(huán)結(jié)構(gòu)程序設(shè)計(jì)-創(chuàng)新互聯(lián)

文章內(nèi)容較適合初學(xué)者,可用于練手,熟悉C語(yǔ)言基礎(chǔ)語(yǔ)法。

創(chuàng)新互聯(lián)公司是工信部頒發(fā)資質(zhì)IDC服務(wù)器商,為用戶提供優(yōu)質(zhì)的服務(wù)器托管服務(wù)一.涉及關(guān)鍵內(nèi)容:

1.for、while、do-while循環(huán)語(yǔ)句

2.break、continue語(yǔ)句的區(qū)別和使用

3.常用基礎(chǔ)算法:窮舉、迭代、遞推

二.設(shè)計(jì)內(nèi)容(題目+源代碼) 1.輸入兩個(gè)正整數(shù)m和n,求它們的大公約數(shù)和最小公倍數(shù)。 法一:
#include "stdio.h"
int main()
{
    int m,n,gb,gy,k;
    printf("請(qǐng)輸入兩個(gè)正整數(shù):");
    scanf("%d%d",&m,&n);
    for(gb=1;1;gb++)
        if(gb%m==0 && gb%n==0)
            break;    
    if(m>n)
        k=n;
    else
        k=m;
    for(gy=k;1;gy--)
        if(m%gy==0 && n%gy==0)
            break;
    printf("最小公倍數(shù)為:%d\n",gb);
    printf("大公約數(shù)為:%d\n",gy);
    return 0;
}
法二:【算法分析】輾轉(zhuǎn)相除法:使k為m除以n的余數(shù),如果m能被n整除,則k值為0,n為這兩個(gè)數(shù)的大公約數(shù),否則,使n代替m,k代替n,重復(fù)以上過(guò)程,直到k值為0,此時(shí)n為大公約數(shù)。 最小公倍數(shù)=(m+n)/大公約數(shù)。
#includeint main()
{
    int m,n,gb,gy,k,a,b;
    printf("請(qǐng)輸入兩個(gè)正整數(shù):");
    scanf("%d%d",&m,&n);
    k=m%n;
    a=m;
    b=n;
    for( ;k!=0; )
    {
        m=n;
        n=k;
        k=m%n;
    }
    gy=n;
    gb=(a*b)/gy;
    printf("最小公倍數(shù)為:%d\n",gb);
    printf("大公約數(shù)為:%d\n",gy);
    return 0;
}

試運(yùn)行:

2.計(jì)算e=1-1/1!+1/2!-1/3!+1/4!……,直到最后一項(xiàng)的絕對(duì)值<10E-4。
#include "stdio.h"
int main()
{
    int i,fh;
    float e,j;
    e=1;
    for(i=1;1;i++)
    {
        if(i%2==1)//符號(hào)問(wèn)題 
            fh=1;
        else
            fh=-1;
        for(j=1;j<=i;j++,i++)//階乘 
            j=j*i;
        if(1/j<10E-4)//停止 
            break;
        e=e+fh*1.0/j;
    }
    printf("e=%f",e);
    return 0;
}

試運(yùn)行:

3.從鍵盤輸入high,計(jì)算并輸出high以內(nèi)大的10個(gè)素?cái)?shù)之和。例如,輸入high的值為100,則輸出732。
#include "stdio.h"
int main()
{
    int high,i,j,sum;
    int num;
    printf("請(qǐng)輸入一個(gè)正整數(shù)high:");
    scanf("%d",&high);
    for(i=high,num=1;num<=10;i--) 
    {
        if(i==1)
            break;//防止high沒(méi)有10個(gè)正素?cái)?shù),計(jì)算機(jī)從負(fù)數(shù)中找 
        for(j=2;j<=high;j++)//若通過(guò)for語(yǔ)句判斷結(jié)束循環(huán)即(j>=i),該數(shù)為素?cái)?shù) 
            if(i%j==0)
                break;
        if(j>=i)
        {
            sum=sum+i;
            num++;
        }
    }
    printf("high以內(nèi)10個(gè)大的素?cái)?shù)之和為:%d",sum);
    return 0;
}

試運(yùn)行:

4.有一數(shù)列:2/1,3/2,5/3,8/5,……求出這個(gè)數(shù)列的前10項(xiàng)之和。
#include "stdio.h"
int main()
{
    int i;
    float fm,fz,sum,t;
    fm=1,fz=2;
    for(i=1,sum=0;i<=10;i++)
    {
        sum=sum+fz/fm;
        t=fm;//t的作用:保留上一步的分母 
        fm=fz;
        fz=t+fz;
    }
    printf("sum=%f",sum);
    return 0;
}

試運(yùn)行:

5.蜘蛛有8條腿,沒(méi)有翅膀;蜻蜓有6條腿和兩對(duì)翅膀;蟬有6條腿和1對(duì)翅膀?,F(xiàn)在這三種小蟲共18只,有118條腿和20對(duì)翅膀,請(qǐng)編程計(jì)算每種小蟲分別有多少只?
#include "stdio.h"
int main()
{
    int zz,qt,c,end;
    end=0;    
    for(zz=1;zz<=16;zz++)
    {
        for(qt=1;qt<=17-zz;qt++)
        {
            c=18-zz-qt;
            if(zz*8+qt*6+c*6==118 && qt*2+c==20)
                end=1;
                break;
        }
    if(end=1)
        break;
    }
    printf("zz=%d,qt=%d,c=%d",zz,qt,c);
    return 0;
}

試運(yùn)行:

6.判斷兩個(gè)整數(shù)m和n是否互質(zhì)(即是否有公共和因子)(m不等于1,n不等于1)。若互質(zhì),則輸出Yes;若不互質(zhì),則輸出No,并輸出公因子。 【算法分析】用2到t(t為m,n中較小的數(shù))之間的數(shù)分別除以m和n,若m和n可同時(shí)被某個(gè)數(shù)除盡,則m,n不互質(zhì);否則m,n互質(zhì)。
#include "stdio.h"
int main()
{
    int t,m,n,i;
    printf("請(qǐng)輸入兩個(gè)不等于1的正整數(shù):");
    scanf("%d%d",&m,&n);
    if(m>n)
        t=n;
    else
        t=m;
    for(i=2;i<=t;i++)
        if(m%i==0 && n%i==0)
            break;
    if(i<=t)
    {
        printf("No\n");
        printf("公因數(shù)為:");
        for( ;i<=t;i++)
        {
            if(m%i==0 && n%i==0)
                printf("%d ",i);
        }
    }
    else
        printf("Yes");
    return 0;
}

試運(yùn)行:

7.打印以下圖案 * *** ***** ******* 【算法分析】通過(guò)分析圖案可得,空格數(shù)=總行數(shù)-該行行數(shù),星號(hào)數(shù)=2*該行行數(shù)-總行數(shù)。
#include "stdio.h"
int main()
{
    int i,j,l,kg,xh;
    printf("請(qǐng)輸入想要的行數(shù):"); 
    scanf("%d",&l);
    for(i=1;i<=l;i++)
    {
        kg=l-i;
        xh=2*i-1;
        for(j=1;j<=kg;j++)//打印\n
            printf(" ");
        for(j=1;j<=xh;j++)//打印*
            printf("*");
        printf("\n"); 
    } 
? ? return 0;
}

試運(yùn)行:

注:本文中代碼均應(yīng)使用Dev C++運(yùn)行,使用其它編譯器可能出現(xiàn)各種語(yǔ)法錯(cuò)誤。

你是否還在尋找穩(wěn)定的海外服務(wù)器提供商?創(chuàng)新互聯(lián)www.cdcxhl.cn海外機(jī)房具備T級(jí)流量清洗系統(tǒng)配攻擊溯源,準(zhǔn)確流量調(diào)度確保服務(wù)器高可用性,企業(yè)級(jí)服務(wù)器適合批量采購(gòu),新人活動(dòng)首月15元起,快前往官網(wǎng)查看詳情吧

文章題目:循環(huán)結(jié)構(gòu)程序設(shè)計(jì)-創(chuàng)新互聯(lián)
網(wǎng)頁(yè)地址:http://muchs.cn/article2/dpehoc.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供服務(wù)器托管軟件開發(fā)、建站公司網(wǎng)站導(dǎo)航、靜態(tài)網(wǎng)站、網(wǎng)頁(yè)設(shè)計(jì)公司

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)

綿陽(yáng)服務(wù)器托管