How to check if a number in string is binary number (base 2) in C

2 Answers

0 votes
#include <stdio.h>
#include <string.h>
#include <stdbool.h>
 
bool isBinary(char s[]) {
	for (int i = 0; i < strlen(s); i++) {
		if (s[i] != '0' && s[i] != '1')
			return false;
   }
   return true;
}

int main()
{
    char s1[32] = "101010111";
    
    if (isBinary(s1)) {
        printf("yes\n");
    }
    else {
        printf("no\n");
    }
	
	
	char s2[32] = "1010101137";
    
    if (isBinary(s2)) {
        printf("yes\n");
    }
    else {
        printf("no\n");
    }
	
    return 0;
}
         
           
           
           
/*
run:
           
yes
no
        
*/

 



answered Jul 13, 2020 by avibootz
0 votes
#include <stdio.h>
#include <string.h>
 
int main()
{
    char s1[32] = "101010111";
     
    if (s1[strspn(s1, "01")] == 0) {
        printf("yes\n");
    }
    else {
        printf("no\n");
    }
     
     
    char s2[32] = "1010101137";
    if (s2[strspn(s2, "01")] == 0) {
        printf("yes\n");
    }
    else {
        printf("no\n");
    }
     
    return 0;
}
          
            
            
            
/*
run:
            
yes
no
         
*/

 



answered Jul 13, 2020 by avibootz
...