Return Styles: Pseud0ch, Terminal, Valhalla, NES, Geocities, Blue Moon. Entire thread

C programming

Name: Anonymous 2010-01-24 12:37

#include <stdio.h>
/* count digits, white space, others */
main()
{
int c, i, nwhite, nother;
int ndigit[10];
nwhite = nother = 0;
for (i = 0; i < 10; ++i)
ndigit[i] = 0;
while ((c = getchar()) != EOF)
if (c >= '0' && c <= '9')
++ndigit[c-'0'];
else if (c == ' ' || c == '\n' || c == '\t')
++nwhite;
else
++nother;
printf("digits =");
for (i = 0; i < 10; ++i)
printf(" %d", ndigit[i]);
printf(", white space = %d, other = %d\n",
nwhite, nother);
}


Why is it, on line 12, ++ndigit[c-'0']; is used instead of just ++ndigit[c];?

Name: Anonymous 2010-01-25 11:33

Use SPACE
USE EMPTY LINES
Use BRACKETS!
BRACKETS ARE COOL!
NOT USING THEM MAKES YOU UNCOOL!

MAKE IT INT Main(int argc, char argv[]) AND RETURN 0 AT THET END STATNG THAT YOUR PROGRAM WAS A SUCCESS!

NOT DOING SO WILL RESULT IN PISS-POOR PROGRAMMING!

IF YOU ARE A COMPUTER GEEK YOU WOULD WANT TO BE POPULAR AT LEAST WITH THE GEEKS RIGHT?

THE FIRST FOR LOOP IS UNNECESSARY USE
int ndigit[10] = {0};

c IS NOT AN INT USE CHAR!!!

NO NEWLINE NEED INSIDE OF AN PRINTF!
IF YOU NEED ONE CLOSE PRINTF AND START WWITH ANOTHER PRINTF WHERE YOU LEFT OFF!!!

AND MOST IMPORTANTLY DO YOUR HOMEWORK YOURSELF!!!!

Newer Posts
Don't change these.
Name: Email:
Entire Thread Thread List