一个C语言的简单问题:哪里少了分号
#include<stdio.h>constdoublePI=3.14159265;main(){intr=0;printf("Inputr\n");scanf("%d"...
#include <stdio.h>
const double PI=3.14159265;
main()
{
int r=0;
printf("Input r\n");
scanf("%d",&r);
double circle=2*PI*r;
double area=PI*r*r;
printf("If r=%d,then\n",r);
printf("circle=%f\narea=%f\n",circle,area);
}
结果有4个错
F:\C语言\c002.c(8) : error C2143: syntax error : missing ';' before 'type'
F:\C语言\c002.c(9) : error C2143: syntax error : missing ';' before 'type'
F:\C语言\c002.c(11) : error C2065: 'circle' : undeclared identifier
F:\C语言\c002.c(11) : error C2065: 'area' : undeclared identifier
Error executing cl.exe.
c002.obj - 4 error(s), 0 warning(s)
我分号也没少,变量也声明了,错在哪里?
求各位大侠帮帮小弟。
我用的是VC++6.0
把变量的声明和赋值分开也没用。
是不是编译器的问题? 展开
const double PI=3.14159265;
main()
{
int r=0;
printf("Input r\n");
scanf("%d",&r);
double circle=2*PI*r;
double area=PI*r*r;
printf("If r=%d,then\n",r);
printf("circle=%f\narea=%f\n",circle,area);
}
结果有4个错
F:\C语言\c002.c(8) : error C2143: syntax error : missing ';' before 'type'
F:\C语言\c002.c(9) : error C2143: syntax error : missing ';' before 'type'
F:\C语言\c002.c(11) : error C2065: 'circle' : undeclared identifier
F:\C语言\c002.c(11) : error C2065: 'area' : undeclared identifier
Error executing cl.exe.
c002.obj - 4 error(s), 0 warning(s)
我分号也没少,变量也声明了,错在哪里?
求各位大侠帮帮小弟。
我用的是VC++6.0
把变量的声明和赋值分开也没用。
是不是编译器的问题? 展开
6个回答
展开全部
这位朋友一定是初学
正确的写法
#include <stdio.h>
const double PI=3.14159265;
main()
{
int r=0;
double circle;
double area;
printf("Input r\n");
scanf("%d",&r);
circle=2*PI*r;
area=PI*r*r;
printf("If r=%d,then\n",r);
printf("circle=%f\narea=%f\n",circle,area);
}
错误在于:在c语言中,定义一定要放到最前面,而你放到中间了。
正确的写法
#include <stdio.h>
const double PI=3.14159265;
main()
{
int r=0;
double circle;
double area;
printf("Input r\n");
scanf("%d",&r);
circle=2*PI*r;
area=PI*r*r;
printf("If r=%d,then\n",r);
printf("circle=%f\narea=%f\n",circle,area);
}
错误在于:在c语言中,定义一定要放到最前面,而你放到中间了。
参考资料: hi.baidu.com/ybbmdf
展开全部
double circle=2*PI*r;
改成double circle;
circle=2*PI*r;
double area=PI*r*r; 也同理
改成double circle;
circle=2*PI*r;
double area=PI*r*r; 也同理
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
你试着把变量的声明和赋值分开
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
这种写法并不是一种好的风格,应该将变量的声明放在函数的开始部分,这个程序应做如下修改:
#include <stdio.h>
const double PI=3.14159265;
main()
{
int r=0;
double circle;
double area;
printf("Input r\n");
scanf("%d",&r);
circle=2*PI*r;
area=PI*r*r;
printf("If r=%d,then\n",r);
printf("circle=%f\narea=%f\n",circle,area);
}
#include <stdio.h>
const double PI=3.14159265;
main()
{
int r=0;
double circle;
double area;
printf("Input r\n");
scanf("%d",&r);
circle=2*PI*r;
area=PI*r*r;
printf("If r=%d,then\n",r);
printf("circle=%f\narea=%f\n",circle,area);
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
没有错啊..我运行了一下可以用的..
用c-free编译的
用c-free编译的
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
我用VC6.0编译完全通过啊 ,老兄你是用的TC么
理论上说定义的时候赋值是完全正确的 啊
实在不行 你就按上面的声明和赋值分开吧
理论上说定义的时候赋值是完全正确的 啊
实在不行 你就按上面的声明和赋值分开吧
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询