| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1364 人关注过本帖
标题:scanf运行被跳过
取消只看楼主 加入收藏
_c_c
Rank: 1
等 级:新手上路
帖 子:34
专家分:0
注 册:2014-3-26
结帖率:100%
收藏
 问题点数:0 回复次数:12 
scanf运行被跳过
int main()
{
    int x,y,r,x1,y1,temp1,temp2,j;
    double h;
    printf("请输入圆的坐标:如(x,y)\n");
    scanf("(%d,%d)",&x,&y);
    printf("请输入圆的半径:r");
    scanf("%d",&r);
    printf("请输入点的坐标:如(x1,y1)\n");
    scanf("(%d,%d)",&x1,&y1);
    if(x>x1) temp1=x-x1;
    else temp1==x1-x;
    if (y>y1) temp2=y-y1;
    else temp2=y1-y;
    j=temp1*temp1+temp2*temp2;
     h=sqrt(j);
    if(h>r) printf("点不在圆上!");
    else printf("点在圆上!");
     return 0;   
}
搜索更多相关主题的帖子: double return 
2014-03-26 23:54
_c_c
Rank: 1
等 级:新手上路
帖 子:34
专家分:0
注 册:2014-3-26
收藏
得分:0 
scanf("(%d,%d)",&x1,&y1);这个语句为什么在运行中被跳过!求老师们,大哥们指点!
2014-03-26 23:59
_c_c
Rank: 1
等 级:新手上路
帖 子:34
专家分:0
注 册:2014-3-26
收藏
得分:0 
不好意思,复制多个=号!,但这不影响上面读入结果吧?到这句scanf("(%d,%d)",&x1,&y1);也就是第三句读入,就被跳过了!
2014-03-27 00:23
_c_c
Rank: 1
等 级:新手上路
帖 子:34
专家分:0
注 册:2014-3-26
收藏
得分:0 
为什么而这样却可以读入呢?
################################
#include "stdio.h"
#include "math.h"
main()
{
   int x,y,x1,y1,r,temp1,temp2,j;
   double h;
   printf("input 圆的圆心坐标(X,Y),圆的半径R,点的坐标(X1,Y1)");
   scanf("(%d,%d),%d,(%d,d%)",&x,&y,&r,&x1,&y1);//这 句!
   if(x>x1) temp1=x-x1;
    else temp1=x1-x;
    if (y>y1) temp2=y-y1;
    else temp2=y1-y;
    j=temp1*temp1+temp2*temp2;
     h=sqrt(j);
    if(h>r) printf("点不在圆上!");
    else printf("点在圆上!");
     return 0;   
   
}
######################
2014-03-27 00:47
_c_c
Rank: 1
等 级:新手上路
帖 子:34
专家分:0
注 册:2014-3-26
收藏
得分:0 
运行时进入cmd是全屏化,不能截图啊!不知道怎么回事!
2014-03-27 08:20
_c_c
Rank: 1
等 级:新手上路
帖 子:34
专家分:0
注 册:2014-3-26
收藏
得分:0 
原代码是这样的!
#########################
#include "stdio.h"
#include "math.h"
int main()
{
    int x,y,r,x1,y1,temp1,temp2,j;
    double h;
    printf("请输入圆的坐标:如(x,y)\n");
    scanf("(%d,%d)",&x,&y);
    printf("请输入圆的半径:r\n");
    scanf("%d",&r);
    printf("请输入点的坐标:如(x1,y1)\n");
    scanf("(%d,%d)",&x1,&y1);
    if(x>x1) temp1=x-x1;
    else temp1=x1-x;
    if (y>y1) temp2=y-y1;
    else temp2=y1-y;
    j=temp1*temp1+temp2*temp2;
     h=sqrt(j);
    if(h>r) printf("点不在圆上!");
    else printf("点在圆上!");
     return 0;   
}
########################
用turbo c for windows运行时是进入进入什么天汇系统运行,相当无言!不能windows系统截图!
2014-03-27 08:27
_c_c
Rank: 1
等 级:新手上路
帖 子:34
专家分:0
注 册:2014-3-26
收藏
得分:0 
@LOVE云彩
运行时执行到 printf("请输入点的坐标:如(x1,y1)\n");就没让我输入数据,而是直接继续往下执行了到结尾了!
2014-03-27 08:32
_c_c
Rank: 1
等 级:新手上路
帖 子:34
专家分:0
注 册:2014-3-26
收藏
得分:0 
回复 7楼 蚕头燕尾
不错,在前面加上一句fflush(stdin);就能运行了!这是为什么出现这样的错误?
2014-03-27 12:22
_c_c
Rank: 1
等 级:新手上路
帖 子:34
专家分:0
注 册:2014-3-26
收藏
得分:0 
多谢,老师、大哥们!
2014-03-27 12:23
_c_c
Rank: 1
等 级:新手上路
帖 子:34
专家分:0
注 册:2014-3-26
收藏
得分:0 
造成这种情况是回车符的问题?
2014-03-27 12:35
快速回复:scanf运行被跳过
数据加载中...
 
   



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

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