| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 4944 人关注过本帖
标题:用for语句代替while语句实现循环
只看楼主 加入收藏
胡文涛
Rank: 1
来 自:北京 朝阳
等 级:新手上路
帖 子:29
专家分:0
注 册:2016-6-30
结帖率:87.5%
收藏
已结贴  问题点数:1 回复次数:6 
用for语句代替while语句实现循环
请大家看看这个程序有什么问题:
#include<stdio.h>
int main()
{
    int n;
    for(;n>40;)
    {
        scanf("%d",&n);
    }
    printf("%d",n);
    return 0;
}
我想用这个程序代替while语句,但循环条件不是传统意义上的计数控制,而是取决于变量n本身。可是运行结果与预期不符,不知问题出在哪。
搜索更多相关主题的帖子: return 
2016-07-02 16:04
吹水佬
Rank: 16Rank: 16Rank: 16Rank: 16
等 级:版主
威 望:451
帖 子:10609
专家分:43210
注 册:2014-5-20
收藏
得分:0 
看看用 while 写的代码
2016-07-02 16:22
低调低调
Rank: 3Rank: 3
来 自:四川省成都市
等 级:论坛游侠
威 望:1
帖 子:66
专家分:103
注 册:2016-6-23
收藏
得分:0 
你的for语句中的参数适用出现了问题,其次你这样循环输入的最后在输出n的值的话,最后输出的只是你最后一次输入的n的值,你如果想循环输入然后输出的话不介意你这样写!我有两种方案,你自己看看,希望能对你有所帮助!
#include<stdio.h>
int main()
{
    int n;
    for(int i = 0;i < 40;i++)
    {
        scanf("%d",&n);
        printf("%d",n)
    }
    return 0;
}
这样的话就是你会循环输入四十次n的值然后输出,是每次输入之后都会输出!
#include<stdio.h>
int main()
{
    int n,m;
    scanf("%d",&n);
    for(int i = 0;i < n;i++)
    {
        scanf("%d",&m);
    }
    for(int i = 0;i < n;i++)
    {
        printf("%d",m);
    }
    return 0;
}
这样写的话就是你需要自己输入需要循环输入与输出的次数n,然后循环输入m的值在遍历输出m的值;第二种我也是刚学习,不知道对错,希望各位大大不要喷我!若是写错了,还请给位大大多多包涵!
2016-07-02 16:23
jklqwe111
Rank: 9Rank: 9Rank: 9
等 级:贵宾
威 望:35
帖 子:336
专家分:1135
注 册:2014-4-13
收藏
得分:1 
for(;n>40;)
    {
        scanf("%d",&n);
    }

 while(n>40)
    {
        scanf("%d",&n);
    }
等效
代换一下
#include<stdio.h>
int main()
{
    int n;
     while(n>40)
    {
        scanf("%d",&n);
    }
    printf("%d",n);
    return 0;
}
这个程序也是问题很大,找一下吧
2016-07-02 16:34
胡文涛
Rank: 1
来 自:北京 朝阳
等 级:新手上路
帖 子:29
专家分:0
注 册:2016-6-30
收藏
得分:0 
回复 4楼 jklqwe111
n没有初始化,可在循环体前给n赋初值,或者改用do{}while()语句。
2016-07-02 18:57
胡文涛
Rank: 1
来 自:北京 朝阳
等 级:新手上路
帖 子:29
专家分:0
注 册:2016-6-30
收藏
得分:0 
回复 4楼 jklqwe111
明白了!我的代码里没有给n赋初值,因此无法判断其是否满足循环条件。最后程序运行的结果是绕过了循环体而直接给n随机分配了一个值。
谢谢你的提示!
2016-07-02 19:01
胡文涛
Rank: 1
来 自:北京 朝阳
等 级:新手上路
帖 子:29
专家分:0
注 册:2016-6-30
收藏
得分:0 
回复 3楼 低调低调
谢谢!
2016-07-02 19:02
快速回复:用for语句代替while语句实现循环
数据加载中...
 
   



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

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