在比较大小中,为什么这个代码运行不了QAQ
#include <stdio.h>int main()
{
int a,b,c,min,max;
printf("please input three number: ");
scanf("%d%d%d",&a,&b,&c);
max=(a>b?a:(c>a?c:(a<b?b:a)));
min=(a<b?a:(c<a?c:(a>b?b:a)));
Printf("min=%d,max=%d\n",min,max);
} {:9_221:} printf中的P大写了吧,而且函数没有返回值,之前是int main() int 表示返回值 https://fishc.com.cn/thread-119661-1-1.html
printf P大写了,由于C语言的默认int特性语法检测过了,但是由于链接器找不到函数本体报错退出。 错误1:printf,你写的是Printf
错误2:顶部是int,所以需要return 0; #include <stdio.h>
int main()
{
int a,b,c,min,max;
printf("please input three number: ");
while(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("min=%d,max=%d\n",min,max);
printf("please input three number(q to quit): ");//p改为小写
}
return 0;
}
你这个程序没考虑到三个数相同的情况和两个数相同的情况,如(2,2,2,),(2,2,3),但你的程序还是可以在这两种情况下运行出结果,我也是无语了。我修改了一下你的程序;
#include <stdio.h>
int main()
{
int a,b,c,min,max;
printf("please input three number: ");
scanf("%d%d%d",&a,&b,&c);
max=(a>=b?a:(c>=a?c:(a<=b?b:a)));
min=(a<=b?a:(c<=a?c:(a>=b?b:a)));
printf("min=%d,max=%d\n",min,max);
} 参考 刘大靌 发表于 2018-8-6 10:13
你这个程序没考虑到三个数相同的情况和两个数相同的情况,如(2,2,2,),(2,2,3),但你的程序还是可 ...
谢谢大大!{:7_113:}
页:
[1]