C语言程序设计课程的线上线下混合式教学模式
作者:张竞 朱子楠 梁晗 张丽
来源:《科技风》2022年第33期
        摘要:目前,線上线下混合式教学模式被广大师生广泛采用。为了能充分发挥线上线下混合式教学模式的优势,介绍了在C语言程序设计课程中,基于雨课堂、阿尔法等教学平台,进行线上线下混合式教学模式的探索与实践的过程。
        关键词:C语言;程序设计;线上线下;混合式教学模式
        在C语言程序设计课程中,基于雨课堂、阿尔法等教学平台,经过精心设计的线上线下教学混合式教学模式的步骤:创设场景,激发学生的学习兴趣和动力→适应场景,养成良好的学习习惯→内化场景,形成专业能力→升级场景,形成专业技术→升华场景,上升为专业艺术。通过这样小步慢走的进步,希望能够更好地、超预期地完成C语言程序设计课程的教学任务。
        1 在线上,教师引导学生在实际中遇到问题或者发现问题,激发学生想解决问题的兴趣和动力
        例如,在C语言程序设计课程的循环模块教学中,给学生提出如下三个问题:
        例1-1 已知一个数列的第n项an=3n+2,计算该数列的前n项和sn。
        例1-2 已知一个数列的第n项an=a*n+b(a和b都是常量),计算该数列的前n项和sn。
        2 在线上,教师指导学生到解决问题的方法或者探索解决问题的方法,使学生提高环境适应能力
        不提倡任课教师直接给出解决问题的方法答案,课上首先让学生自己寻或者探索解决问题的方法,然后教师再提供参考答案(培养学生自学能力和环境适应能力)。
        例如,引导学生自己通过教材、书籍、网络等自学或请教别人,寻探索计算数列的前n项和sn的方法。
        步骤1 首先,学生寻探索计算数列的前n项和sn的方法。
        步骤2 然后,教师再提供计算数列的前n项和sn的参考答案。
        例1-1 已知一个数列第n项an=3n+2,计算该数列的前n项和sn
        方法1使用while语句的循环程序实现
        #include<stdio.h>
        int main()
        {int n,k=1,an,sn=0;
        printf("n = ");
        scanf("%d",&n);
        while(k<=n)
        { an=3*k+2;
        sn=sn+an;
        k++;
        }
        printf("sn = %d \n", sn);
        return 0;
        }
        方法2使用for语句的循环程序实现
        #include<stdio.h>
        int main()
        {int n,k,an,sn=0;
        printf("n = ");
        scanf("%d",&n);
        for(k=1;k<=n;k++)
        { an=3*k+2;
        sn=sn+an;
        }
        printf("sn = %d \n", sn);
        return 0;
        }
        例1-2 已知一个数列第n项an=a*n+b,计算该数列的前n项和sn(a和b是常量)。
        方法1使用while语句的循环程序实现
        #include<stdio.h>
        int main()
c语言斐波那契数列        {int a,b,n,k=1,an,sn=0;
        printf("a b n = ");
        scanf("%d%d%d",&a,&b,&n);
        while(k<=n)
        { an=a*k+b;
        sn=sn+an;
        k++;
        }
        printf("sn = %d \n", sn);
        return 0;
        }
        方法2使用for语句的循环程序实现
        #include<stdio.h>
        int main()
        {int a,b,n,k,an,sn=0;
        printf("a b n = ");
        scanf("%d%d%d",&a,&b,&n);
        for(k=1;k<=n;k++)
        { an=a*k+b;
        sn=sn+an;
        }
        printf("sn = %d \n", sn);
        return 0;
        }
        3 在线下,学生积累解决问题的场景或者拓展解决问题的场景,使学生的适应能力上升为专业能力
        首先,通过努力,学生初步探索尝试性地解决了一个新问题,然后需要独立使用该方法解决一定数量的同类问题,才有可能基本掌握这类解决问题的通用方法。因此,需要学生自己独立解答下面这些练习题并需要做更多的练习题:
        习题3-1 计算自然数列1,2,3,4,5,6,7,8,…的前n项和sn。[1]
        习题3-2 计算斐波那契数列1,1,2,3,5,8,13,21,34,55,…的前n项和sn。[2]
        步骤1 学生最好能独自设计出上面的练习题程序(训练学生独自设计程序能力)。
        步骤2 教师给出设计上面的练习题程序的参考答案,供大家参考。
        习题3-1 计算自然数列1,2,3,4,5,6,7,8,…的前n项和sn。[1]

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。