/*
Project CountBits1s

Zählung aller gesetzten bits (bit=1) in einer Zeichenkette (string)

Version 1.0 / 2002.04.01
Autor: pstrainer@gmx.net
*/

#include 
#include 
#include 
#include 

#define line_maxlen 100		// length of console input string
#define char_max 8			// truncate strings to this length

int count_1(char*);
void _countbin(int*,char);
void print_bin(char*);
void _printbin(char);

void main (void) {
	char mystring[line_maxlen];
	int n1,sl;

	printf("Projekt CountBits (string)\n");
	sl=1;
	while (sl>0) {
		printf("\nGeben sie einen Text ein:  ");
		gets(mystring);
		sl=strlen(mystring);
		if(sl>char_max)sl=char_max;		// cut down to char_max chars
		print_bin(mystring);			// print binary string
		n1=count_1(mystring);			// count the string
		printf("Anzahl(1)=%d\n",n1);
	}

	#ifdef _DEBUG
	printf("\nPress any key to continue ");
	_getch();
	#endif
}

int count_1(char *s) {
/*
Funktion count_1
Zählung aller gesetzten bits (bit=1) in einer Zeichenkette (string)

Version 1.0 / 2002.04.01
Autor: pstrainer@gmx.net

> Vor Zählung wird jeder string auf char_max gekürzt, damit das
	Ergebnis mit dem Konsolen-Display (beschränkter Platz) überein-
	stimmt.

Syntax:
	int count_1(char*);
	...
	int n1;
	char mystring[...];
	...
	n1=count_1(mystring);
Length: 
13 lines of code
*/
	int i,sl,count=0;

	sl=strlen(s);
	for (i=0;i> 1;
	}
}
void print_bin(char *s) {
/*	Ausdruck einer Zeichenkette (string) als Binärzahl
	Beschränkung auf 8 chars
*/
	int i,sl;

	sl=strlen(s);

	if(sl>0) {
		// print characters
		for (i=0;i

    Source: geocities.com/pstrainer/entwicklung/c/aufgaben

               ( geocities.com/pstrainer/entwicklung/c)                   ( geocities.com/pstrainer/entwicklung)                   ( geocities.com/pstrainer)