用switch编程y=-1 (x<0); y=1 (x>0); y=0(x=0)

#include "stdio.h"
void main()
{int x;
printf("输入x:");
scanf("%d",&x);
switch(x<0)
{case 1: printf("y=-1\n"); break;}
switch(x=0)
{
case 2: printf("y=0\n");break;
default: printf("y=1\n");
}
}
为什么我不对
应如何改

第1个回答  2010-10-19
如果条件是连续区间的话,用if else嵌套
如果条件是离散的点的话,才用switch语句
你这里的情况应该用if else,
switch(x<0)这句,x<0只有两个值{0,1},x>=0时会跳过这个switch
switch(x=0)这句,x=0为赋值语句,只有一个值为0,所以永远会执行default标签
第2个回答  2010-10-19
C语言,我没用过
但大体应该一样
switch(x<0)应该写为switch x

跟JS差不多的书写格式

请看这文章
http://zhidao.baidu.com/question/67727228.html

参考资料:http://zhidao.baidu.com/question/67727228.html

本回答被网友采纳

用switch编程y=-1 (x<0); y=1 (x>0); y=0(x=0)
你这里的情况应该用if else,switch(x<0)这句,x<0只有两个值{0,1},x>=0时会跳过这个switch switch(x=0)这句,x=0为赋值语句,只有一个值为0,所以永远会执行default标签

用switch有一函数,当y= -1 (x<0);y=0 (x=0);y=1(x<0),编一个程序,输入...
include<stdio.h> void main(){ int x,y;scanf("%d",&x);switch(x==0){ case 1:y=0;case 0:y=switch(x>0){ case1:y=1;case0:y=-1;} } printf("%d\\n",y);}

用switch编程实现 y=1 (X>0) y=0 (x=0) y= -1 (x<0)
可以这么实现int y = 0;int x = 10;int z = (new Integer(x)).compareTo(0);switch(z) { case 1: y = 1; break; case 0: y = 0; break; case -1: y = -1; break; default: System.out.println("error");} ...

用switch语句编程实现: y=-1(x<0) 0(x=0) 1(x>1)
void main(){ int x,y;printf("请输入x:");scanf("%d",&x);switch(x>0){ case 1: printf("1\\n");break;case 0: switch(x==0){ case 1:printf("0\\n");break;case 0:printf("-1\\n");break;} } }

当x<0时,y=-1,当x=0时,y=0,当x>0时,y=1,用switch语句实现的编程题
switch 做不了,switch的语法要求是case是具体的一个值,不能是范围。不过可以这样写,switch(x) { case 0: y=0; break;default:\/\/ 看情况自己写个if ... else y = x < 0 ? -1 : 1;}

用switch语句实现编程想x<0,y=1。x=0,y=0。x>1,y=-1 急求
switch((x<0)==1){ case 1: y = 1; break;case 0: switch((x=0)==1){ case 1 : y = 0; break;case 0 :y = -1; break;} default:break;} 思路就是用嵌套的switch,现在是三个分支,用两个switch来实现。具体逻辑,你自己再琢磨下。。

用C语言switch表示分段函数要怎么表示?
回答:#include <stdio.h> void main() { int x,y,flag; printf("请输入x:"); scanf("%d",&x); flag=x<0?-1:(x<10?1:2); switch(flag) { case -1:y=x;break; case 1:y=2*x-1;break; case 2:y=3*x-1; } printf("y=%d\\n",y); }

...要求用switch语句描述x>0时,y=1;x==0时,y=
switch(x){ case 0:y=0;break;default:(x>0)? y=1:y=-1;}

switch语句表示符号函数
include <iostream> using namespace std;int main(){ int x, y;cin >> x;switch ((x < 0) ? -1 : (x > 0) ? 1 : 0){ case 1:y = 1;break;case 0:y = 0;break;case -1:y = -1;break;} cout << y << endl;return 0;} ...

C语言swith
main(){ int y,x;printf ("请输和入一个任意整数:\\n");scanf ("%d",&x);\/\/赋值给X switch(x==0?x=0:x\/abs(x)) \/\/abs(x)取x的绝对值 { case 1 :y=1;break;case 0 :y=0;break;case -1 :y=-1;break;} printf ("\\nx=%d\\ny=%d",x,y);} 调试过了,提示 switch(...

相似回答
大家正在搜