网站首页  词典首页

请输入您要查询的论文:

 

标题 用渗透式渐进案例解析C语言程序的三种结构
范文

    崔孝凤

    摘要:对于C语言的初学者来说,三种程序结构的学习既是重点又是难点,本文从初学者的角度出发由顺序结构到循环结构采用渗透式渐进案例的形式依次设计了3个案例,通过这3个案例依次清楚描述了C语言中的三种结构,对于C语言的初学者能够起到很好的入门引导作用。

    关键词:C语言;三种结构;渗透式;渐进;案例教学

    中图分类号:G642 文献标识码:A

    文章编号:1009-3044(2019)08-0095-02

    1 引言

    对于C语言的初学者来说,三种程序结构的学习和掌握既是重点又是难点,如何用浅显易懂的程序案例帮助初学者理解并应用好这三种结构是摆在每一位C语言任课教师面前的一项艰巨的任务。本文从初学者的角度出发,遵从由易到难的自然学习规律,采用渗透式渐进案例的方法设计出3个案例,依次清楚描述了C语言中的三种结构,对于C语言的初学者能够起到很好的入门引导作用。

    2 具体案例

    2.1 顺序结构案例

    【例题1】请设计一个程序,功能是输入一个人的年龄和性别并输出结果。

    算法分析:这是一个顺序结构的程序,功能很简单,首先输入一个人的年龄和性别,然后再依次输出即可,为了使程序简单化好理解,此处设定如果是男性输入字母m,如果是女性输入字母f。目的是考虑到C语言初学者知识有限,所以尽可能地把程序简单化,首先调动起学习者的兴趣,这是至关重要的一项。

    源代码如下:

    #include

    int main(void)

    {int age; //用age存储年龄

    char sex; //用sex存储性别

    printf("请输入您的年龄:\n");

    scanf("%d",&age);

    getchar(); //取消上一个输入最后输入的回车符

    printf("请输入您的性别(如果是男性请输入m,如果是女性请输入f):\n");

    sex=getchar();

    printf("您的年龄是:%d\n",age);

    printf("您的性别是:%c\n",sex);

    return 0;

    }

    2.2 选择结构案例

    【例题2】请设计一个程序,功能是输入一个人的年龄和性别并输出相应结果,如果性别是m则输出“您是一位男士!”的信息,如果性别是f则输出“您是一位女士!”的信息。

    算法分析:与例题1一样首先输入一个人的年龄和性别信息,然后根据输入的性别信息做出不同的处理,如果性别输入的是m,则输出“您是一位男士!”的信息,如果性别输入的是f,则输出“您是一位女士!”的信息。这是一个比较简单的两分支的选择结构,当然可以设计更复杂的判断,比如根据年龄大小分别输出与年龄更加相符合、更加人性化的信息,此处我们首要的目的仍然是引起学习者的兴趣,然后再逐步加深难度。

    源代码如下:

    #include

    int main(void)

    {int age; //用age存儲年龄

    char sex; //用sex存储性别

    printf("请输入您的年龄:\n");

    scanf("%d",&age);

    getchar(); //取消上一个输入的回车符

    printf("请输入您的性别(如果是男性请输入m,如果是女性请输入f):\n");

    sex=getchar();

    printf("您的年龄是:%d\n",age);

    if(sex=='m')

    printf("您是一位男士!\n");

    else

    printf("您是一位女士!\n");

    return 0;

    }

    请读者思考:如果程序运行时用户输入的性别既不是字母m也不是f,程序会输出什么结果?结果对吗?程序应该如何改进呢?还有如果想根据年龄的不同输出更加人性化的信息,比如如果年龄在12岁以内而且是女性则输出“您是一位可爱的小女孩儿!”,等等,应该对程序如何修改呢?教师可逐步引导学生对程序进行修改,把选择结构的各种复杂情况逐步引出。

    2.3 循环结构案例

    【例题3】请设计一个程序,功能是可以输入多个人的年龄和性别,并且根据性别不同输出不同的信息,如果性别是m则输出“您是一位男士!”的信息;如果性别是f则输出“您是一位女士!”的信息。

    算法分析:这个程序是在例题2的基础上的一个渗透和扩展,目的是引导学生进入循环结构程序设计的应用。该程序需要首先输入人数,然后用一个循环结构来控制人数,在循环体中完成相应的要求即可。

    源代码如下:

    //循环结构,程序运行一次,可以输入多人的信息

    #include

    int main(void)

    {int age; //用age存储年龄

    char sex; //用sex存储性别

    int i,num; //用i控制循环执行次数,用num 存储人数

    printf("请输入人数:\n");

    scanf("%d",&num);

    for(i=1;i<=num;i++) //循环num次

    {printf("请输入您的年龄:\n");

    scanf("%d",&age);

    getchar(); //取消上一个输入的回车符

    printf("请输入您的性别(如果是男性请输入m,如果是女性请输入f):\n");

    sex=getchar();

    printf("您的年龄是:%d\n",age);

    if(sex=='m')

    printf("您是一位男士!\n");

    else

    printf("您是一位女士!\n");

    } //循环结束

    printf("程序运行结束,谢谢您的使用!\n");

    return 0;

    }

    请读者思考一下,如果事先不知道具体的人数,程序该如何修改?还有此程序是使用for语句实现循环的,如果用while或者do-while语句,程序该如何修改呢?学习程序设计必须能够做到举一反三才能熟练掌握。

    3 结束语

    以上3个案例采用渗透式渐进案例的方式具体展示了C语言中的3种程序结构的一种应用,目的是抛砖引玉,引起学生的学习兴趣,从而逐步深化下去,取得更好的学习效果。这3个案例对初学者有极好的引导作用,在此基础上初学者可以很容易地完成更复杂的程序设计。

    参考文献:

    [1] 李娟,张燕. C 语言循环结构教学的设计与实践[J]. 计算机教育, 2018-03-10.

    [2] 郝蕊洁,李妮. “情境-问题-探究”式教学法在C 语言教学中的应用[J]. 现代计算机,2017-11.

    [3] 辛凌洁,贾玉宁,杨颖.C 语言程序设计学习兴趣和方法[J]. 中国教育技术装备, 2017(22).

    [4] 许金兰,徐岗. “兴趣驱动+案例教学模式”在C语言教学中的应用[J]. 中国信息技术教育,2018-03-23.

    [5] 王亮.《C 语言程序设计》循环结构教学案例研究[J]. 科技视界, 2018-01-05.

    [6] 刘芝怡. “项目引领,任务驱动,案例主导”的 C 语言程序设计教学改革[J]. 教育现代化,2018-02-12.

    【通联编辑:王力】

随便看

 

科学优质学术资源、百科知识分享平台,免费提供知识科普、生活经验分享、中外学术论文、各类范文、学术文献、教学资料、学术期刊、会议、报纸、杂志、工具书等各类资源检索、在线阅读和软件app下载服务。

 

Copyright © 2004-2023 puapp.net All Rights Reserved
更新时间:2025/2/5 20:03:54