999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

在程序設計課程中教學的科學性和嚴密性研究

2021-06-08 12:10:01傅榮會
計算機時代 2021年1期
關鍵詞:教學方法

摘? 要: 計算機程序設計課程教學內容應符合新時代的需要, 面向行業培養學生的創新意識和創業能力。 教學中應將職業及崗位所需的經驗及技巧融入到問題描述、問題分析、關鍵知識點、任務實現、程序優化、代碼閱讀這六個環節中。文章提出,教師在教學過程中,應重視編程邏輯思維的培養,注重內容的科學性與嚴密性。

關鍵詞: 程序設計; 科學性; 嚴密性; 教學方法

中圖分類號:TP312;G642????????? 文獻標識碼:A???? 文章編號:1006-8228(2021)01-89-03

Research on the scientificity and strictness of teaching in programming courses

Fu Ronghui

(College of Computer Science, Neijiang Normal University, Neijiang, Sichuan 641100, China)

Abstract: The teaching content of computer programming courses should meet the needs of the new era, and face the industry to cultivate students' innovative consciousness and entrepreneurial ability. In the teaching process, the experience and skills required by occupation and post should be integrated into the six links, i.e., problem description, problem analysis, key knowledge points, task realization, program optimization and code reading. This paper proposes that, in the teaching process, teachers should pay attention to the training of programming logic thinking and pay attention to the scientificity and strictness of the teaching content.

Key words: programming; scientificity; strictness; teaching method

0 引言

教學的科學性體現在它必須要符合自身內在的客觀規律,不能違背規律進行[5]。目前程序設計類的教學方法很多,主要分為三類:第一類是經典類,以語言本身為目標,強調知識點的學習。第二類是案例類,將知識點融入到案例中。第三類是程序設計思想與方法類,一般描述比較抽象,內容較深。項目教學法與這三類教學法有所不同,是以一個完整的企業項目為載體展開的(例如學生成績管理系統)。項目教學法在深度和廣度上達到了本科教育層次要求,在組織方式上,則按照職業任務構建和展開。和前面的三類相比,項目教學法有許多值得肯定的地方[1]。不過,在使用過程中發現,項目內容設計常常缺乏應有的科學性與嚴密性[2,4]。本文歸納如下,借此與同行商榷。

1 值得研究的表述

例如:一杯清水和一杯鹽水,交換兩個杯子中的液體。

交換兩個杯子中的液體,一般需要借助一個空杯子。解決問題的步驟如下:

⑴ 將清水杯中的水倒入空杯子中;

⑵ 將鹽水杯中的水倒入清水杯子中;

⑶ 將空杯子中的清水倒入鹽水杯中。

分析:這里⑶空杯子的清水,表述不當,空杯子怎么會有清水。建議修改為“第三個杯子”。

2 前后矛盾

2.1 計算王晨同學三門課程的平均分

#include

void? main()

{ float average;

unsignedintc_score=82;

unsignedintmath_score=80;

unsignedintenglish_score=76;

average=(c_score+math_score+english_score)/3.0; }

分析:程序沒有輸出,與算法特性中的至少一個輸出矛盾。

2.2 選擇排序算法

基本思想:升序(或降序)排序過程,第1趟,在待排序記錄r[1]~r[n]中選出最小(或最大)的記錄,將它與r[1]交換;第2趟,在待排序記錄r[2]~r[n]中選出最小(或最大)的記錄,將它與r[2]交換;以此類推,第i趟在待排序記錄r[i]~r[n]中選出最小(或最大)的記錄,將它與r[i]交換,使有序序列不斷增長直到全部排序完畢。

初始序列:{49 27 65 97 76 12 38}

第1趟:12與49交換:12 {27 65 97 76 49 38}

第2趟:27不動 :12? 27 {65 97 76 49 38}

第3趟:65與38交換:12? 27? 38 {97 76 65 49}

第4趟:97與49交換:12? 27? 38? 49 {97 76 65}

第5趟:76與65交換:12? 27? 38? 49? 65 {97 76}

第6趟:97與76交換:12? 27? 38? 49? 65? 76? 97完成。

分析:根據選擇排序算法思想,應修改第3、4、5趟為:

第3趟:65與38交換:12? 27? 38 {97 76 49 65}

第4趟:97與49交換:12? 27? 38? 49 {76 65 97}

第5趟:76與65交換:12? 27? 38? 49? 65 {76 97}

2.3 冒泡排序算法

