c语言中的一些问题

来源:百度知道 编辑:UC知道 时间:2024/06/24 09:17:53
#include<stdio.h>
int main()
{
float x,y,z,a,b,c;
printf("请输入3个数,以逗号隔开:");
scanf("%f,%f,%f",&x,&y,&z);
if (x > y)
a = x;
else
a = y;
if (a < z)
a = z;
if ( y > z )
b = y;
c = z;
else
b = z;
c = y;
printf("3个数字从大到小依次为:%f %f %f",a,b,c);
return 0;
}
错哪了

你的else没有与之对应的if,所以回报错
if ( y > z )
b = y;
c = z;
else
b = z;
c = y;
如果你的意思是两句都做的话记得加上大括号
if ( y > z )
{b = y;
c = z;}
else
{b = z;
c = y;}
不然就是你漏了if语句没写。因为else要紧跟在if之后的

#include<stdio.h>
int main()
{
float x,y,z,a,b,c;
printf("请输入3个数,以逗号隔开:");
scanf("%f,%f,%f",&x,&y,&z);
if (x > y)
a = x;
else
a = y;
if (a < z)
a = z;
if ( y > z )
{b = y; //复合语句要用花括号括起来组成一个语句体
c = z;}
else
{b = z; //复合语句要用花括号括起来组成一个语句体
c = y;}
printf("3个数字从大到小依次为:%.0f %.0f %.0f",a,b,c);
return 0;
}

不过你的程序本身有错误,即使改过了有时运行也不对,所以要重新写个新的程序。
#include"stdio.h"
main()
{
float a[3],t,k;
int i,j;
printf("请输入3个数,以空格隔开:\n");
for(i=0;i<3;i++)
scanf("%f",&a[i]);
printf("3个数字从大到