标题 | C语言趣味课堂练习之十二 |
范文 | 杨英翔 许崇 摘 要:作者多年从事计算机应用技术研究和教学,在C语言程序设计的教学过程中,作者一直在探索激发学生学习兴趣、降低课程难度、提高学习成绩的有效途径,并提出自己的一些做法供同行们参考。 关键词:C语言;教法;计算机 1 冒泡排序法排序 程序说明: 这个程序里我们经常提到的”冒泡排序法”,是C语言里很典型的一道题,讲解这道题的重点应该放在算法分析上。 练习方法: (1).程序原型: #include #include #include #include main() { system(“color 2f”); system(“title ---冒泡排序法"); system(“mode con cols=130 lines=40”); int m[256],i,j,t,k; printf(“\n\n 输入10个数:\n\n "); for(i=0;i<10;i++) { scanf(“%d”,&m;[i]); } printf(“\n您输入的数组—————\n"); for(i=0;i<10;i++) { printf(“%5d”,m[i]); } for(i=0;i<9;i++) { for(j=0;j<9-i;j++) { if(m[j]>m[j+1]) { t=m[j+1]; m[j+1]=m[j]; m[j]=t; } } } printf(“\n\n排序后的数组—————\n"); for(k=0;k<10;k++) printf(“%5d”,m[k]); printf(“\n\n”); getchar(); } (2).参考程序:演示冒泡排序法 #include #include #include #include main() { system(“color 2f”); system(“title ---冒泡排序法"); system(“mode con cols=130 lines=40”); srand(time(NULL)); int m[256],n[256],i,j,t,k; for(i=0;i<10;i++) { m[i]=rand()%100; n[i]=m[i]; } for(i=0;i<10;i++) { printf(“%5d”,n[i]); } printf(“\n\n下面开始排序——\n\n"); system(“pause”); for(i=0;i<9;i++) { printf(“ 第 %d 趟_______\n",i+1); for(j=0;j<9-i;j++) { if(m[j]>m[j+1]) { t=m[j+1]; m[j+1]=m[j]; m[j]=t; } } for(k=0;k<10;k++) { printf(“%5d”,m[k]); } printf(“\n”); system(“pause”);; } system(“cls”); printf(“\n\n原来的数组————\n"); for(k=0;k<10;k++) printf(“%5d”,n[k]); printf(“\n\n”); Sleep(2000); printf(“排序后的數组—————\n"); for(k=0;k<10;k++) printf(“%5d”,m[k]); printf(“\n\n”); getchar(); } 2 后记 教师在讲解这个程序时应该注意算法分析,同时注意激发学生学习兴趣和调动学生的学习积极性。 作者简介 杨英翔,沈阳建筑大学,副教授。 许崇,沈阳建筑大学,实验师。 |
随便看 |
|
科学优质学术资源、百科知识分享平台,免费提供知识科普、生活经验分享、中外学术论文、各类范文、学术文献、教学资料、学术期刊、会议、报纸、杂志、工具书等各类资源检索、在线阅读和软件app下载服务。