| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1277 人关注过本帖
标题:我是菜鸟,对if语句的用法不是很好 麻烦大家修改一下此程序,让其输出更人性 ...
只看楼主 加入收藏
‰ミ不乖ゅ
Rank: 2
等 级:论坛游民
帖 子:9
专家分:12
注 册:2010-4-2
结帖率:100%
收藏
已结贴  问题点数:20 回复次数:11 
我是菜鸟,对if语句的用法不是很好 麻烦大家修改一下此程序,让其输出更人性化一点
# include<stdio.h>
void main()
{
    int i;
    printf("请输入i: ");
    scanf("%d",&i);
    if(i%3==0)
    printf("能被3整除\n");
    if(i%5==0)
    printf("能被5整除\n");
    if(i%7==0)
    printf("能被7整除\n");
    if(i%3==0 && i%5==0)
    printf("能同时被3和5整除\n");
    if(i%3==0 && i%7==0)
    printf("能同时被3和7整除\n");
    if(i%5==0 && i%7==0)
    printf("能被5和7整除\n");
    if(i%3==0 && i%5==0 && i%7==0)
    printf("能同时被3,5和7整除\n");
    else if(i%3!=0&&i%5!=0&&i%7!=0)
    printf("不能被3,5,7任一个数整除\n");
}
搜索更多相关主题的帖子: 语句 用法 人性化 
2010-04-21 12:04
hanzhenddd
Rank: 5Rank: 5
等 级:职业侠客
帖 子:90
专家分:361
注 册:2010-3-4
收藏
得分:0 
用 switch case 写比较好!
2010-04-21 12:31
b001lcp
Rank: 3Rank: 3
等 级:论坛游侠
帖 子:45
专家分:157
注 册:2010-3-17
收藏
得分:5 
程序代码:
# include<stdio.h>
void main()
{
    int i;
    printf("请输入i: ");
    scanf("%d",&i);
    if (i%3==0)
        printf("能被3整除\n");
    if (i%5==0)
        printf("能被5整除\n");
    if (i%7==0)
        printf("能被7整除\n");
    if (i%3!=0&&i%5!=0&&i%7!=0)
        printf("不能被3,5,7任一个数整除\n");
}
其实可以把能被多个整除的计算去掉,如上即可。
当输入的整数能被3整除时进入第一个if,还能被5整除时,也会进入第二个if,还能被7整除时也能进入7整除
执行结果中都会打印了能被谁整除
2010-04-21 12:49
‰ミ不乖ゅ
Rank: 2
等 级:论坛游民
帖 子:9
专家分:12
注 册:2010-4-2
收藏
得分:0 
回复 3楼 b001lcp
嗯 这个我知道 但是那样的话与题目要求不符

编程实现:输入一个整数,判断它能否被3,5,7整除,并输出以下信息之一:
            ①能同时被3,5,7整除
            ②能被其中两数(要指出是哪两个数)整除
            ③能被其中一个数(要指出是哪一个数)整除
            ④不能被3,5,7任一个数整除
2010-04-21 12:56
lddwh
Rank: 2
等 级:论坛游民
帖 子:34
专家分:79
注 册:2010-4-7
收藏
得分:10 
#include<stdio.h>
void main()
{
    int n;
    printf("请输入一个整数:");
    scanf("%d",&n);
    if(n%(3*5*7)==0)
    {
        printf("此数能同时被3,5,7整除\n");
        return;
    }
    if(n%(3*5)==0)
    {
        printf("此数能同时被3,5整除\n");
        return;
    }
    if(n%(3*7)==0)
    {
        printf("此数能同时被3,7整除\n");
        return;
    }
    if(n%(5*7)==0)
    {
        printf("此数能同时被5,7整除\n");
        return;
    }
    if(n%(3)==0)
    {
        printf("此数能被3整除\n");
        return;
    }
    if(n%(5)==0)
    {
        printf("此数能被5整除\n");
        return;
    }
    if(n%(7)==0)
    {
        printf("此数能被7整除\n");
        return;
    }
    if(n%(3*5*7)!=0)
    {
        printf("此数不能被3,5,7整除\n");
        return;
    }
}
2010-04-22 22:55
lddwh
Rank: 2
等 级:论坛游民
帖 子:34
专家分:79
注 册:2010-4-7
收藏
得分:5 
#include<stdio.h>
void main()
{
    int n,i,a[7]={3*5*7,3*5,3*7,5*7,3,5,7};
    char str[7][6]={"3,5,7","3,5","3,7","5,7","3","5","7"};
    printf("请输入一个整数:");
    scanf("%d",&n);
    for(i=0;i<7;i++)
        if(n%a[i]==0)
        {
            printf("此数能被%s整除\n",str[i]);
            break;
        }
    if(i==7)
        printf("此数不能被3,5,7整除\n");   
}


这是在上边的程序上改进的,希望对你有所帮助,
收到的鲜花
  • ‰ミ不乖ゅ2010-04-23 20:09 送鲜花  3朵   附言:我很赞同
2010-04-22 22:58
lddwh
Rank: 2
等 级:论坛游民
帖 子:34
专家分:79
注 册:2010-4-7
收藏
得分:0 
这里用了数据结构的一点点知识,把集合转换成线性表
2010-04-22 22:59
Spygg
Rank: 5Rank: 5
等 级:职业侠客
帖 子:135
专家分:394
注 册:2007-5-20
收藏
得分:0 
回复 3楼 b001lcp
这个好点
2010-04-22 23:02
冥卫
Rank: 8Rank: 8
来 自:深山老林
等 级:蝙蝠侠
帖 子:280
专家分:772
注 册:2010-4-20
收藏
得分:0 
五楼的清晰,明了
2010-04-23 11:16
‰ミ不乖ゅ
Rank: 2
等 级:论坛游民
帖 子:9
专家分:12
注 册:2010-4-2
收藏
得分:0 
回复 5楼 lddwh
8错8错,不过我用的是C-free,这个我运行要把return改成return(n)才能输出结果。谢谢啦。下一个是数组吧,呵呵
2010-04-23 20:11
快速回复:我是菜鸟,对if语句的用法不是很好 麻烦大家修改一下此程序,让其输出 ...
数据加载中...
 
   



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

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