假設待排序存放在數組r[n]中,升序(或降序)排序過程為,第一趟,將第一個數據和第二個數據進行比較,若r[1]>r[2](或r[1]

for(i=0; i<7; i++) //冒泡排序算法開始

{ for(j=i; j<7; j++)

{ if(stu_score[i]>stu_score[j])

{ temp=stu_score[j];

stu_score[j]=stu_score[i];

stu_score[i]=temp;

}}} //冒泡排序算法結束

for(i=0; i<7; i++) //輸出排好序的數據

printf("%d\n",stu_score[i]);

分析:該程序主要代碼思想為選擇法排序。冒泡排序主要代碼應修改為:

for(i=1; i<6; i++) //冒泡排序算法開始

{ for(j=0; j<6-i; j++)

if(stu_score[j]>stu_score[j+1])

{ temp=stu_score[j];

stu_score[j]=stu_score[j+1];

stu_score[j+1]=temp;

}

}

3 程序代碼與功能需求不一致

例如:在學生成績管理系統中,學生的信息包括學號、姓名、性別、C成績、高數成績、英語成績、Java成績,將某位男生高于60分的考試成績按照兩個一組輸出。

輸出的主要代碼如下:

if(count % 3==0)

{ printf("\n"); }

分析:這里的if(count % 3==0) {printf("\n"); },功能是按照三個一組輸出,與題意兩個一組輸出明顯不一致。

4 流程圖不完整及表達有誤

例如:讀下面switch語句的程序段,畫出其程序流程圖,并說明其執行過程。

intx,y,z=97;

scanf(“%d%d”,&x,&y);

switch(x+y)

{ case 10:

case 20:printf(“%c”, z); break;

case 25:printf(“%d”,z); break;

case 30:printf(“%c”, z+5);

}

畫出的程序流程圖如圖1所示。

分析:根據程序代碼x+y的值為10和20執行相同的代碼,并不是值為10時什么也不做,分支完應是一個出口。圖1switch分支流程案例圖修改后如圖2所示。

5 實現功能有誤

閱讀下面的程序,寫出輸出結果。

#include

void main()

{ int i,j;

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

{ for(j=1; j<=4; j++)

{ if (i==j)

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

}}}

故最終的輸出結果為:

1*1=1

2*2=4

3*3=9

分析:要使結果如上的顯示,則程序中的if語句修改為:if(i==j)printf(“%d*%d=%d\n”,i*j)。

學生成績管理系統中,經常需要查找某個學生信息,而最準確的查找條件就是使用學號。也就是說,根據輸入的學生學號,查找該學生是否在系統中。

查找的學生學號代碼主要如下:

if(strcmp(stu_nos[i],sno))

{ break; } //如找到查找的學號,終止循環

else

{ i++; } //沒有找到,則對比下一個

分析:字符串比較函數strcmp,按照ASCII碼順序比較字符串1和字符串2的大小。如果字符串1和字符串2相同則結果為0;字符串1大于字符串2時結果為正數;字符串1小于字符串2時結果為負數。故if(strcmp(stu_nos[i],sno)) { break; } else { i++; }應修改為:if(strcmp(stu_nos[i],sno)==0) { break; } else { i++; }。

6 變量初始化有誤

⑴ 求50個學生的《C程序設計》課程考試成績的最高分和最低分。

程序中最高分和最低分的初始化代碼如下:

intc_scores[50],max=101,min=-1;

//c_scores存分數、max最高分、min最低分

分析:程序中的max=101,min=-1賦值出錯,根據題意應修改為:max=-1,min=101。

⑵ 根據Student結構體類型定義,定義具體學生“陳奕楊”變量,并初始化該生信息。

【示例】

第一種直接整體賦初值示例如下:

struct Student st={1005,"陳奕楊",100,'F'};

第二種成員變量逐一賦值示例如下:

struct Student st2;

st2.num=1006;

st2.name="許鐸”;

st2.score=100;

st2.gender='M';

分析:第一種直接賦初值是可行的,但是第二種逐一賦值中的st2.name="許鐸”是錯誤的,字符串賦值不能直接使用等號,可以使用輸入函數scanf、gets及復制函數strcpy等方式。

⑶ 假定學生基本情況包含學號和三門科目成績,編寫自定義函數myinit()實現求某學生信息的初始化,并將該生信息和平均成績輸出到屏幕上。

代碼如下:

#define N 3

structstuInfo

{? longnum;

char name[10];

float score[N]; }

voidmycompute(long intnum,char a[],float *p)

{? int i;

floatsum,avg;

printf(" 學號:%ld,",num);

printf(" 姓名:%s",a);

for(i=0;i

{ printf("%5.1f",*(p+i)); sum=sum+*(p+i); }

avg=sum/N;

printf(" 平均成績:%5.1f",avg);

printf("\n"); }

main()

{ structstuInfo yang={2014106,89.5,95.0,87.5};

mycompute(yang.num,yang.name,yang.score); }

分析:函數mycompute的代碼中,sum變量的作用是累加求和,故變量應該初始化0,即sum=0。根據結構體的定義及教材的運行結果圖分析,main函數中對結構體初始化,也缺少對成員name的初始化,應修改為:structstuInfo yang={2014106,“陳奕楊”89.5,95.0,87.5}。

7 結束語

眾所周知,教學內容的選用對學習效果有非常重要的影響,是我們開展教學的重要環節,在該環節萬萬不可忽視科學性與嚴密性[3]。本文的探討若有不妥,謹望同行專家及讀者不吝指正。

參考文獻(References):

[1] 王廷梅,胡正坤等.C語言程序設計[M].科學出版社,2018.

[2] 周學文.關于教材習題的科學性與嚴密性—評《Visual Foxpro程序設計教程》的習題[J].內江師范學院學報,2003.8.

[3] 王亞平,王萍.教材例題引入應重視其科學性與嚴密性[J].錦州醫學院學報,2000.4.

[4] 張希海.由一道春季高考題談教學的嚴密性——對全反射及臨界角定義的一點看法[J].物理教師,2001.7.

[5] 如何把握教育的科學性[EB/OL].http://www.gaojunpeng.com/jiaoyu/39264.html.

收稿日期:2020-08-14

基金項目:內江師范學院一流本科專業軟件工程子項目“在程序設計課程中融入創新創業教育的改革研究”(YLZY201911)

作者簡介:傅榮會(1978-),女,重慶墊江人,碩士,副教授,主要研究方向:計算機應用及相關教學。

猜你喜歡
教學方法
初中英語寫作教學方法初探
甘肅教育(2020年2期)2020-09-11 08:01:42
教學方法與知識類型的適宜
數學復習教學方法
高中體育教學方法初探
學周刊(2016年23期)2016-09-08 08:57:30
淺談高等數學中教學方法的創新
實用型中醫人才培養中慕課教學方法的探討
文言文教學方法實踐初探
中學語文(2015年21期)2015-03-01 03:52:15
高中文言文教學方法之我見
中學語文(2015年21期)2015-03-01 03:52:15
初中數學教師不可忽視的幾種教學方法
散文百家(2014年11期)2014-08-21 07:17:18
語文閱讀教學方法略談
主站蜘蛛池模板: 国产凹凸视频在线观看 | 日本在线欧美在线| 国产成人8x视频一区二区| 91丨九色丨首页在线播放 | 五月天久久综合国产一区二区| 99国产精品国产高清一区二区| 精品视频在线观看你懂的一区| 国产精品私拍99pans大尺度 | 日韩亚洲综合在线| 亚洲综合第一页| 亚洲国产精品不卡在线| 日韩美一区二区| 久久精品人妻中文视频| 毛片免费在线| 激情五月婷婷综合网| 日韩高清一区 | 玖玖精品在线| 国产自在线拍| 久久精品嫩草研究院| 国产极品美女在线播放| 色呦呦手机在线精品| 91九色国产在线| 99草精品视频| 大香伊人久久| 精品视频一区二区三区在线播| 精品无码国产自产野外拍在线| аⅴ资源中文在线天堂| 免费在线a视频| 老司机午夜精品网站在线观看 | 青青草久久伊人| 日本免费福利视频| 曰AV在线无码| 精品久久香蕉国产线看观看gif| 高清无码一本到东京热| 欧美国产精品拍自| 婷婷中文在线| 欧美一级99在线观看国产| 青草视频久久| 999福利激情视频| 伊人久久婷婷五月综合97色| 亚洲日韩日本中文在线| 91成人精品视频| 在线观看亚洲成人| 国产内射一区亚洲| 性做久久久久久久免费看| 国产在线精品人成导航| 国产色婷婷视频在线观看| 久久青草免费91观看| 色综合天天操| 久久美女精品| 国产又粗又猛又爽视频| 美女潮喷出白浆在线观看视频| 精品国产污污免费网站| 欧美特黄一级大黄录像| 国产精品林美惠子在线观看| 高清码无在线看| 免费中文字幕在在线不卡| 亚洲中文字幕久久无码精品A| 免费一级无码在线网站 | 鲁鲁鲁爽爽爽在线视频观看| 久久国产精品无码hdav| 国产中文一区二区苍井空| 欧美综合在线观看| 日韩不卡高清视频| 日韩欧美综合在线制服| 天堂va亚洲va欧美va国产| 久久黄色毛片| 国产最新无码专区在线| 亚洲日韩欧美在线观看| 狠狠v日韩v欧美v| 国产欧美专区在线观看| 伊人久久久大香线蕉综合直播| 亚洲欧美在线综合一区二区三区| 狠狠色丁香婷婷综合| 永久免费无码成人网站| 国产97色在线| 亚洲欧美另类日本| 色综合国产| 福利国产微拍广场一区视频在线| 无码精油按摩潮喷在线播放| 一本久道久综合久久鬼色| 国产美女叼嘿视频免费看|