傾小靈 发表于 2020-11-5 11:07:11

c语言,大佬救命!

本帖最后由 傾小靈 于 2020-11-5 11:13 编辑

第十行的scanf无法正常生效,怎么解决?
第一次发帖,谢谢大佬们!

#include<stdio.h>
float main()
{
      float r,c,s;
      printf("请输入圆的半径r=");
      scanf("r=%f",&r);
      c=2*3.14*r;
      s=3.14*r*r;
      int a;
      scanf("a=%d",&a);
      printf("您要求啥?\n1;周长\n2:面积\n");
      if(a==1)
      {
                printf("周长=%f",c);
      }
      else if(a==2)
      {
                printf("面积=%f",s);
      }
      else
      {
                printf("你的输入有误");
      }
}

小甲鱼的铁粉 发表于 2020-11-5 11:13:09

1.最好还是使用int main()吧
2.scanf里面的a=r=去掉吧
#include<stdio.h>
int main()
{
      float r,c,s;
      printf("请输入圆的半径r=");
      scanf("%f",&r);
      c=2*3.14*r;
      s=3.14*r*r;
      int a;
      scanf("%d",&a);
      printf("您要求啥?\n1;周长\n2:面积\n");
      if(a==1)
      {
                printf("周长=%f",c);
      }
      else if(a==2)
      {
                printf("面积=%f",s);
      }
      else
      {
                printf("你的输入有误");
      }
}

BngThea 发表于 2020-11-5 11:13:55

scanf中不支持 r= 这样的写法,只能直接写 %f
要提示请在前面用printf来输出

傾小靈 发表于 2020-11-5 11:16:22

0MUHZSCLWEXZ_N)N(AE0JNC.png

傾小靈 发表于 2020-11-5 11:17:46

小甲鱼的铁粉 发表于 2020-11-5 11:13
1.最好还是使用int main()吧
2.scanf里面的a=r=去掉吧

谢谢大佬了,但去完了还是不行
scanf无法输入

傾小靈 发表于 2020-11-5 11:21:21

解决了!谢谢大佬们!
#include<stdio.h>
int main()
{
      float r,c,s;
      printf("请输入圆的半径r=");
      scanf("%f",&r);
      c=2*3.14*r;
      s=3.14*r*r;
      int a;
      printf("您要求啥?\n1;周长\n2:面积\n");
      scanf("%d",&a);
      if(a==1)
      {
                printf("周长=%f",c);
      }
      else if(a==2)
      {
                printf("面积=%f",s);
      }
      else
      {
                printf("你的输入有误");
      }
}

傾小靈 发表于 2020-11-5 11:21:51

BngThea 发表于 2020-11-5 11:13
scanf中不支持 r= 这样的写法,只能直接写 %f
要提示请在前面用printf来输出

谢谢大佬

害羞的新手 发表于 2020-11-5 12:20:20

语法错误吧
页: [1]
查看完整版本: c语言,大佬救命!