• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

      數(shù)學(xué)專業(yè)C語言三種基本結(jié)構(gòu)教學(xué)研究*

      2018-04-14 02:06:01
      計算機時代 2018年4期
      關(guān)鍵詞:正整數(shù)語句定義

      蔣 靜

      (廣西師范大學(xué)計算機科學(xué)與信息工程學(xué)院,廣西 桂林 541004)

      0 引言

      C語言是廣泛使用的計算機語言之一,并且有著較好的應(yīng)用前景。C語言是計算機二級考試要求的課程之一,它是高等學(xué)校理工科本科專業(yè)的一門重要基礎(chǔ)課程。C語言作為程序設(shè)計的語言被專業(yè)程序員設(shè)計操作系統(tǒng)、實時控制系統(tǒng)及許多應(yīng)用軟件,如目前的UNIX操作系統(tǒng)、Windows操作系統(tǒng)就是用C/C++設(shè)計的。

      對于數(shù)學(xué)專業(yè)的學(xué)生來說,在教學(xué)上應(yīng)注重知識應(yīng)用能力的培養(yǎng)。如果能將某些數(shù)學(xué)問題注入到C語言的學(xué)習(xí)中,讓學(xué)生使用C語言編寫簡單的程序來解決這些數(shù)學(xué)問題,那么學(xué)生就能更快、更好地掌握所學(xué)的知識,更能提高學(xué)生的思維能力和利用所學(xué)知識來解決實際問題的能力。

      C語言有三種基本結(jié)構(gòu):順序結(jié)構(gòu)、選擇結(jié)構(gòu)和循環(huán)結(jié)構(gòu)。對于這三種結(jié)構(gòu)的學(xué)習(xí)和掌握,是C語言中非常重要的任務(wù)[1-4]。為了讓數(shù)學(xué)專業(yè)的學(xué)生能夠更牢固地掌握這三種結(jié)構(gòu),本文將利用編寫搜索一個經(jīng)典的數(shù)學(xué)結(jié)構(gòu)的程序來加深學(xué)生對這三種基本結(jié)構(gòu)的了解,同時也培養(yǎng)了學(xué)生運用知識的能力。

      1 問題的提出

      在C語言教學(xué)中,如果教師給出一個有趣的數(shù)學(xué)結(jié)構(gòu),那么對于數(shù)學(xué)專業(yè)的學(xué)生來說,不僅能夠引起他們的好奇心,更能集中他們的注意力,這也有利于教師展開課堂教學(xué)。因此,我們首先可以給出一個簡單而有趣的例子。

      例1設(shè)集合D={0,1,3},則

      設(shè)Z7為模7剩余類環(huán)。若D={0,1,3}?Z7,則{xy|x,y∈D}={1,2,3,4,5,6}=Z7{0}。

      通過以上的例子,我們要引導(dǎo)學(xué)生思考一個問題:對于一般的正整數(shù)k,v,是否存在集合D?Zv,使D中恰有k個元素,且{x-y|x,y∈D}=Zv{0}。若存在,我們能否用程序搜索出來。學(xué)生帶著這樣的問題思考一段時間后,我們再給出這種結(jié)構(gòu)的精確定義。

      定義1[5]設(shè)G為v階Abel群,其運算為加法。設(shè)D是G的一個k元子集,λ為給定的正整數(shù)。若對中任意非零元g,都有λ個序?qū)?x,y),其中x,y∈G,使g=x-y,則稱D為G中的一個(v,k,λ)-Abel差集或簡稱差集。

      差集是組合設(shè)計理論中一個非常重要的概念,在很多領(lǐng)域有著重要的應(yīng)用。對于本科生,上述定義較難理解。因此,我們可以考慮一個比較簡單的情況,便于學(xué)生理解,進而更容易進行程序的編寫。

      定義2設(shè)Zv為模v剩余類環(huán),D是Zv的一個k元子集。若{x-y|x,y∈D}=Zv{0},則稱D為Zv中的一個(v,k,1)-差集。

      在給出這樣一個較為簡單的定義以后,為了便于學(xué)生理解,將其與例1作比較,我們可以再給出一個差集的例子。

      例2設(shè)D={0,1,4,6}?Z13。因為{x-y|x,y∈D}={1,2,3,4,5,6,7,8,9,10,11,12}=Z13{0}

      所以稱D為Z13中的一個(13,4,1)-差集。

      差集的存在性在文獻[6]中給出了詳細(xì)的說明,在這里我們不需要給出,而只需考慮比較簡單的情況,即k∈[3,10]的情況。

      定理1[6]對任意的整數(shù)k∈[3,10]{7},存在一個(k(k-1)+1,k,1)-差集。

      到目前為止,我們可以將問題描述為:利用C語言的三種基本結(jié)構(gòu)編寫程序,找到定理1中所有的差集,即(k(k-1)+1,k,1)-差集,其中k∈[3,10]{7}。

      2 編寫C語言程序

      在本節(jié)中,我們將介紹如何用C語言的三種基本結(jié)構(gòu)編寫程序來解決上一節(jié)所提出的問題。

      2.1 變量的定義和初始化

      顯然,在此程序中,我們需要用到的變量為正整數(shù)k,v,循環(huán)控制變量i,以及大小為k的集合D。C語言的語句如下:

      2.2 程序的輸入

      根據(jù)定理1,程序的輸入應(yīng)為一個正整數(shù),且滿足k∈[3,10]{7}。我們可以利用一個循環(huán)語句,來控制輸入,即當(dāng)輸入的值屬于[3,10]{7}時,結(jié)束循環(huán)。因此我們可以利用“do-while”循環(huán)語句來實現(xiàn)。C語言語句如下:

      2.3 求集合D

      因為程序是依次找出滿足要求的元素D[i],0≤i≤k-1,所以我們可以利用while循環(huán)語句,來控制此循環(huán)。另外,在檢驗集合D中的元素所產(chǎn)生的差不相同時,可以利用以下函數(shù)來判斷:

      2.4 輸出集合D

      C語言語句如下:

      從上述過程我們可以看出:此程序運用了三種基本結(jié)構(gòu),其中選擇結(jié)構(gòu)有if語句和if-else語句,讓學(xué)生能在實踐中進一步理解這兩種語句的不同之處;循環(huán)結(jié)構(gòu)有do-while語句、while語句和for語句,讓學(xué)生能更好地發(fā)現(xiàn)這三種語句的區(qū)別與聯(lián)系。

      3 結(jié)束語

      在本文中,我們根據(jù)數(shù)學(xué)專業(yè)學(xué)生的特點,首先提出了一個有趣的數(shù)學(xué)問題,讓學(xué)生們產(chǎn)生了對此問題的興趣,進而激起了他們編寫C語言程序的興趣。然后我們根據(jù)給出的數(shù)學(xué)結(jié)構(gòu)的特點,結(jié)合C語言的語句的特點,讓學(xué)生們在編寫程序的過程中體會這三種基本結(jié)構(gòu)的特點和用途,讓學(xué)生能更好的掌握這三種基本結(jié)構(gòu)。

      參考文獻(References):

      [1]譚浩強.C程序設(shè)計(第四版)[M].清華大學(xué)出版社,2010.

      [2]蘇小紅,孫志剛,陳惠鵬等.C語言大學(xué)實用教程(第4版)[M].電子工業(yè)出版社,2017.

      [3]王仕勛,佘鳳.C語言程序設(shè)計項目教程[M].科學(xué)出版社,2011.

      [4]烏云高娃,沈翠新,楊淑萍.C語言程序設(shè)計(第3版)[M].高等教育出版社,2015.

      [5]沈灝.組合設(shè)計理論[M].上海交通大學(xué)出版社,2008.

      [6]Charles J.Colbourn and Jeffrey H.Dinitz.The CRC Handbook ofCombinatorial Designs(Second Edition)[M].FL:Chapman&Hall/CRC,2007.

      猜你喜歡
      正整數(shù)語句定義
      重點:語句銜接
      被k(2≤k≤16)整除的正整數(shù)的特征
      周期數(shù)列中的常見結(jié)論及應(yīng)用*
      方程xy=yx+1的全部正整數(shù)解
      精彩語句
      成功的定義
      山東青年(2016年1期)2016-02-28 14:25:25
      一類一次不定方程的正整數(shù)解的新解法
      如何搞定語句銜接題
      語文知識(2014年4期)2014-02-28 21:59:52
      修辭學(xué)的重大定義
      山的定義
      海林市| 克东县| 肃北| 垣曲县| 华安县| 赤城县| 南康市| 五峰| 广安市| 崇信县| 青川县| 丽江市| 曲阳县| 玉山县| 磐安县| 铜鼓县| 金阳县| 巴彦县| 黄冈市| 玉山县| 车险| 连云港市| 溧阳市| 台中县| 舒兰市| 方城县| 洞口县| 宁都县| 高青县| 塘沽区| 山东省| 简阳市| 万年县| 崇左市| 武宣县| 松江区| 黔西县| 保亭| 天水市| 望谟县| 平山县|