c语言的。。。 输入三个数 输出最大值
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了c语言的。。。 输入三个数 输出最大值相关的知识,希望对你有一定的参考价值。
#include<stdio.h>
void main()
int max(int a,int b,int c,);
int a,b,c,x;
scanf("%d,%d,%d",&a,&b,&c);
x=max(a,b,c);
printf("max=%d\n",x);
int max(int a,int b,int c)
int d=a;
if(b>d)d=b;
if(c>d)d=c:
return d;
帮我看下 什么错了
#include <stdio.h>
void main()
int a,b,c;
scanft("%d,%d,%d",&a,&b,&c);
if(a>=b)
max=a;
else
max=b;
if(max>c)
max=max;
else
max=c;
printf("max=%d",max);
这个又是什么错了- -
正确代码:
#include<stdio.h>
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\\n",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:”最后冒号要改成分号。
参考技术A思路:先定义三个数a,b,c;接着键盘输入并依次赋值,接着判断a和b值大小,把大值赋值给a,接着比较a和c的大小,把大值赋值给a,最后输出a。
参考代码:
#include <stdio.h>int main()
int a,b,c;
scanf("%d%d%d",&a,&b,&c);
if(a<b) a=b;
if(a<c) a=c;
printf("%d\\n",a);
return 0;
/*
运行结果:
2 4 1
4
*/ 参考技术B
#include <stdio.h>
#define max(a,b) (a>b?a:b)
int main()
int a,b,c;
scanf("%d %d %d",&a,&b,&c);
printf("%d\\n",max(max(a,b),c));
return 0;
扩展资料:
JAVA得到数组中最大值和最小值的简单实例
public class TestJava4_3
public static void main(String args[])
int i,min,max;
int A[]=74,48,30,17,62; // 声明整数数组A,并赋初值
min=max=A[0];
System.out.print("数组A的元素包括:");
for(i=0;i<A.length;i++)
System.out.print(A[i]+" ");
if(A[i]>max) // 判断最大值
max=A[i];
if(A[i]<min) // 判断最小值
min=A[i];
System.out.println("\\n数组的最大值是:"+max); // 输出最大值
System.out.println("数组的最小值是:"+min); // 输出最小值
该程序输出结果:
数组A的元素包括:74 48 30 17 62
数组的最大值是:74
数组的最小值是:17
参考技术C错误原因:scanf函数里的%d之间不能加上逗号
例子如下:
直接编译,程序输出结果中随意输入a,b,c的值,然后按回车,如下图所示:
参考技术D #include<stdio.h>void main()
int max(int a,int b,int c,); //c后面不应该有逗号
int a,b,c,x;
scanf("%d,%d,%d",&a,&b,&c);//输入数据的时候,也应该按此格式输入,例如1,3,2
x=max(a,b,c);
printf("max=%d\n",x);
int max(int a,int b,int c)
int d=a;
if(b>d)d=b;
if(c>d)d=c://这里后面应是分号而不是冒号
return d;
//这样这个程序就对了,我试了一下
#include <stdio.h>
void main()
int a,b,c;
int max; //max你下面没有定义,所以定义一下
scanft("%d,%d,%d",&a,&b,&c); /*应该是scanf,你打错了。输入数据注意格式,中间是逗号,不能是别的*/
if(a>=b)
max=a;
else
max=b;
if(max>c)
max=max;
else
max=c;
printf("max=%d",max);
//这样这个程序就对了,我试了。
好好学习,天天向上啊
c语言输入三个数,显示最大值。
为什么这样输出的一直是a的值,我用的是vs2013的编译器。
#include <stdio.h>
int main()
int a, b, c;
int max = 0;
printf("请输入3个整数,用空格分隔:");
scanf("%d %d %d", &a, &b, &c);
max = a;
if (max < b)
max = b;
if (max < c)
max = c;
printf("最大值是%d\n", max);
1、首先,打开vc。
2、点击文件、新建。
3、选择win32 console application 并在右侧选择工程的名字和地址,确定。
4、选择一个空的工程。
5、再次点击文件、新建。
6、选择c++ source file 并在右侧输入文件名字。
7、输入代码,这里以abc分别代表三个不同的数,其他需要比较的数只要把abc换成相应的数就可以了。注意代码的输入要在英文输入法的环境下进行。
8、点击右上角的编译运行按钮。
9、就可以得到了三个数中的最大值并且输出来了。
参考技术AC语言输入三个数,显示最大值是一个比较简单的程序,但是和具体的数据类型有些关系。
下面是求三个整数最大值的相关代码与与注释:
#include <stdio.h>void main()
int num1,num2,num3,maxNum;
printf("请输入三个整数");
scanf("%d%d%d",&num1,&num2,&num3);
maxNum=num1; //首先最大值等于第一个数
if(maxNum<num2) //如果小于第二个数就等于第二个数
maxNum=num2;
if(maxNum<num3) //如果小于第三个数就等于第三个数
maxNum=num3;
printf("最大值等于%d\\n",maxNum); //输出最大值并换行
如果是求浮点数,程序中的变量需要修改类型,并且输入输出语句也要稍作修改,但是算法没有区别。
参考技术B #include <stdio.h>#include <stdlib.h>
int main()
int a, b, c;
int max = 0;
printf("请输入3个整数,用空格分隔:");
scanf("%d %d %d", &a, &b, &c);
max = a;
if (max < b)
max = b;
if (max < c)
max = c;
printf("最大值是%d\n", max);
system("pause");
在vs2012上跑过了,没问题,估计你是不是数据类型选错了,是不是输入小数什么的了追问
没有啊,就是整数,我用的是vs2013。。在window8.1系统里运行的可能是编译器的问题吧。
参考技术C 追问没有啊,就是整数,我用的是vs2013。。在window8.1系统里运行的可能是编译器的问题吧。。
追答把printf改成printf_s,把scan改成scanf_s就可以了……
以上是关于c语言的。。。 输入三个数 输出最大值的主要内容,如果未能解决你的问题,请参考以下文章