关于比大小的问题
本帖最后由 Dadi 于 2014-2-25 22:32 编辑#include <stdio.h>
void main()
{
int a=1,b=3,c=4;
if(a>b){if(a>c){if(b>c){printf("a>b>c");else printf("a>c>b");}}}
else if(b>a){if(b>c){if(a>c){printf("b>a>c");else {printf("b>c>a");}}}}
else if(c>b){if(c>a){if(a>b){printf("c>a>b");else {printf("c>b>a");}}}}
}
可恶啊符合逻辑但是却执行不了,要怎么样才能执行呢?这个问题是小甲鱼的题目啊,做不过这个题目我就不往下看了!
a>b>c a>c>b
b>a>c b>c>a
c>a>b c>b>a
最多就是六个结果
#include <stdio.h>
void main()
{
int a=1,b=2,c=4;
if(a>b)
{
if(a>c)
{
if(b>c) printf("a>b>c\n");
else printf("a>c>b\n");
}
}
if(b>a)
{
if(b>c)
{
if(a>c) printf("b>a>c\n");
else printf("b>c>a\n");
}
}
if(c>b)
{
if (c>a)
{
if(a>b)printf("c>a>b\n");
else printf("c>b>a\n");
}
}
system("pause");
}
这样写 因为只有6个输出语句啊。。。。。。这个段代码,跟平台没有关系,建议使用Windows 下的Visual Studio编辑(带有自动对齐功能的代码编辑器都可以),你会发现你的代码……比如相等的情况??? 本帖最后由 lies_for_L 于 2014-2-25 23:35 编辑
首先这代码复制的很。。。。。。。
再来说一下你的逻辑有很大的错误
一个是else printf 的位置
第二个是根据你写的程序,我看了下,运行过程是这样的
->if(a>b)
->else if(b>a)
->if(b>c)
->else if(c>b)
->over
这样想必你已经明白为什么会没有输出
好了,关于这道题目个人认为应该是这样做#include <stdio.h>
void main()
{
int a=1,b=3,c=4;
char max, mid='a', min, temp, temp_name;
temp=(a>b)? a:b;
temp_name=(a>b)? 'a':'b';
max=(temp>c)?temp_name:'c'; //这三步求出了最大的那个值的变量名
temp=(a<b)? a:b;
temp_name=(a<b)? 'a':'b';
min=(temp<c)?temp_name:'c'; //这三步求出了最小的那个值的变量名
while(mid==max || mid==min) //此循环把mid变为与‘max’&‘min’不同的变量名
{
mid++;
}
printf("%c>%c>%c\n",max, mid, min); //输出
} machimilk 发表于 2014-2-25 23:21 static/image/common/back.gif
这样写
下面的system("pause")是什么意思?终于解决了我的问题哈哈 lies_for_L 发表于 2014-2-25 23:31 static/image/common/back.gif
首先这代码复制的很。。。。。。。
再来说一下你的逻辑有很大的错误
一个是else printf 的位置
:big虽然一些没学过看不懂,但是也是一种思路,haha Dadi 发表于 2014-2-26 17:39 static/image/common/back.gif
下面的system("pause")是什么意思?终于解决了我的问题哈哈
system 是模拟dos的命令,pause是dos的暂停,如果不加这个,程序直接return了,效果就是控制台窗口一闪即逝,看不到结果,vc6 debug可能会自动暂停,其他vs不一样,要加这个才能看结果 machimilk 发表于 2014-2-25 22:27 static/image/common/back.gif
这样写
应包含#include<stdlib.h>这个头文件 Dadi 发表于 2014-2-26 17:39 static/image/common/back.gif
下面的system("pause")是什么意思?终于解决了我的问题哈哈
system("pause");是让系统等待;头文件为#include<stdlib.h> Simanzen 发表于 2014-2-27 01:40 static/image/common/back.gif
应包含#include这个头文件
确实粘贴的时候忘了说明应该包含这个,而且用system不一定非要stdlib,#include <iostream>也一样
页:
[1]