C Program – Check Whether a Number is Positive, Negative, or Zero - If/Else & Ternary

Check Sign Using If-Else

#include <stdio.h>
int main() {
    int num;
    printf("Enter an integer: ");
    scanf("%d", &num);
    if (num > 0) {
        printf("%d is positive\n", num);
    } else if (num < 0) {
        printf("%d is negative\n", num);
    } else {
        printf("The number is zero\n");
    }
    return 0;
}
Enter an integer: -7
-7 is negative
        

This approach compares the input with zero and prints a message depending on whether it is greater, less than or equal to zero.

Check Sign Using Ternary Operator

#include <stdio.h>
int main() {
    int num;
    const char *result;
    printf("Enter an integer: ");
    scanf("%d", &num);
    result = (num > 0) ? "positive" : ((num < 0) ? "negative" : "zero");
    printf("%d is %s\n", num, result);
    return 0;
}
Enter an integer: 0
0 is zero
        

The ternary operator can compactly choose between multiple expressions. Here it selects one of three strings describing the number based on comparisons with zero.

Sai Kishore Randhi, author
About the author

Sai Kishore Randhi

Embedded systems, VLSI, and chip design

Sai Kishore writes about embedded systems, VLSI, chip design, and the programming concepts behind modern hardware.

View LinkedIn profile ↗