APP下载

C语言趣味课堂练习之五

2017-11-20杨英翔

卷宗 2017年30期
关键词:C语言教法计算机

摘 要:作者多年从事计算机应用技术研究和教学,在C语言程序设计的教学过程中,作者一直在探索激发学生学习兴趣、降低课程难度、提高学习成绩的有效途径,并提出自己的一些做法供同行们参考。

关键词:C语言;教法;计算机

1 用数组的方法求斐波那契数列前20项

程序说明:

”斐波那契数列”是C语言里很典型的一道题,可以用多种方法解答,本书前文就有用循环求解的方法。

练习方法:

(1).程序原型:

#include

#include

#include

#include

main()

{

system(“color 2f”);

system(“title ---斐波那契数列");

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

int f[256]={1,1},i,j,t,k,s;

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

{

f[i]=f[i-1]+f[i-2];

}

printf(“\n斐波那契數列—————\n");

for(i=0;i<20;i++)

{

printf(“%15d”,f[i]);

if((i+1)%4==0)

printf(“\n”);

}

getchar();

}

(2).参考程序:有一分数序列:2/1,3/2,5/3,8/5,13/8,21/13...求出这个数列的前20项之和。

#include

#include

main()

{

float a1[255]={2,3};

float a2[255]={1,2};

float a3[255];

int i;

float s=0;

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

{

a1[i]=a1[i-1]+a1[i-2];

a2[i]=a2[i-1]+a2[i-2];

}

for(i=0;i<20;i++)

{

a3[i]=a1[i]/a2[i];

s+=a3[i];

}

printf(“\n数列和为 %1.2f\n\n ",s);

getchar();

}

(3).程序变形:

#include

#include

main()

{

int n,t,number=20;

float a=2,b=1,s=0;

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

{

s=s+a/b;

t=a;a=a+b;b=t; //这部分是程序的关键,请读者猜猜t的作用

}

printf(“sum is %9.6f\n”,s);

system(“pause”);

}

后记:

数组的灵活应用的题目很多,教师在这部分教学中应该多讲一些例题。拓展学生的知识面。

2 买瓜

古典算数题目:黄瓜1块钱13根,西瓜3块钱1个,苦瓜1块钱3个,如何买100个瓜,总价也是100块钱?

程序说明:

这个程序里我们讲的就是上文里提到的”买瓜”,这是中国古典算术里很典型的一道题。

练习方法:

(1).程序原型:

#include

#include

#include

#include

void main()

{

system(“color 3f”);

system(“title 买瓜");

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

int i,j,k;

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

{

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

{

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

{

if(i+j+k==100&&i/13+3*j+k/3==100&&!(i%13)&&!(k%3))

{

printf(“\n\n 黄瓜是 %d,西瓜是 %d,苦瓜是 %d\n\n ",i,j,k);

goto lop;

}

}

}

}

lop:

printf(“\n\n “);

}

(2).参考程序:

三折井:用绳子测量井深,三折井外余绳4尺,四折井外余绳1尺,问井深及绳长?

#include

#include

#include

#include

void main()

{

system(“color 3f”);

system(“title 三折井");

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

int i,j;

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

{

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

{

if((i-3*j)==4&&(i-4*j)==1)

{

printf(“\n\n 绳长是 %d,井深是 %d,\n\n ",i,j);

goto lop;

}

}

}

lop:

printf(“\n\n “);

}

作者简介

杨英翔,副教授。

猜你喜欢

C语言教法计算机
计算机操作系统
基于Visual Studio Code的C语言程序设计实践教学探索
基于计算机自然语言处理的机器翻译技术应用与简介
基于C语言的计算机软件编程
信息系统审计中计算机审计的应用
高职高专院校C语言程序设计教学改革探索
“教法融合”:得道方能行远
论子函数在C语言数据格式输出中的应用
Fresnel衍射的计算机模拟演示
语文教学要创新教法