firewater 发表于 2014-8-5 11:37:19

看下这个输入数据的代码

本帖最后由 firewater 于 2014-8-5 12:50 编辑

输入第二行时总是提示错误#include "stdio.h"
void main ()
{
      int a,b;
      float x,y;
      char c1,c2;
      scanf("a=%d b=%d",&a,&b);
      scanf(" %f %e",&x,&y);
      scanf(" %c %c",&c1,&c2);
}

牡丹花下死做鬼 发表于 2014-8-5 11:53:22

scanf() 有%e??我记得只有printf()才可以的吧

firewater 发表于 2014-8-5 12:04:46

牡丹花下死做鬼 发表于 2014-8-5 11:53
scanf() 有%e??我记得只有printf()才可以的吧

我看的是谭浩强那本书那上面写的是有,不过就算把%e,改为%f也没用。你试下

牡丹花下死做鬼 发表于 2014-8-5 12:21:45

你没有输出
#include "stdio.h"
void main ()
{
        int a,b;
        float x,y;
        char c1,c2;
        scanf("a=%d b=%d",&a,&b);
        scanf(" %f %f",&x,&y);
        printf("%f %f",x,y);
        scanf(" %c %c",&c1,&c2);
}

firewater 发表于 2014-8-5 12:40:36

jianyuling00 发表于 2014-8-5 12:21
runtime error运行时错误,不是语法错误

你看下进程是不是被占用了,比如上次打开的未关闭之类的

不是

firewater 发表于 2014-8-5 12:44:04

牡丹花下死做鬼 发表于 2014-8-5 12:21
你没有输出

好吧,我错了,犯了个低级错误

firewater 发表于 2014-8-5 12:45:25

牡丹花下死做鬼 发表于 2014-8-5 12:21
你没有输出

不过有输入一定要有输出吗?

牡丹花下死做鬼 发表于 2014-8-5 12:48:32

firewater 发表于 2014-8-5 12:45
不过有输入一定要有输出吗?

算法的要求必须有输出

firewater 发表于 2014-8-5 12:49:19

牡丹花下死做鬼 发表于 2014-8-5 12:48
算法的要求必须有输出

LoveYang 发表于 2014-8-5 16:02:10

按我的输入就没问题了,你没注意格式化输入

没悬赏...好吧..希望对你有帮助.

oggplay 发表于 2014-8-5 16:16:55


   #include <stdio.h>
   int main ()
    {
            int a,b;
            float x,y;
            char c1,c2;
            
            scanf("%d %d",&a,&b);
            rewind(stdin);
            scanf("%f %f",&x,&y);
            rewind(stdin);
            scanf("%c %c",&c1,&c2);
    }


firewater 发表于 2014-8-5 16:36:52

LoveYang 发表于 2014-8-5 16:02
按我的输入就没问题了,你没注意格式化输入

没悬赏...好吧..希望对你有帮助.

en,我试了下,好像第二个没空格也行,主要的问题是没有输出。你试试不加空格,看在你的你的编译器上能不能运行

LoveYang 发表于 2014-8-5 16:45:39

firewater 发表于 2014-8-5 16:36
en,我试了下,好像第二个没空格也行,主要的问题是没有输出。你试试不加空格,看在你的你的编译器上能不 ...

可以,但是数据x,y得到的数就错了

firewater 发表于 2014-8-5 19:57:32

本帖最后由 firewater 于 2014-8-5 21:09 编辑

LoveYang 发表于 2014-8-5 16:45
可以,但是数据x,y得到的数就错了
结果应该不变,我也不知为什么,但我在VC6.0上运行的是一样的,另外,如果将程序第九行改为scanf("%c %c",&c1,&c2);第一个%c前的空格去掉,就得不到相应结果
页: [1]
查看完整版本: 看下这个输入数据的代码