社区讨论

c语言求助,switch不太熟悉

P4414[COCI 2006/2007 #2] ABC参与者 4已保存回复 6

讨论操作

快速查看讨论及其快照的属性,并进行相关操作。

当前回复
6 条
当前快照
1 份
快照标识符
@lo11nb6h
此快照首次捕获于
2023/10/22 13:44
2 年前
此快照最后确认于
2023/11/02 13:14
2 年前
查看原帖
前面一长串都是用来排序的,目前只会这种,不懂的地方在后面switch那里,case后面不能跟字母,不跟字母的话怎么识别出顺序??求正确代码
CPP
#include <stdio.h>
int main()
{
	int n1,n2,n3,a,b,c;
	scanf("%d %d %d",&n1,&n2,&n3);
	
	
	if(n1>n2)//把三个数按大小排序,a<b<c 
	{
		if(n1>n3)
		{
			c=n1;
		}
		else c=n3;
	}
	else if(n2>n3)
	{
		c=n2;
	}
	else c=n3;
	
	if(n1<n2)
	{
		if(n1<n3)
		{
			a=n1;
		}
		else a=n3;
	}
	else if(n2<n3)
	{
		a=n2;
	}
	else a=n3;
	
	b=n1+n2+n3-a-c;
	
	
	char ch[3];
	scanf("%c%c%c",&ch[0],&ch[1],&ch[2]);
	for (int i=0;i<3;i++)
	{
		switch (ch[i])
		{
			case A:
				printf("%d ",a);
				break;
			case B:
				printf("%d ",b);
				break;
			case C:
				printf("%d ",c);
				break;
		}
	}
	
	return 0;
}

回复

6 条回复,欢迎继续交流。

正在加载回复...