I came up with something, but there's probably a way to simplify it even more. Here's my code:
Code:
#include <stdio.h>
void displayIntegerDigit(char[]);
int main ( void )
{
char cAry1[81];
printf( "\nEnter an integer: " );
gets(cAry1);
displayIntegerDigit(cAry1);
return 0;
}
void displayIntegerDigit(char cTest[])
{
int iA;
int i;
printf("\nThe sign: +\n");
printf("The counts of digits:\n");
iA = 0;
for ( i = 0; i < 81; i++ )
{
if (* ( cTest + i ) == '0' )
{
iA++;
}
}
printf("\t\t0 and %d\n", iA);
iA = 0;
for ( i = 0; i < 81; i++ )
{
if (* ( cTest + i ) == '1' )
{
iA++;
}
}
printf("\t\t1 and %d\n", iA);
iA = 0;
for ( i = 0; i < 81; i++ )
{
if (* ( cTest + i ) == '2' )
{
iA++;
}
}
printf("\t\t2 and %d\n", iA);
iA = 0;
for ( i = 0; i < 81; i++ )
{
if (* ( cTest + i ) == '3' )
{
iA++;
}
}
printf("\t\t3 and %d\n", iA);
iA = 0;
for ( i = 0; i < 81; i++ )
{
if (* ( cTest + i ) == '4' )
{
iA++;
}
}
printf("\t\t4 and %d\n", iA);
iA = 0;
for ( i = 0; i < 81; i++ )
{
if (* ( cTest + i ) == '5' )
{
iA++;
}
}
printf("\t\t5 and %d\n", iA);
iA = 0;
for ( i = 0; i < 81; i++ )
{
if (* ( cTest + i ) == '6' )
{
iA++;
}
}
printf("\t\t6 and %d\n", iA);
iA = 0;
for ( i = 0; i < 81; i++ )
{
if (* ( cTest + i ) == '7' )
{
iA++;
}
}
printf("\t\t7 and %d\n", iA);
iA = 0;
for ( i = 0; i < 81; i++ )
{
if (* ( cTest + i ) == '8' )
{
iA++;
}
}
printf("\t\t8 and %d\n", iA);
iA = 0;
for ( i = 0; i < 81; i++ )
{
if (* ( cTest + i ) == '9' )
{
iA++;
}
}
printf("\t\t9 and %d\n", iA);
return;
}