注册 登录
编程论坛 C++教室

这个程序哪错了

sz194391 发布于 2013-04-07 22:46, 544 次点击
#include<stdio.h>
int main()
{
    int a,k;
    scanf("%d %d",&a,&k);
    double ip,l;
    ip=3.1415926;
        if(k==1)
            printf("%.2f\n",ip*a*a);
        else if(k==2)
            printf("%.2f\n",ip*2*a);
        else if(k==3)
            printf("%.2f %.2f\n",ip*a*a,ip*2*a);   
        return 0;
}
8 回复
#2
peach54602013-04-08 08:43
编译器说什么?
#3
qunxingw2013-04-08 20:37
估计此函数不会用scanf("%d %d",&a,&k);
另学习结帖对你下次提问有好处
#4
oxeno2013-04-08 20:37
编译通过...功能正常...
这里不是c++嘛....这不是c么...
#5
逆水寒刘2013-04-08 22:27
正常啊,可以运行
include<stdio.h>
int main()
{
    int a,k;
    scanf("%d %d",&a,&k);
    double ip;//不用l就不要声明,否则会给提醒。
    ip=3.1415926;
        if(k==1)
            printf("%.2f\n",ip*a*a);
        else if(k==2)
            printf("%.2f\n",ip*2*a);
        else if(k==3)
            printf("%.2f %.2f\n",ip*a*a,ip*2*a);   
        return 0;
}
#6
邓士林2013-04-08 23:57
逻辑语法也没什么错误,可以的啊!你在你的编译器上有什么问题么
#7
一路看天2013-04-10 20:09
试试其他编译器吧,不同的编译器结果有不同的
#8
马小柯2013-04-10 21:16
没有错啊  可以运行的
#include<stdio.h>
 int main()
 {
     int a,k;
     scanf("%d %d",&a,&k);
     double ip,l;
     ip=3.1415926;
         if(k==1)
             printf("%.2f\n",ip*a*a);
         else if(k==2)
             printf("%.2f\n",ip*2*a);
         else if(k==3)
             printf("%.2f %.2f\n",ip*a*a,ip*2*a);   
        return 0;
 }
#9
apull2013-04-10 22:35
回复 楼主 sz194391
程序没错。
老版本的编译器需要在程序开头定义变量。
把定义放到一起了试试。
int a,k;
double ip,l;
1