哪位C语言编程大神能帮我看看我这个C语言编程错哪了?跪求在线等

#define PI 3.1415926
main()
{ int x;
printf("请输入x代号,代号:圆形1,长方形2,三角形3\n");
scanf("%d",&x);
if (x=1)
float r,s1;
printf("请输入圆的半径\n");
scanf("%f",&r);
s1=PI*r*r;
printf("%f\n",s1);
else if(x=2)
float a,b,s2;
printf("请输入长方形的长,宽\n");
scanf("%f,%f",&a,&b);
s2=a*b;
printf("%f\n",s2);
else if(x=3)
float d,h,s3;
printf("请输入三角形的底,高\n");
scanf("%f,%f",&d,&h);
s3=1/2*d*h;
printf("%f\n",s3);
}

第1个回答  2012-09-05
在非单条执行语句的情况下, if后面的语句要加上{}
改成如下.
而且, 像你的这样情况, 把if else换成switch case会比较好

#include "stdio.h"
#define PI 3.1415926
int main()
{
int x;
printf("请输入x代号,代号:圆形1,长方形2,三角形3\n");
scanf("%d",&x);
if (x=1)
{
float r,s1;
printf("请输入圆的半径\n");
scanf("%f",&r);
s1=PI*r*r;
printf("%f\n",s1);
}
else if(x=2)
{
float a,b,s2;
printf("请输入长方形的长,宽\n");
scanf("%f,%f",&a,&b);
s2=a*b;
printf("%f\n",s2);
}
else if(x=3)
{
float d,h,s3;
printf("请输入三角形的底,高\n");
scanf("%f,%f",&d,&h);
s3=1/2*d*h;
printf("%f\n",s3);
}
return 0;
}
第2个回答  2012-09-05
#define PI 3.1415926
#include<stdio.h>
void main()
{ int x;
printf("请输入x代号,代号:圆形1,长方形2,三角形3\n");
scanf("%d",&x);
if (x=1)
{
float r,s1;
printf("请输入圆的半径\n");
scanf("%f",&r);
s1=PI*r*r;
printf("%f\n",s1);
}
else if(x=2)
{
float a,b,s2;
printf("请输入长方形的长,宽\n");
scanf("%f,%f",&a,&b);
s2=a*b;
printf("%f\n",s2);
}
else if(x=3)
{
float d,h,s3;
printf("请输入三角形的底,高\n");
scanf("%f,%f",&d,&h);
s3=1/2*d*h;
printf("%f\n",s3);
}
}本回答被提问者采纳

一道c语言编程题求大神解答,找一下我错在哪了,谢谢了?
错误1:宏定义最后没有分号,将#define D 500;改为#define D 500 错误2:l不是整数,因此将l定义为int型就错了 错误3:既然规定输入格式为P=,那么输入时就不能直接输入数值,而应在数值之前输入P=,例如输入P=6000 另外,程序的不妥之处:1、利润不一定是整数,因此将P定义为int型不妥 2、i...

哪位大神帮我看看这个C语言的编程错在哪,老是出现负数。
b=c; c=max; } printf("从大到小排序:%d,%d,%d\\n",a,b,c);}}

哪个C语言大神帮我看哈我的这个程序哪儿有错嘛,万分感谢啊
就是那一步,括号加多了,if(strcmp(m->name,qname)==0) 还有就是后面是没有分号的。

C语言简单程序,帮看看哪错了
错误点有3个:输入一个实数那行有个引号用了中文符,应该改为英文符;最后输出-a那段语句后面没有写“;”;定义变量a时为双精度浮点数,而输入时存为了单精度浮点数,存在溢出故障,会导致运行错误,见下图:应该改为如下 include<stdio.h> main(){ double a;printf("请输入一个实数:");scanf(...

关于C语言编写程序的一个疑问 高手帮忙看看我的程序哪错了
看了你的代码觉得,你在C语言的语法规则上还有待提高啊,在此举出你所给出的代码的若干错误。首先,你的代码不完整。第9、11、13行要定义三个100行的二维字符数组,如果仅仅是类似char adj[100][12]={"开心的"}的定义;这样adj[1]到adj[99]这99个词都会是空值(ASCII码为0),若用printf()...

我的C语言代码哪里错了?
当你输入一个字符进行判定时,你必须得按一下回车键进行确认,对吧?然而就是你所按下的这个回车键被转化成换行转义字符被送到输入缓冲区,当进入到do-while循环时,第一次按下的回车键被getchar所抵消,伺候还有一个scanf()需要再次输入一个字符,也随即带来了第二个回车键('\\n')....

c语言编译出错,怎么查找错误出在哪行?
步骤:1.打开源代码文件,在控制台里查看错误类型。2.双击错误提示,蓝色光标会自动定位到出错的代码行。

C语言!帮忙看下我写的这个程序错在哪里了,谢谢!用的是二次插值法._百...
void main(){ float *area(float a1,float p,float a[3]);float f(float x);float ar,fr;float a2,a3;float f1,f2,f3;float a1=10,p=0.01,e=0.00001;float pa[3];area(a1,p,pa);a1=pa[0];a2=pa[1];a3=pa[2];f1=f(a1);f2=f(a2);f3=f(a3);do { ar=((a3*a3-...

大佬帮忙看看这个程序错在哪了,刚学C语言?
修改如下:int main(){int price=0; \/\/该处由‘,’改为‘;’printf("请输入金额(元) :") ;\/\/该处缺少分号scanf("%d",&price);int change=100-price;printf("找您%d元。\\n",change);return 0;} 运行结果如下:

C语言大虾们,给我看看这段程序哪错啦!为什么编译时总出现下列错误? expe...
这是错误之二!希望这两条指出的错误会帮到你!有问题再问我啊!祝你好运!【下面给上修改后的代码】:include<stdio.h> int main(){ int x,sign;printf("请输入一个整数:");scanf("%d",&x);if(x<0){ sign=1 printf("x为%d时,符号为%d",x,sign);} else if(x>0){ sign=1 ...

相似回答