Board logo

标题: 循环语句应用实例 [打印本页]

作者: 苹果也疯狂    时间: 2015-1-12 21:11     标题: 循环语句应用实例



1. 输出英文字母的整数编码

    #Include <Stdio.H>

    Int Main(Void)

    {

        Char Ch;

        /* 输出小写字母的整数编码 */

        For (Ch = ''A''; Ch <= ''Z''; ++Ch)

        {

            Printf("The Integer Value For %C Is %D.
", Ch, Ch);

        }

        /* 输出大写字母的整数编码 */

        For (Ch = ''A''; Ch <= ''Z''; ++Ch)

        {

            Printf("The Integer Value For %C Is %D.
", Ch, Ch);

        }

        Return 0;

    }

正如前面说过的那样,字符是以整数形式存储的,所以可以用 ++Ch 得到下一个字符的编码。而 Ch <= ''Z'' 这个表达式,其实也是使用它们的整数编码进行比较的。不过,这里我假设了您的计算机使用的编码中,英文字母是按升序排列的。如果您的计算机使用的编码中,英文字母是乱序/降序排列的,则此程序不通用。


2. 根据用户输入的整数长度,用星号“*”画出一个矩形。例如:

    3

    ***

    * *

    ***

    7

    *******

    *     *

    *     *

    *     *

    *     *

    *     *

    *******

解决方案:将图形分解为三个部分(第一行,中间有空格的那些行,最后一行)分别输出。

    #Include <Stdio.H>

    Int Main(Void)

    {

        Int Len, Hollow, I;

   

        Printf("Please Input The Length Of The Square: ");

        Scanf("%D", &Len);

        /* 输出第一行星号 */   

        For ( I = 0; I != Len; ++I )

        {

            Putchar(''*'');  /* 输出一个星号 */

        }

        Putchar(''
'');  /* 换行 */

        /* 如果用户输入的长度为1,则只需输出一行 */

        If (Len == 1) {

            Return 0;

        }

        /* 输出中间部分 */

        Hollow = Len - 2;  /* 每行的空格数等于 Len - 2 */

        /* 一共有 Len - 2 行需要输出星号和空格 */

        For ( I = 0; I != Hollow; ++I )

        {

            Int J;

        

            Putchar(''*'');

            /* 输出 Len - 2 个空格 */

            For ( J = 0; J != Hollow; ++J )

            {

                Putchar('' '');

            }

            Printf("*
");

        }

        /* 输出最后一行星号 */

        For ( I = 0; I != Len; ++I )

        {

            Putchar(''*'');

        }

        Putchar(''
'');  /* 换行 */

   

        Return 0;

    }

该程序使用三个循环分别输出第一行,中间部分,以及最后一行。Putchar 是标准函数库中定义的函数,其作用是输出一个字符。Putchar 的函数原型位于 Stdio.H 中。





欢迎光临 电子技术论坛_中国专业的电子工程师学习交流社区-中电网技术论坛 (http://bbs.eccn.com/) Powered by Discuz! 7.0.0