标题:输出1到9的运算口诀,怎么加上while语句成死循环了?如果要美观应该怎么改? ...
只看楼主
zcl283168875
Rank: 1
等 级:新手上路
帖 子:3
专家分:0
注 册:2009-5-7
 问题点数:0 回复次数:16 
输出1到9的运算口诀,怎么加上while语句成死循环了?如果要美观应该怎么改?谢谢
#include"stdio.h"
main() void{
    int i,j,s;
    for(i=1;i<=9;i++)
        for(j=i;j<=9;j++)
        {s=i*j;
        printf("%d*%d=%-3d",i,j,s);
        while(j=9)
            printf("\n");
        }   
}
搜索更多相关主题的帖子: 输出 运算 口诀 语句 
2009-09-22 13:04
m456m654
Rank: 11Rank: 11Rank: 11Rank: 11
等 级:小飞侠
威 望:3
帖 子:783
专家分:2806
注 册:2009-9-17
得分:0 
我认为你用while用的不对,你的意思是当j=9的时候换行,但是你写成while(j=9),就成了判断循环的语句了,括号里j=9为真,所以一直循环下去。可以改为if语句。如下.
#include "stdio.h"
void main()
{
int i,j,s;
    for(i=1;i<=9;i++)
        for(j=i;j<=9;j++)
        {s=i*j;
        printf("%d*%d=%-3d",i,j,s);
        if(j==9)
            printf("\n");
        }     
}
2009-09-22 13:18
小J
Rank: 8Rank: 8
等 级:等待验证会员
威 望:1
帖 子:282
专家分:704
注 册:2009-6-18
得分:0 
#include"stdio.h"
main(){
    int i,j,s;
    for(i=1;i<=9;i++){     
        for(j=1;j<=i;j++){
        s=i*j;
        printf("%d*%d=%-3d",j,i,s);
            }
    printf("\n");
    }
}
2009-09-22 13:23
a123456v156
Rank: 2
等 级:论坛游民
帖 子:4
专家分:12
注 册:2009-9-21
得分:0 
如二楼所言,while()语句使用错误,可以改为if语句,循环结构中if、while或for循环很多时候是可以表达出相同的意思的,这是我改的程序,如下:
#include"stdio.h"
void main(){
    int i,j,s;
    for(i=1;i<=9;i++)
        for(j=i;j<=9;j++)
        {
            s=i*j;
            printf("%d*%d=%3d",i,j,s);
            if(j==9)
               printf("\n");
        }     
}
2009-09-22 14:31
ttdw
Rank: 2
等 级:论坛游民
帖 子:10
专家分:47
注 册:2009-9-16
得分:0 
程序代码:
#include<stdio.h> 
void main() 
{ 
    int i,j,k; 
     
    for(i=1;i<=9;i++) 
    { 
        for(j=1;j<=i;j++) 
        { 
            k=i*j; 
            printf("%d * %d =%3d ",j,i,k); 
            if(j==i) 
            { 
                printf("\n"); 
            } 
        } 
    } 
 }

C 入门中...
2009-09-22 15:32
shuijiashui8
Rank: 2
等 级:论坛游民
帖 子:21
专家分:44
注 册:2009-9-15
得分:0 
记住 不能用循环语句代替条件语句,呵呵
2009-09-22 17:12
wangcheng911
Rank: 2
等 级:论坛游民
帖 子:59
专家分:45
注 册:2009-9-23
得分:0 
#include "stdio.h"  
#include<conio.h>
main()  
{  
int i,j,s;  
    for(i=9;i>=1;i--)  
        {for(j=i;j<=9;j++)  
         
        printf("%d*%d=%-3d",i,j,i*j);  
 
            printf("\n");  
        } getch();     
}

结果美观!
2009-09-23 22:39
wangcheng911
Rank: 2
等 级:论坛游民
帖 子:59
专家分:45
注 册:2009-9-23
得分:0 
根本不用while啊
2009-09-23 22:39
choco1024
Rank: 3Rank: 3
等 级:论坛游侠
威 望:1
帖 子:183
专家分:140
注 册:2008-8-31
得分:0 
换行放到外重循环不就行了,还用个if判断,会不会多余啊?
2009-09-23 22:52
pgy
Rank: 11Rank: 11Rank: 11Rank: 11
来 自:C
等 级:小飞侠
威 望:8
帖 子:1248
专家分:2329
注 册:2009-9-23
得分:0 
除了楼主,大家都对,哈哈。要用条件语句if判断。
不知道楼主怎么理解的美观不美观。
只要控制好printf("\n");是怎么输出的就可以了。

我可好玩啦...不信你玩玩^_^
2009-09-24 00:16



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-286441-1-1.html




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

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