
急急急急急急!!!c语言问题 跪求哪里出错了!!
#include<stdio.h>voidmain(){inta,b,c;aa:printf("pleaseinputthreenumbera,b,c\n");scanf...
#include <stdio.h>
void main()
{
int a,b,c;
aa: printf("please input three number a,b,c\n");
scanf("%d,%d,%d",&a,&b,&c);
if((a+b<c)||(a+c<b)||(b+c<a))
printf("it is not a triangle\n");
if((a+b<c)||(a+c<b)||(b+c<a))
goto aa;
if ((a+b>c) && (a+c>b) && (b+c>a))
printf("it is a triangle\n");
if(a==b&&b==c)
printf("the triangle being made up of a, b and c is equilateral triangle.\n");
else if(a==b||a==c||b==c)
printf("the triangle being made up of a, b and c is isosceles spherical triangle.\n");
else if((a*a+b*b==c**)||(a*a+c*c==b*b)||(b*b+c*c==a*a))
printf("the triangle being made up of a, b and c is right angled triangle.\n");
else
printf("the triangle being made up of a, b and c is ordinary triangle.\n");
} 展开
void main()
{
int a,b,c;
aa: printf("please input three number a,b,c\n");
scanf("%d,%d,%d",&a,&b,&c);
if((a+b<c)||(a+c<b)||(b+c<a))
printf("it is not a triangle\n");
if((a+b<c)||(a+c<b)||(b+c<a))
goto aa;
if ((a+b>c) && (a+c>b) && (b+c>a))
printf("it is a triangle\n");
if(a==b&&b==c)
printf("the triangle being made up of a, b and c is equilateral triangle.\n");
else if(a==b||a==c||b==c)
printf("the triangle being made up of a, b and c is isosceles spherical triangle.\n");
else if((a*a+b*b==c**)||(a*a+c*c==b*b)||(b*b+c*c==a*a))
printf("the triangle being made up of a, b and c is right angled triangle.\n");
else
printf("the triangle being made up of a, b and c is ordinary triangle.\n");
} 展开
2011-04-15
展开全部
知道能不能给你带来什么帮助。
我觉得你的程序里面的指针用的不是很恰当,特别是process函数中的max与min定义为指针不大妥当,还有就是在process函数的后面那里用到t太过于累赘。。
#include<stdio.h>
void input(int a[],int n)
{
int i;
for(i=0;i<n;i++)
scanf("%d",&a[i]);
}
void process(int a[],int n)
{
int max=a[n-1],min=a[0];
int i,mi=0,ma=n-1;
for(i=1;i<n;i++)
{
if(min>a[i])
{
min=a[i];
mi=i;
}
if(max<a[n-i-1])
{
max=a[n-i-1];
ma=n-i-1;
}
}
a[mi]=a[0];
a[0]=min;
a[ma]=a[n-1];
a[n-1]=max;
}
void output(int a[],int n)
{
for(int i=0;i<n;i++)
printf("%d,",a[i]);
printf("\n");
}
void main()
{
int a[10],n=10;
input(a,n);
process(a,n);
output(a,n);
}
另外,虚机团上产品团购,超级便宜
我觉得你的程序里面的指针用的不是很恰当,特别是process函数中的max与min定义为指针不大妥当,还有就是在process函数的后面那里用到t太过于累赘。。
#include<stdio.h>
void input(int a[],int n)
{
int i;
for(i=0;i<n;i++)
scanf("%d",&a[i]);
}
void process(int a[],int n)
{
int max=a[n-1],min=a[0];
int i,mi=0,ma=n-1;
for(i=1;i<n;i++)
{
if(min>a[i])
{
min=a[i];
mi=i;
}
if(max<a[n-i-1])
{
max=a[n-i-1];
ma=n-i-1;
}
}
a[mi]=a[0];
a[0]=min;
a[ma]=a[n-1];
a[n-1]=max;
}
void output(int a[],int n)
{
for(int i=0;i<n;i++)
printf("%d,",a[i]);
printf("\n");
}
void main()
{
int a[10],n=10;
input(a,n);
process(a,n);
output(a,n);
}
另外,虚机团上产品团购,超级便宜
展开全部
else if((a*a+b*b==c*c)||(a*a+c*c==b*b)||(b*b+c*c==a*a))
前面那个==c*c 你写成了c**
前面那个==c*c 你写成了c**
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
细节问题:最后一个else if()中第一个条件为(a*a+b*b=c*c)你的错写成(a*a+b*b=c**)了,改过来就行了。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询