免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 4166 | 回复: 4
打印 上一主题 下一主题

[C] 一个很值得关注的问题:(C语言, 打印数字表格) [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2004-04-22 22:03 |只看该作者 |倒序浏览
各位我想打印一个数字表格,下面是我写的代码.
/* printf number tabel */

#include<stdio.h>;

main ()
{
         int counter;

          for (counter = 3; counter <= 15; counter += 3)
         {
                printf ("%d\t%d\t%d\t%d\n", counter, counter += 2,
                counter += 4, counter += 6);

          }

           return 0;

}

这个程序老是打印不出来.不知道错在那儿拉,还情各位前辈多多指教.
我想打印的数字表格是这样的.
3         5          7           9
6         8          10         12
9         11        13         15
12       14        16         18
15       17        19         21

我用上面的格式打印1~1000之间的数字表格没有一点问题.
/* printf numbers table */

#include<stdio.h>;

main ()

{
         int counter;
      
         for (coutner = 1; counter <= 10; ++counter)
         {
               printf ("%d\t%d\t%d\t%d\n", counter, counter*10,
               counter*100, counter*1000);
          }
         
           return 0;

}
上面的程序可以完整的打印出.
1             10              100           1000
2             20              200           2000
3             30              300           3000
4             40              400           4000
5             50              500            5000
6             60               600           6000
..........

9             90                900           9000
10            100            1000          10000

为什么打印进步值为3的数字表格就是出问题拉.请哥哥姐姐们指教.
小弟再此先拜谢拉.

论坛徽章:
0
2 [报告]
发表于 2004-04-23 08:27 |只看该作者

一个很值得关注的问题:(C语言, 打印数字表格)

printf += 有问题============================================
#include<stdio.h>;

main ()
{
        int counter;

        for (counter = 3; counter <= 15; counter += 3)
        {
                printf ("%.d\t%.d\t%.d\t%.d\n", counter, counter /*+=*/+ 2,
                counter /*+=*/+ 4, counter /*+=*/+ 6);
        }

        return 0;
}

论坛徽章:
0
3 [报告]
发表于 2004-04-23 09:00 |只看该作者

一个很值得关注的问题:(C语言, 打印数字表格)

楼上的写法好晕

论坛徽章:
0
4 [报告]
发表于 2004-04-23 09:22 |只看该作者

一个很值得关注的问题:(C语言, 打印数字表格)

关键是你使用了+=,而
当counter = 3,你执行counter += 2之后,counter的值被改变成5了,但是你这个counter却还要在for循环中继续作为计数器使用,所以问题出现了。而你的另外一个程序是counter*10,这个算式并不会改变counter本身的值,计算之后的到的结果仅仅是作为传递给printf的参数,所以程序运行正确。

另外,楼上的楼上的程序这样写,看起来不觉得累吗?愚以为程序是用来运行的,不是用来消灭脑细胞的,冒犯之处,还请见谅。

论坛徽章:
0
5 [报告]
发表于 2004-04-23 12:34 |只看该作者

一个很值得关注的问题:(C语言, 打印数字表格)

楼上几位大哥的教诲,小弟受益非浅.

再次感谢
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP