回首页 回首页 ◎ 设为首页  
◎ 收藏本站  
◎ 给我留言  
  
  首 页  C/C++教程  C++之父的FAQ  C/C++动向  C/C++源代码  C/C++误区  Unix/Linux  下载中心  乱七八糟  蚂蚁的Blog  
  当前位置:首 页 >> C/C++教程 >> C 语言基础教程 >> 45. 循环应用实例 2
最 近 更 新
54. goto 语句
53. switch 语句推荐
52. continue 和 break
51. 条件运算符(?:)
50. if 语句嵌套推荐
49. 逻辑运算符推荐
48. 在循环中使用 if 语句推荐
47. if 和 else 连用推荐
46. if 语句
45. 循环应用实例 2
最 新 推 荐
53. switch 语句推荐
50. if 语句嵌套推荐
49. 逻辑运算符推荐
48. 在循环中使用 if 语句推荐
47. if 和 else 连用推荐
44. 循环应用实例 1推荐
43. 循环嵌套推荐
40. for 循环推荐
37. 关系运算符推荐
36. while 循环推荐
热 门 排 行
2. 第一个 C 程序推荐
31. 预处理指令 #define..推荐
1. C 语言简介
11. 基本数据类型:整型..推荐
24. 运算符的优先级和结..推荐
5. 如何编写函数
30. 字符串字面量推荐
13. 标识符命名规则
36. while 循环推荐
7. 第三个 C 程序推荐
站 内 搜 索

Web stdcpp.cn
关键词

搜索方式

搜索范围

精确匹配
广 告

45. 循环应用实例 2


来源:蚂蚁的 C/C++ 标准编程 作者:antigloss 等级:一般
发布于2006-11-11 15:25 被读2674次 【字体:

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

    #include <stdio.h>

    int main(void)
    {
        char ch;

        /* 输出小写字母的整数编码 */
        for (ch = 'a'; ch <= 'z'; ++ch)
        {
            printf("The integer value for %c is %d.\n", ch, ch);
        }
        /* 输出大写字母的整数编码 */
        for (ch = 'A'; ch <= 'Z'; ++ch)
        {
            printf("The integer value for %c is %d.\n", 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('\n');  /* 换行 */

        /* 输出中间部分 */
        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("*\n");
        }

        /* 输出最后一行星号 */
        for ( i = 0; i != len; ++i )
        {
            putchar('*');
        }
        putchar('\n');  /* 换行 */
   
        return 0;
    }

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

本文版权归 蚂蚁的 C/C++ 标准编程 以及 作者 antigloss 共同所有,转载请注明原作者和出处。谢谢。



相关专题:C 循环语句
44. 循环应用实例 1
43. 循环嵌套

上一篇:44. 循环应用实例 1
下一篇:46. if 语句

共有评论 8 条 网友评分 1分 查看全部评论

游客:Ruibi
评分:1
第二体中间的那部分我是这样打出来的,帮我看看这个好点,还是你的那种思路好点?

for(j=1;j<=n-2;j++)
{
    for(k=1;k<=n;k++)                       
    {
         if(k==1||k==n)
        {
             printf("*");
        }
         else
        {
                   printf(" ");
        }
     }
     printf("\n");
}
游客:antigloss
评分:0
循环里面用条件判断语句会降低效率。想象一下,如果循环一千万次,那就要做一千万次判断,如果这些判断却是毫无必要的,那就白白浪费了很多时间在这些判断上。这个程序里根本没有必要用到条件判断语句。
游客:肖建文
评分:0
这网站搞的好    我喜欢  很适合于我
游客:ikillyou2000
评分:0
怎么和我们课本不太一样啊
这里开头怎么是#include <stdio.h>
我们课本上是#include <iostream.h>
游客:antigloss
评分:0
C++ 标准头文件已经不用 .h 后缀了。

http://stdcpp.cn/html/3/3/0510/10.htm

你的课本已经太老了,换本吧。建议你看 Accelerated C++ 或 C++ Primer 第四版。
游客:小不点
评分:0
老兄,我想知道在用嵌套语句的时候在主程序中要有怎么样的说明啊,实在是想不出来了,都两个小时了一个题都没有做出来,要疯了.
游客:antigloss
评分:0
看不懂你的意思。

查看全部评论

【发表评论】 评分:1分 2分 3分 4分 5分


验证码:

Powered By Www.Xydw.COM Ver1.14 管理
Copyright © 2005-2006 蚂蚁的 C/C++ 标准编程 All Right Reserved. XCMS
粤ICP备06014124号   站长:Antigloss