| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 272 人关注过本帖
标题:c语言的诡异输入问题
只看楼主 加入收藏
hmlde
Rank: 1
等 级:新手上路
帖 子:1
专家分:0
注 册:2009-6-4
结帖率:0
收藏
已结贴  问题点数:50 回复次数:3 
c语言的诡异输入问题
#include<stdio.h>
void main()
{  
    int i,j;
    char c;
  while(1)
  {
   
       { printf("shu ru c and i and j\n");
        scanf("%c,%d,%d",&c,&i,&j); }
        if(i==0&&j==0)
        break;
   
  }
  getch();
}
此程序在运行时,前两次输入还行,到第三次就出项多余的输出。
当输入的数据类型一致时,没问题。不完全一样时就出现上面描述的问题,怎样才能既能输入不同类型的数据,而且又不出现问题呢?
请教各位高手,这个问题很急。
搜索更多相关主题的帖子: 循环输入问题 
2009-07-14 17:01
mfh
Rank: 6Rank: 6
等 级:侠之大者
帖 子:179
专家分:411
注 册:2009-5-31
收藏
得分:50 
#include<stdio.h>

void main()
{
    int i,j;
    char c;
    while(1)
    {
    printf("shu ru c and i and j\n");
    scanf("%c,%d,%d",&c,&i,&j);
    fflush(stdin);
    if(i==0&&j==0)
        break;
   }
  printf("proc is ok\n");
  getch();

}

input_output.png (1.03 KB)
图片附件: 游客没有浏览图片的权限,请 登录注册
2009-07-14 17:52
mfh
Rank: 6Rank: 6
等 级:侠之大者
帖 子:179
专家分:411
注 册:2009-5-31
收藏
得分:0 
只要在你的输入时注意一下!!!那个所谓的空白符!

也可以写成这样!!
#include<stdio.h>

void main()
{
    int i,j;
    char c;
   while(1)
   {
    printf("shu ru c and i and j\n");
    scanf("%c%d%d",&c,&i,&j);//注意这里
    fflush(stdin);
    if(i==0&&j==0)
        break;
  }
  printf("proc is ok\n");
  getch();
}
2009-07-14 17:55
mfh
Rank: 6Rank: 6
等 级:侠之大者
帖 子:179
专家分:411
注 册:2009-5-31
收藏
得分:0 
为什么又不能上传图了,那只能靠自己去调试去了,这次只以空格符隔开就可以了!
2009-07-14 17:58
快速回复:c语言的诡异输入问题
数据加载中...
 
   



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

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