Я пытаюсь написать код, который имеет много сравнениебольшего, чем и меньше, чем на коммутаторе заявление C
Write a program in “QUANT.C” which “quantifies” numbers. Read an integer “x” and test it, producing the following output: x greater than or equal to 1000 print “hugely positive” x from 999 to 100 (including 100) print “very positive” x between 100 and 0 print “positive” x exactly 0 print “zero” x between 0 and -100 print “negative” x from -100 to -999 (including -100) print “very negative” x less than or equal to -1000 print “hugely negative” Thus -10 would print “negative”, -100 “very negative” and 458 “very positive”.
тогда я пытался решить с помощью переключателя, но он не работал, мне нужно решить его с помощью оператора if или есть способ его решить с помощью коммутатора?
#include <stdio.h>
int main(void)
{
int a=0;
printf("please enter a number : \n");
scanf("%i",&a);
switch(a)
{
case (a>1000):
printf("hugely positive");
break;
case (a>=100 && a<999):
printf("very positive");
break;
case (a>=0 && a<100):
printf("positive");
break;
case 0:
printf("zero");
break;
case (a>-100 && a<0):
printf("negative");
break;
case (a<-100 && a>-999):
printf("very negative");
break;
case (a<=-1000):
printf("hugely negative");
break;
return 0;
}
'switch' может обрабатывать только точные сравнения с постоянными интегральными значениями. Вам придется использовать 'if' и' else'. –
define 'did not work' – deW1
* Семь ошибок компиляции должны были сказать вам * что-то * (и 1 предупреждение:' control достигает конца не-void функции'). – usr2564301