C语言 三个任意数求输出最大值最小值
正确代码:#include
int max(int a,int b,int c);
int main()
{
int a = 0,b = 0,c = 0,x;
scanf("%d %d %d",&a,&b,&c);
x=max(a,b,c);
printf("max=%d
",x);
return 0;
}
int max(int a,int b,int c)
{
int d=a;if(b>d)d=b;if(c>d)d=c:return d;
}
运行截图:
分析你的错误1.现在main函数是不能用void修饰的,如果你用的是旧的编译器,是可以使用void的,但是建议你用int,在main函数里面最后加个return 0;就好。
错误2,函数声明应该放在main函数外头,这里放在main函数上面。
错误3,字符问题,你的a,b,c不知道用的什么格式,就是这件事困恼了我好久,建议你在纯英文输入环境输入。
错误4,max函数里头“if(c>d)d=c:”最后冒号要改成分号。
#include void main(){int a,b,c;scanf("%d%d%d",&a,&b,&c);printf("最大值: %d
最小值: %d",(a>b?a:b)>c?a>b?a:b:c,(a<b?a:b)<c?a<b?a:b:c);}//运行示例:
你的错误原因在于scanf("%d%d%d"&a,&b,&c);少了一个逗号,应该是scanf("%d%d%d",&a,&b,&c);
以下是三个任意数求输出最大值最小值正确的代码:
扩展资料:
用另外一种方法求三个任意数求输出最大值最小值
#include <iostream>
using namespace std;
int main()
{
int num1,num2,num3,max,min;
cout<<"任意输入三个整数:";
cin>>num1>>num2>>num3;
if(num1>num2)
{
max=num1;
min=num2;
}
else
{
max=num2;
min=num1;
}
if(max>num3)
{
max=max;
}
else
{
max=num3;
}
if(min>num3)
{
min=num3;
}
else
{
min=min;
}
cout<<"max="<<max<<endl;
cout<<"min="<<min<<endl;
return 0;
}
求三个任意数的最大最小值最简单的方法就是通过if语句来实现。
具体的实现方法可以参考如下程序段:
double a, b, c, max, min;
scanf("%f%f%f", &a, &b, &c); // 接收用户输入的三个数
max = a; // 初始最大值为a
if(b>a && b>c) // 如果b>a并且b>c,则最大值为b
max = b;
if(c>a && c>b) // 如果c>a并且c>b,则最大值为c
max = c;
printf("最大值为:%lf", max);
min = a; // 初始最小值为a
if(b<a && b<c) // 如果b<a并且b<c,则最小值为b
min = b;
if(c<a && c<b) // 如果c<a并且c<b,则最小值为c
min = c;
printf("最小值为:%lf", min);
求三个任意数的最大最小值最简单的方法就是通过if语句来实现。
具体的实现方法可以参考如下程序段:
double a, b, c, max, min;
scanf("%f%f%f", &a, &b, &c); // 接收用户输入的三个数
max = a; // 初始最大值为a
if(b>a && b>c) // 如果b>a并且b>c,则最大值为b
max = b;
if(c>a && c>b) // 如果c>a并且c>b,则最大值为c
max = c;
printf("最大值为:%lf", max);
min = a; // 初始最小值为a
if(b<a && b<c) // 如果b<a并且b<c,则最小值为b
min = b;
if(c<a && c<b) // 如果c<a并且c<b,则最小值为c
min = c;
printf("最小值为:%lf", min);
本次课程我们主要讲解使用C语言如何实现求若干个数的最大数和最小数,首先我们讲解一下设计思路和伪代码,之后为大家详细展示源码,最后为大家分享一些这类程序的设计思路,欢迎大家加入程序员小白学开发一起学习!
1.你的scanf语句好像少了逗号
应该是scanf("%d,%d,%d",&a,&b,&c); // 输入时候也要有逗号 像这样:2,4,1回车
2.#####另一种写法.
#include<stdio.h>
void main()
{
int a,b,c,max,min;
printf("input 3 number:\n");
scanf("%d%d%d",&a,&b,&c);
if(a>b)
max=a;
else
max=b;
if(max<c)
max=c;
if(a>b)
min=b;
else
min=a;
if(min>c)
max=c;
printf("the max is %d\n",max);
printf("the min is %d\n",min);
}
3.######最简单的写法
void main()
{
int a,b,c,max,min;
printf("input 3 number:\n");
scanf("%d%d%d",&a,&b,&c);
max = a>b?a>c?a:c:b>c?:b:c;
min = a<b?a<c?a:c:b<c?:b:c;
printf("the max is %d\n",max);
printf("the min is %d\n",min);
}
仰制古拉: 希望你能看懂 #include <stdio.h> int main(void){ int a,b,c,max,min; printf("请输入三个数:\n"); scanf("%d%d%d",&a,&b,&c);/*求最大值*///先将a与b相比较 if(a>b) //条件成立,再判断a是否大于c if(a>c)max=a; else max=c; else //条件不...
丁青县14744195427: C语言 输入3个数,输出最大的和最小的数 - ?
仰制古拉: main() { int a,b,c,max,min;scanf("%d%d%d",&a,&b,&c);max=a;min=a;if(b>max)max=b;if(c>max)max=c;if(b<min)min=b;if(c<min)min=c;printf("the max number is %d\n",max);prinft("the min number is %d\n",min); } 备注:如果不是比较三个数而是比较更多个数的大小,那么建议用循环.
丁青县14744195427: 3个数求最大值 最小值 用C语言 求改错 - ?
仰制古拉: if 后面跟2个printf语句 后面在接个else 这个当然报错... if(b>c)printf("最大值=%d",a);printf("最小值=%c\n",c);else这个else已经没和if构成一对了,因为这一句是独立的了printf("最小值=%c\n",c);并不是在if条下执行,就是无论if成不成了都执行. 所以加括号 if(b>c){printf("最大值=%d",a);printf("最小值=%c\n",c); } else 你后面还有几个同样的错误 都改了
丁青县14744195427: C程序:随意输入3个数,运用 if 语句输出其中最大和最小的熟 - ?
仰制古拉: int main() { int a[3]; int i,j; int temp; scanf("%d %d %d",&a[0],&a[1],&a[2]); for(i = 0;i<2;i++) { for(j = i;j<3;j++) { if(a[i]>a[j]) { temp = a[i]; a[i] = a[j]; a[j] = temp; } } } printf("最大是%d 最小是%d",a[2],a[0]); }
丁青县14744195427: 求C语言大神指点!输入三个数字,输出最大和最小值. - ?
仰制古拉: //警告 不要随便else 你第一个else 每种情况都会进一遍 //下面的那些else 也一样的是每种情况都进了一遍 逻辑错误 Input three numbers,please! 12 10 34 max=34,min=10 Press any key to continueInput three numbers,please! 12 34 10 max=34,...
丁青县14744195427: C语言 输入3个数值 输出最大最小那两个 - ?
仰制古拉: 函数int cha(int s)错误.既然是带参数,那么在main()函数里调用应该有实参传递.而你写的这个程序在调用函数时没有实参.事实上这个函数应该不带参数,把参数去掉并把s在函数cha()里定义即可.另外你这个程序还有问题,主要在cha...
丁青县14744195427: c语言 找出三个数的最大值和最小值 简单代码 - ?
仰制古拉: #includemain(){ int a,b,c,min,max; scanf("%d%d%d",&a,&b,&c); min=a;if(b max=a;if(b>max)max=b;if(c>max)max=c; printf(min=%d,max=%d\n",min,max); }
丁青县14744195427: C语言 1.输入三个整数,输出最大值,由大到小输出.跪求 大神 帮忙! - ?
仰制古拉: #include <stdio.h> int a[3]; //输入的三个整数 int temp; //交换数据时的缓存 int i,j; //循环变量 void main () {scanf("请输入三个整数:%d %d %d",a,a+1,a+2); //从键盘输入三个整数,空格隔开 /* 从大到小排列数据排列 */ for (i=0; i<3-1; ...
丁青县14744195427: 如何用c语言编一个比较三个数大小的程序,并输出最大值和最小值 - ?
仰制古拉: c语言的如下:#include void main() { int max(int x,int y,int z); int a,b,c,e; printf("请输入三个整数!\n"); scanf("%d %d %d",&a,&b,&c); e=max(a,b,c); printf("max=%d\n",e); } int max(int x,int y,int z) { int t=x>y?x:y; t=t>z?t:z; return (t); } c++的如...