24小时热门版块排行榜    

查看: 1796  |  回复: 16
当前只显示满足指定条件的回帖,点击这里查看本话题的所有回帖

136391618

木虫 (正式写手)

物理骨灰迷

[求助] 【求助】小程序改错

题目如下
CODE:
输入 n 值,输出如下例( n=4 )所示的数字菱形。
  4
 434
43234
4321234
43234
 434
  4
输入: n
输出: 数字菱形
友情提示:同学们总结一下打印星号组成的实心图形程序的编程思路:第一步,打印星号组成的正方形;第二步,改变每行星号的个数,打印每行星号数量不一样的图形;如果是空心图形,每行第一个和最后一个位置输出星号,其他位置输出空格。
现在我们练习输出变化的字符,在打印星号图形的基础上,原来输出*号的位置,将printf("*");改为printf("%2d",x);当然,原来输出一个*号的地方只占一个字符的位置,现在都要改为2个字符的位置,如果输出的是数字且多于2个,则要是%3d或%4d了。
x是多少呢?则要寻找其规律,就是该输出位置与所在行列的关系。

注意给出的测试用例,输出的数字是左对齐啊。

我的程序是
CODE:
#include
#include
int main(int argc, char *argv[])
{   int n,i,j,x,y;
    scanf("%d",&n);
   for(j=1;j<=2*n-1;j++)
        { for(i=1;i<=n-1+j;i++)
             { if(j>n) {y=j;y=2*n-y;}
               if(i>n) {x=i;x=2*n-x;}
               if(x+y<=n) printf("  ");
               if(x+y>n)  printf("%-2d",2*n-x-y+1);
             }
          printf("\n");   
        }   
     system("PAUSE");       
     return 0;
}

能不能改对啊, 我都没想明白错在哪?
如果实在改不对  请大家有空的写一个程序 让我学习学习

[ Last edited by 136391618 on 2012-5-1 at 14:03 ]
回复此楼
爱因斯坦我来了
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

lijie169

铜虫 (著名写手)

【答案】应助回帖

引用回帖:
13楼: Originally posted by 136391618 at 2012-05-03 08:17:40:
#include <stdio.h>
#include <stdlib.h>
void  print(int n)
{
     int line=0;
     int order,reorder,number,k;
     for(line=0;line<n;line++)
     {
          number=n;
...

这些细节你就慢慢自己想,只能给你一个idea
14楼2012-05-03 10:45:23
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
查看全部 17 个回答

136391618

木虫 (正式写手)

物理骨灰迷

怎么么没人呢???????????
爱因斯坦我来了
2楼2012-05-02 10:14:57
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

6865804

荣誉版主 (文坛精英)

smallerpig

【答案】应助回帖

★ ★
感谢参与,应助指数 +1
136391618: 金币+2, 那两句话是我发现的值与 i j的关系 我是得应该写上注释的 2012-05-02 20:25:08
你的代码有点乱,
虽然只是测试代码,但是在别人看的时候你定义的任何变量最好都是有意义的或者注释过的,
我对C不太了解,,但是你在定义循环变量int i 和int j 的时候为什么要在循环外面定义呢?这样对程序的性能。。。这可能是习惯问题吧。
程序方面:
if(j>n) {y=j;y=2*n-y;}
               if(i>n) {x=i;x=2*n-x;}
这两句是判断什么的呢
从前我只是一只被人看不起的小菜鸟,经过这么多年的努力拼搏,奋发图强之后,我终于成功的成长为了一只老菜鸟!www.smallerpig.com
3楼2012-05-02 11:00:47
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

6865804

荣誉版主 (文坛精英)

smallerpig

引用回帖:
3楼: Originally posted by 6865804 at 2012-05-02 11:00:47:
你的代码有点乱,
虽然只是测试代码,但是在别人看的时候你定义的任何变量最好都是有意义的或者注释过的,
我对C不太了解,,但是你在定义循环变量int i 和int j 的时候为什么要在循环外面定义呢?这样对程序的 ...

我用C#来实现看看。。。
从前我只是一只被人看不起的小菜鸟,经过这么多年的努力拼搏,奋发图强之后,我终于成功的成长为了一只老菜鸟!www.smallerpig.com
4楼2012-05-02 11:01:52
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
最具人气热帖推荐 [查看全部] 作者 回/看 最后发表
[基金申请] 欢迎发来filecode的Mz6后的代码验证其规律 +8 医学老男孩 2026-08-13 15/750 2026-08-13 18:47 by JChen2024
[考博] 澳大利亚 Murdoch University 全奖博士招生(3个名额)地质化工冶金领域 +19 AI8RaGaPaSCR 2026-08-07 20/1000 2026-08-13 18:45 by xpoHTqHwPD8x
[基金申请] 静等基金结果 +8 gjjjzhong 2026-08-10 21/1050 2026-08-13 17:56 by 且听虎啸
[基金申请] FileCode能看出啥? +10 要乐观耀哥 2026-08-10 28/1400 2026-08-13 17:51 by 医学老男孩
[文学芳草园] 阿姨 +3 汪汪锅 2026-08-09 3/150 2026-08-13 16:56 by 410610288
[基金申请] filecode +14 documentary 2026-08-10 16/800 2026-08-13 16:39 by 润生71
[基金申请] 咱们一起用铁证分析2026国家社科基金中标与否 +3 启萌科技 2026-08-12 6/300 2026-08-13 15:34 by 高飞的梦想
[基金申请] 不应该看fileCode +7 且听虎啸 2026-08-12 9/450 2026-08-13 14:27 by flydreamws
[基金申请] Filecode 又变了,巨变 +3 WH3796 2026-08-12 4/200 2026-08-13 14:13 by 小木虫6752397
[基金申请] 我的国基提前知道中了,可是同事的操作让我实在接受不了,怎么会有这样的人 +9 家与远方 2026-08-10 14/700 2026-08-13 09:41 by 臭臭不臭01
[基金申请] 应该是93bebmhtak前后十一个字符比较关键 +22 Lanmanbaby 2026-08-09 36/1800 2026-08-12 22:50 by sdfapple719
[论文投稿] 职称评审,求友友推荐见刊最快的期刊 +4 工厂打螺丝 2026-08-08 4/200 2026-08-12 09:18 by hansi2025
[基金申请] 帮忙看看fileCode +7 wwncly 2026-08-10 13/650 2026-08-11 19:36 by 冰心玉壶晴
[基金申请] 什么时候出结果,有咨询渠道??? +3 Tide man 2026-08-11 3/150 2026-08-11 17:54 by kudofaye
[基金申请] 据悉今年马上要出结果了 +7 瞬息宇宙 2026-08-10 8/400 2026-08-10 12:42 by Vivilian
[基金申请] 这样的filecode谁见过 +11 布布和一二 2026-08-08 22/1100 2026-08-10 11:10 by wmfsnow
[基金申请] fileCode有新解读? +10 Tide man 2026-08-08 18/900 2026-08-09 12:55 by 仁砚薪传
[基金申请] 关于filecode,很负责任的告诉大家 +6 爱看书的可乐 2026-08-08 7/350 2026-08-08 22:13 by a_niu
[基金申请] 国基金的申报应该改成非等额制,评价高的钱多评价低的钱少,但是增加资助率 +7 a089 2026-08-07 7/350 2026-08-08 18:05 by gltch
[基金申请] 关于filecode +4 布布和一二 2026-08-07 7/350 2026-08-07 22:55 by zhanghaozhu
信息提示
请填处理意见