| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 615 人关注过本帖
标题:新手求助!请前辈老师帮忙!
只看楼主 加入收藏
善哉善哉
Rank: 1
等 级:新手上路
帖 子:6
专家分:0
注 册:2015-3-14
结帖率:0
收藏
已结贴  问题点数:20 回复次数:6 
新手求助!请前辈老师帮忙!
如何用调用函数画一个N行M列的空心矩形?
搜索更多相关主题的帖子: 如何 
2015-03-14 22:26
afanihao
Rank: 2
等 级:论坛游民
威 望:1
帖 子:62
专家分:99
注 册:2015-3-13
收藏
得分:7 
你的意思其实是用printf在控制台上打印一个像矩形的东西
参考   http://www.  第7章中的“例题二”,二重循环就可以了
2015-03-14 22:52
善哉善哉
Rank: 1
等 级:新手上路
帖 子:6
专家分:0
注 册:2015-3-14
收藏
得分:0 
回复 2楼 afanihao
int i;
  printf("input n:\n");
  scanf("%d",&n);
  printf("input m:\n");
  scanf("%d",&m);
  printf("print rectangle with %d lines:\n",n);
  


return 0;

}
void draw_line(int n)
{int i;
    for(i=1;i<=n;i++)
         printf("*");
      printf("\n");
}

void draw_pointline(int n)
{int i;
     printf("*");
     for(i=2;i<n;i++)
         printf(" ");
     printf("*");
      printf("\n");
}

(1)编写一个函数drawRectangle,作用是调用函数draw_line和draw_pointline 画一个n行m列的矩形。
(2)改写main函数,调用drawRectangle完成矩形的绘制。

为什么当定义void drawRectangle(int m,n);时显示n是非法的?请前辈指教! 谢谢
2015-03-14 23:34
longwu9t
Rank: 11Rank: 11Rank: 11Rank: 11
等 级:小飞侠
威 望:6
帖 子:732
专家分:2468
注 册:2014-10-9
收藏
得分:7 
程序代码:
#include <stdio.h>
#define N 10
#define M 20

int main(void) {
    int i, j;

    for(i = 0; i < N; i++) {
        putchar('#');

        for(j = 0; j < M; j++) {
            if(i == 0 || i == N -1) {
                putchar('#');
            } else putchar(' ');
        }

        putchar('#');
        putchar('\n');
    }

    return 0;
}

Only the Code Tells the Truth             K.I.S.S
2015-03-14 23:38
善哉善哉
Rank: 1
等 级:新手上路
帖 子:6
专家分:0
注 册:2015-3-14
收藏
得分:0 
回复 3楼 善哉善哉
赞!前辈,能不能按照上面的(1),(2)用函数来做呢?
2015-03-15 00:15
code力力
Rank: 5Rank: 5
来 自:宜昌
等 级:职业侠客
威 望:2
帖 子:215
专家分:338
注 册:2015-1-12
收藏
得分:7 
程序代码:
# include <stdio.h>
# define width 50   // 方便修改长宽 
# define height 15

void UpAndDown(void)   //打印上下底 
{
    int i;
    for(i=0;i<width;i++)
     printf("*");
    printf("\n");
}

void Middle (void) //打印中间部分 
{
    int i,j;
    for(i=0;i<height-2;i++)
     {
         printf("*");  // 左右两头的* 
         for(j=0;j<width-2;j++)
          printf(" ");  //左右两头的* 的中间的空格 
         printf("*");// 左右两头的*
         printf("\n");
             
     }
}

int main(void)
{
     UpAndDown();
      Middle ();
     UpAndDown();
    
     return 0;
}

你醒了?快起来敲代码!!
2015-03-15 09:36
afanihao
Rank: 2
等 级:论坛游民
威 望:1
帖 子:62
专家分:99
注 册:2015-3-13
收藏
得分:0 
不符合“编码规范”的代码我是不看的。请先按照附录“编码规范”整理好你的代码。

以下是引用善哉善哉在2015-3-14 23:34:24的发言:

int i;
  printf("input n:\n");
  scanf("%d",&n);
  printf("input m:\n");
  scanf("%d",&m);
  printf("print rectangle with %d lines:\n",n);
  


return 0;

}
void draw_line(int n)
{int i;
    for(i=1;i<=n;i++)
         printf("*");
      printf("\n");
}

void draw_pointline(int n)
{int i;
     printf("*");
     for(i=2;i<n;i++)
         printf(" ");
     printf("*");
      printf("\n");
}

(1)编写一个函数drawRectangle,作用是调用函数draw_line和draw_pointline 画一个n行m列的矩形。
(2)改写main函数,调用drawRectangle完成矩形的绘制。

为什么当定义void drawRectangle(int m,n);时显示n是非法的?请前辈指教! 谢谢
2015-03-15 11:36
快速回复:新手求助!请前辈老师帮忙!
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.016066 second(s), 9 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved