标题:scanf的返回值的问题验证???
只看楼主
雾雨淼淼
Rank: 2
来 自:甘肃金昌
等 级:论坛游民
帖 子:85
专家分:89
注 册:2010-8-17
结帖率:100%
已结贴  问题点数:20 回复次数:5 
scanf的返回值的问题验证???
# include <stdio.h>
void main()
{
  int m;
  char c;
  float f;
  printf("请输入整形数据\n");
  if(scanf("%d",&m)==1)
      printf("scanf函数在输入整形值返回1\n");
  printf("请输入字符型数据\n");
  m=scanf("%c",&c);
  printf("输入字符型的返回值为%d\n",m);
  printf("请输入浮点型数据\n");
  m=scanf("%f",&f);
  printf("输入浮点型的返回值为%d\n",m);
}
验证scanf的返回值的问题,可是运行不通,请各位高手给我指点一下,不胜感激
搜索更多相关主题的帖子: scanf 返回值 验证 
2010-11-16 23:30
cacker
该用户已被删除
得分:2 
提示: 作者被禁止或删除 内容自动屏蔽
2010-11-16 23:39
lansong
Rank: 4
等 级:业余侠客
帖 子:79
专家分:226
注 册:2009-6-11
得分:5 
#include<stdio.h>
void main()
{
    int m;
    char c;
    float f;
    printf("请输入整形数据\n");
    if(scanf("%d",&m)==1)
        printf("scanf函数在输入整形值返回1\n");
    getchar();

    printf("请输入字符型数据\n");
    m=scanf("%c",&c);
    printf("输入字符型的返回值为%d\n",m);
    getchar();

    printf("请输入浮点型数据\n");
    m = scanf("%f",&f);
    printf("输入浮点型的返回值为%d\n",m);


}
2010-11-16 23:45
lansong
Rank: 4
等 级:业余侠客
帖 子:79
专家分:226
注 册:2009-6-11
得分:3 
vc6.0: scanf("%d%d",&a,&b);返回2
2010-11-16 23:52
韭菜
Rank: 2
等 级:论坛游民
帖 子:51
专家分:94
注 册:2010-9-26
得分:10 
scanf()的返回值是成功赋值的变量数量, 发生错误时返回EOF.

在本程序中 多个scanf之间出现了干扰: 输入一个整数或者float数,会影响到下一个字符的输入,影响效果为该字符没有办法输入,直接被跳过;
测试平台:VC6.0
程序代码:
#include <stdio.h>
void main()
{
  int m;    int x;
  char c;
  float f;
x=scanf("%f",&f);
    printf("%f  返回2 %d \n",f,x);
x=scanf("%c",&c);
    printf("%c  返回3 %d\n",c,x);
printf("\n\n测试二\n");
x=scanf("%d",&m);
    printf("%d  返回4 %d\n",m,x);
x=scanf("%c",&c);
    printf("%c  返回5 %d\n",c,x);
}
测试结果为:
4.7
4.700000  返回2 1

  返回3 1


测试二
5
5  返回4 1

  返回5 1
Press any key to continue
2010-11-17 09:57
雾雨淼淼
Rank: 2
来 自:甘肃金昌
等 级:论坛游民
帖 子:85
专家分:89
注 册:2010-8-17
得分:0 
明白了,非常感谢诸位高手
2010-11-17 22:34



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-325978-1-1.html




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

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