| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 562 人关注过本帖
标题:今天刚学到函数,也是刚学完。但有个功能我不知道如何实现。(老师也没讲)
只看楼主 加入收藏
JackyZhang
Rank: 2
等 级:论坛游民
帖 子:82
专家分:29
注 册:2010-7-12
结帖率:60%
收藏
已结贴  问题点数:10 回复次数:7 
今天刚学到函数,也是刚学完。但有个功能我不知道如何实现。(老师也没讲)
请看下面的代码(Win TC)
程序代码:
float mj(int r)
{
    float s;
    s=3.14*r*r;
    return s;
}
float zc(int r)
{

 float l;

 l=2*3.14*r;

 return l;

 }

main()
{
    int r;
    float s,l;
    scanf("%d",&r);
    s=mj(r);
    l=zc(r);
    printf("s is %f\nl is %f",s,l);
    getch();

}
此代码实现了什么大家都知道
但我想知道如何实现这样的功能:如何可以一直输入运算下去;此代码只能输入一次,我输个半径值然后执行,得到结果。 就没有了 。但能我还想,接着算,然后我再输入一个半径值,它就会返回到代码页,难道我要重新,运行?不可以一直就在 运行结果页一直输入下去吗
如何实现这个功能?
  我想一定要你用到for 或 while 吧 ,但我不知道要是用for 吧,次数是确定的,无法一直输入下去。要是用while 吧 也不知道咋弄啊!  这一定要……
   我知道这对于你们很简单但对于我就不同了。
最好把代码写好
  先谢过啦!!!!!!
搜索更多相关主题的帖子: 函数 老师 
2010-07-14 12:22
do8do8do8
Rank: 10Rank: 10Rank: 10
来 自:沙滩
等 级:贵宾
威 望:17
帖 子:366
专家分:1845
注 册:2010-7-2
收藏
得分:8 
do--while用法
main()
{
    int r;
    float s,l;
   do{
     printf(" input 0 to exit\n");/*输入0就退出循环*/
    scanf("%d",&r);
    s=mj(r);
    l=zc(r);
    printf("s is %f\nl is %f",s,l);
     }while(r!=0);
    getch();

}
while用法
main()
{
    int r;
    float s,l;
   while(1){
     printf(" input 0 to exit\n");/*输入0就退出循环*/
    scanf("%d",&r);
    if(r==0) break;
    s=mj(r);
    l=zc(r);
    printf("s is %f\nl is %f",s,l);
     }   
 getch();

}
for用法
main()
{
    int r=1;
    float s,l;
   for(;r!=0;){
     printf(" input 0 to exit\n");/*输入0就退出循环*/
    scanf("%d",&r);
        s=mj(r);
    l=zc(r);
    printf("s is %f\nl is %f",s,l);
     }   
 getch();

}
goto用法

here:
    scanf("%d",&r);
    ...............
    if(r!=0)
     goto here;
    ..........
   




[ 本帖最后由 do8do8do8 于 2010-7-14 12:43 编辑 ]

学C语言从底层开始,学编程从问题开始,一日学会C!!!
2010-07-14 12:29
JackyZhang
Rank: 2
等 级:论坛游民
帖 子:82
专家分:29
注 册:2010-7-12
收藏
得分:0 
do是什么 ,
看样子我还没学到。
先记着啦以后学到了就知道了

初生牛犊,望多多照顾!
2010-07-14 12:35
巔峰
Rank: 2
等 级:论坛游民
帖 子:31
专家分:30
注 册:2010-7-13
收藏
得分:0 
这样:
while(1==scanf("%f",&r)){
……
……;
}
2010-07-14 12:58
巔峰
Rank: 2
等 级:论坛游民
帖 子:31
专家分:30
注 册:2010-7-13
收藏
得分:2 
main()
{
    int r;
    float s,l;
    while(1==scanf("%d",&r)){
    s=mj(r);
    l=zc(r);
    printf("s is %f\nl is %f",s,l);
    getch();
}
}

用C++的话getch()就不需要的了。
2010-07-14 13:00
巔峰
Rank: 2
等 级:论坛游民
帖 子:31
专家分:30
注 册:2010-7-13
收藏
得分:0 
想退出的时候就输入非int float……数字类型的东东,字母什么的都可以。这样就可以退出了
2010-07-14 13:04
JackyZhang
Rank: 2
等 级:论坛游民
帖 子:82
专家分:29
注 册:2010-7-12
收藏
得分:0 
回复 2楼 do8do8do8
高手,能加你QQ吗
我的QQ 814078936

初生牛犊,望多多照顾!
2010-07-14 13:26
larry_lau
Rank: 1
等 级:新手上路
帖 子:6
专家分:0
注 册:2010-7-9
收藏
得分:0 
2楼的很强悍。。顶一个
2010-07-15 15:25
快速回复:今天刚学到函数,也是刚学完。但有个功能我不知道如何实现。(老师也没 ...
数据加载中...
 
   



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

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