Предмет: Информатика,
автор: Borisqaaa
С++
Фрагмент кода
int value;
int bit[15];
printf("Enter value: ");
scanf("%d",&value); //тут вводим value
printf("nnvalue: %d",value); //выводится наше value
bit[15]=(value<0)?1:0; //тут value почему то зануляется
printf("nnvalue: %d",value); //выводим уже 0.
вопрос, почему зануляется?
Ответы
Автор ответа:
0
Вот эта строка кода "bit[15]=(value<0)?1:0; //тут value почему то зануляется" называется сокращенной формой условного оператора If - else.
В вашем случае написано:
If (value<0)
{
bit[15]=1;
} else
{
bit[15]=0;
}
Для того чтобы увидеть результат, в Вашем коде нужно изменить эту строку "printf("nnvalue: %d",value); //выводим уже 0." на эту "printf("nnvalue: %d", bit[15]);" Тогда в зависимости от знака введенного числа, значение bit[15] будет 0 если + или 1 если -.
В вашем случае написано:
If (value<0)
{
bit[15]=1;
} else
{
bit[15]=0;
}
Для того чтобы увидеть результат, в Вашем коде нужно изменить эту строку "printf("nnvalue: %d",value); //выводим уже 0." на эту "printf("nnvalue: %d", bit[15]);" Тогда в зависимости от знака введенного числа, значение bit[15] будет 0 если + или 1 если -.
Похожие вопросы
Предмет: Химия,
автор: Lero4ka29
Предмет: Математика,
автор: Аноним
Предмет: Математика,
автор: olenayaritik
Предмет: Математика,
автор: aleksazorya
Предмет: Математика,
автор: aleksazorya