刚学习C语言,用switch来完成代码,
毕业设计
1
刚学习到这里。 需要输出的是:当x<0时,输出f(x)=-1.以此类推
#include <stdio.h>
int main()
{
int x=0;
scanf("%d",&x);
switch(x<0)
{
case 1:
printf("f=%d\n",-1);
break;
case 0:
switch(x==0){
case 1:
printf("f=%d\n",0);
break;
case 0:
printf("f=%d\n",2*x);
break;
}
default:
printf("请重新输入");
break;
}
getchar();
return 0;
}
-
switch函数里面不能放入表达式,你需要先用另外一个参数来接受这个表达式的结果
//NO.8 #include <stdio.h> int main() { int x = 0; scanf("%d", &x); int a = (x < 0); //printf("%d\n", a); switch (a) { case 1: printf("f=%d\n", -1); break; case 0: int c = (x == 0); switch (c) { case 1: printf("f=%d\n", 0); break; case 0: printf("f=%d\n", 2 * x); break; } break;//这里少了一个break default: printf("请重新输入"); break; } getchar(); return 0; }
-
switch并不适用这样的分支判断 这种判断应该用 if …. else if …. else …. 一定要用switch可以这样
#include <stdio.h> int main() { int x=0; scanf("%d",&x); switch(x<0?-1:x>0?1:0) { case -1: printf("f=%d\n",-1); break; case 0: printf("f=%d\n",0); break; case 1: printf("f=%d\n",2*x); break; } getchar(); return 0; }
发表回复