• <tr id="yyy80"></tr>
  • <sup id="yyy80"></sup>
  • <tfoot id="yyy80"><noscript id="yyy80"></noscript></tfoot>
  • 99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

    C語言趣味課堂練習(xí)之二

    2017-01-21 10:45:43楊英翔
    卷宗 2016年10期
    關(guān)鍵詞:教法計算機(jī)

    摘 要:作者多年從事計算機(jī)應(yīng)用技術(shù)研究和教學(xué),在C語言程序設(shè)計的教學(xué)過程中,作者一直在探索激發(fā)學(xué)生學(xué)習(xí)興趣、降低課程難度、提高學(xué)習(xí)成績的有效途徑,并提出自己的一些做法供同行們參考。

    關(guān)鍵詞:C語言;教法;計算機(jī)

    1 斐波那契數(shù)列

    古典問題:有一對兔子,從出生后第3個月起每個月都生一對兔子,小兔子長到第三個月后每個月又生一對兔子,假如兔子都不死,問前20個月每個月的兔子總數(shù)為多少對?

    #include

    #include

    main()

    {

    system(“color 3e”);

    system(“title 兔子發(fā)財計劃");

    long f1,f2;

    int i;

    f1=f2=1;

    for(i=1;i<=10;i++)

    {

    printf(“%12ld %12ld”,f1,f2);

    if(i%2==0)

    printf(“\n”); //控制輸出,每行四個

    f1=f1+f2; //前兩個月加起來賦值給第三個月

    f2=f1+f2; //前兩個月加起來賦值給第三個月

    }

    printf(“\n “);

    system(“pause”);

    }

    程序說明:

    斐波那契數(shù)列是C語言里很重要的一道題目,可以由循環(huán)、數(shù)組、函數(shù)等多種方法實現(xiàn),靈活多變,十分適合鍛煉學(xué)生的創(chuàng)新、想象能力。

    還可以鼓勵學(xué)生們做其他的設(shè)計嘗試。

    2 打印“水仙花數(shù)”

    #include

    #include

    main()

    {

    system(“title ‘water flowernumber”);

    system(“color 3e”);

    int i,j,k,n;

    printf(“\n\n ‘water flowernumber is:\n\n “);

    for(n=100;n<1000;n++)

    {

    i=n/100; //分解出百位

    j=n/10%10; //分解出十位

    k=n%10; //分解出個位

    if(n==i*i*i+j*j*j+k*k*k)

    {

    printf(“%-5d”,n);

    }

    }

    printf(“\n\n “);

    }

    程序說明:

    “水仙花”數(shù)是指一個n位數(shù)(n≥3),它的每個位上的數(shù)字的n 次冪之和等于它本身。

    “水仙花”數(shù),是C語言里很重要的一道題目,可以由循環(huán)、數(shù)組、函數(shù)等多種方法實現(xiàn),靈活多變,十分適合鍛煉學(xué)生的創(chuàng)新、想象能力。

    “水仙花”數(shù)是指一個n位數(shù)(n≥3),它的每個位上的數(shù)字的n 次冪之和等于它本身。有三位的”水仙花”數(shù),有四位的”水仙花”數(shù),我們還可以嘗試編程顯示五位的”水仙花”數(shù)。

    3 10以內(nèi)數(shù)減法練習(xí)

    #include

    #include

    #include

    #include

    main()

    {

    srand(time(NULL));

    system(“title 10以內(nèi)數(shù)減法練習(xí)");

    system(“color 3e”);

    int i,j,k,n,m=0;

    for(n=1;n<=20;n++)

    {

    i=rand()%10;

    j=rand()%i;

    printf(“\n\n No: %d”,n);

    printf(“\n\n %d-%d= \n\n “,i,j);

    scanf(“%d”,&k);

    if(k==i-j)

    {

    printf(“\n 恭喜你,答對了!");

    m++;

    }

    else

    printf(“\n 答錯了,正確答案是 %d",i-j);

    Sleep(2000);

    system(“cls”);

    }

    printf(“\n\n 您的總分是 %d ,再見?。躰\n ",m*5);

    }

    程序說明:

    10以內(nèi)減法是10以內(nèi)數(shù)加法的升級,之后還有10以內(nèi)數(shù)的乘法和除法,再以后還有10以內(nèi)數(shù)的四則運算。

    這個練習(xí)主要重點應(yīng)該是培養(yǎng)學(xué)生自主設(shè)計程序的能力。

    10以內(nèi)數(shù)四則運算練習(xí)是我們自主設(shè)計的第一個實用程序,可以鼓勵學(xué)生們進(jìn)一步完善設(shè)計,還可以進(jìn)一步形成函數(shù)版、多文件版等不同的版本。

    4 將一個正整數(shù)分解質(zhì)因數(shù)

    #include

    #include

    //正整數(shù)分解質(zhì)因數(shù)

    main()

    {

    int n,i;

    printf(“\n\n 請輸入正整數(shù):\n\n ");

    scanf(“%d”,&n);

    printf(“\n %d=”,n);

    for(i=2;i<=n;i++)

    {

    while(n!=i)

    {

    if(n%i==0)

    {

    printf(“%d*”,i);

    n=n/i;

    }

    else

    break;

    }

    }

    printf(“%d”,n);

    printf(“\n\n “);

    system(“pause”);

    }

    程序說明:

    將一個正整數(shù)分解質(zhì)因數(shù)。例如:輸入90,打印出90=2*3*3*5。

    對n進(jìn)行分解質(zhì)因數(shù),應(yīng)先找到一個最小的質(zhì)數(shù)i,然后按下述步驟完成:

    (1)如果這個質(zhì)數(shù)恰等于n,則說明分解質(zhì)因數(shù)的過程已經(jīng)結(jié)束,打印出即可。

    (2)如果n>k,但n能被i整除,則應(yīng)打印出i的值,并用n除以i的商,作為新的正整數(shù)n, 重復(fù)執(zhí)行第一步。

    (3)如果n不能被i整除,則用i+1作為i的值,重復(fù)執(zhí)行第一步。

    這兩個程序講的都是數(shù)學(xué)里的小常識,我們還可以引導(dǎo)學(xué)生把其他的數(shù)學(xué)里的小常識用C語言程序表達(dá)出來。既有趣,又鍛煉學(xué)生的C能力。

    5 解方程

    一個整數(shù),它加上100后是一個完全平方數(shù),再加上168又是一個完全平方數(shù),請問該數(shù)是多少??

    #include

    #include

    #include

    #include

    void main()

    {

    system(“color 3f”);

    system(“title 關(guān)于完全平方數(shù)");

    system(“mode con cols=130 lines=20”);

    int i,j,k;

    for (i=1;i<=1000;i++)

    {

    for (j=1;j<=1000;j++)

    {

    for (k=1;k<=1000;k++)

    {

    if(i*i==k+100&&j*j==k+268)

    {

    printf(“\n\n 這個整數(shù)可

    以是 %d\n\n ",k);

    goto lop;

    }

    }

    }

    }

    lop:

    printf(“\n\n “);

    }

    程序說明:

    這個題目里我們使用了嵌套循環(huán)和goto語句。

    這個題目可以用多個算法,程序原型里的算法屬于暴力破解法,又叫窮舉法。

    后記:

    這一類程序里還有很多題目都是很有趣的,例如”三折井”、”買瓜”等題目。都很有趣,而且需要大家認(rèn)真對待。

    作者簡介

    楊英翔,副教授。

    猜你喜歡
    教法計算機(jī)
    計算機(jī)操作系統(tǒng)
    穿裙子的“計算機(jī)”
    基于計算機(jī)自然語言處理的機(jī)器翻譯技術(shù)應(yīng)用與簡介
    科技傳播(2019年22期)2020-01-14 03:06:34
    計算機(jī)多媒體技術(shù)應(yīng)用初探
    科技傳播(2019年22期)2020-01-14 03:06:30
    實戰(zhàn)視角下擒敵拳教學(xué)教法路徑研究
    信息系統(tǒng)審計中計算機(jī)審計的應(yīng)用
    開放在線課程教法的適應(yīng)性變革:從OCW到MOOC
    “教法融合”:得道方能行遠(yuǎn)
    Fresnel衍射的計算機(jī)模擬演示
    羽毛球正手擊高球教法五步曲
    體育師友(2011年2期)2011-03-20 15:29:30
    郑州市| 保亭| 合水县| 托里县| 赣州市| 黑龙江省| 屏东县| 阿荣旗| 衡阳县| 霍林郭勒市| 车险| 嘉鱼县| 如皋市| 张掖市| 德安县| 阜城县| 花莲市| 嘉义县| 隆化县| 桐城市| 大化| 甘肃省| 上高县| 绥棱县| 上杭县| 福泉市| 遵化市| 重庆市| 晋州市| 防城港市| 南陵县| 绥阳县| 福安市| 沙坪坝区| 通山县| 项城市| 延长县| 南充市| 桑植县| 汨罗市| 瑞金市|