Sie sind auf Seite 1von 7

#include "countfunctions.

h" /* Function: heading Parameters: a character array representing the program number Return: Void This function displays the heading for my program. */ void heading(char *prgnum) { //Display heading printf("\nCSCE 1030, %s, 'Your Name'\n", prgnum); }//heading /* Function: getstring Parameters: a character array containing the user provided text Return: void This function gets a string of text from the user. */ void getstring(char *file) { //Get string from user printf("\nPlease enter the string you would like to calculate:\n"); gets(file); }//getstring /* Function: lettercount Parameters: a character array containing the user input an integer array to hold the number of letter occurrences Return: void This function counts the number of letter occurrences. */ void lettercount(char *origin, int *occurrence) { //Declare values int currentch = 0; //Count letter occurrences while(currentch < strlen(origin)) { switch(origin[currentch]) { case 'a': case 'A': occurrence[0]++; break; case 'b': case 'B':

case case case case case case case case case case case case case case case case case case case

occurrence[1]++; break; 'c': case 'C': occurrence[2]++; break; 'd': case 'D': occurrence[3]++; break; 'e': case 'E': occurrence[4]++; break; 'f': case 'F': occurrence[5]++; break; 'g': case 'G': occurrence[6]++; break; 'h': case 'H': occurrence[7]++; break; 'i': case 'I': occurrence[8]++; break; 'j': case 'J': occurrence[9]++; break; 'k': case 'K': occurrence[10]++; break; 'l': case 'L': occurrence[11]++; break; 'm': case 'M': occurrence[12]++; break; 'n': case 'N': occurrence[13]++; break; 'o': case 'O': occurrence[14]++; break; 'p': case 'P': occurrence[15]++; break; 'q': case 'Q': occurrence[16]++; break; 'r': case 'R': occurrence[17]++; break; 's': case 'S': occurrence[18]++; break; 't': case 'T': occurrence[19]++; break; 'u': case 'U':

occurrence[20]++; break; case 'v': case 'V': occurrence[21]++; break; case 'w': case 'W': occurrence[22]++; break; case 'x': case 'X': occurrence[23]++; break; case 'y': case 'Y': occurrence[24]++; break; case 'z': case 'Z': occurrence[25]++; break; default: break; //If not a letter, do nothing } //Go to next character currentch++; } }//lettercount /* Function: displaycount Parameters: an integer array containing the number of letter occurrences Return: void This function displays the number of letter occurrences. */ void displaycount(int *occurrence) { //Declare values int i = 0; //Display number of letter occurrences printf("\nNumber of letter occurrences:\n"); while(i != 26) { printf("%c: %d\t", (char)(i + 65), occurrence[i]); i++; if(i == 13) printf("\n"); } printf("\n"); }//displaycount /*

Function: calcpercent Parameters: an integer array containing the number of letter occurrences a float array to hold the percentages of letter occurrences Return: void This function calculates the percentage of occurrence of each letter. */ void calcpercent(int *occurrence, float *percentage) { //Declare values float total = 0; int i =0; //Calculate total number of letters while(i != 26) { total += occurrence[i]; i++; } i = 0; //Reset i //If there are no letters, set all percentages to 0.00 if(total == 0) { while(i != 26) { percentage[i] = 0; i++; } } //Calculate percentage of letter occurrences if total != 0 else { while(i != 26) { percentage[i] =((float)occurrence[i]/total)*100; i++; } } }//calcpercent /* Function: displaypercent Parameters: a float array containing the percentage of letter occurrence for each letter Return: void

This function displays the percentage of letter occurrences. */ void displaypercent(float *percentage) { //Declare values int i = 0; //Display percentage of letter occurrences printf("\nPercentage of letter occurrences:\n"); while(i != 26) { printf("%c: %5.2f ", (char)(i + 65), percentage[i]); i++; if(i % 10 == 0) printf("\n"); } printf("\n"); }// displaypercent /* Function: minfrequency Parameters: an integer array for the number of occurrences of each letter Return: Void This function calculates the letter(s) that occur least. */ void minfrequency(int *origin) { //Declare values float total = 0, min; int i = 0; //Calculate total number of letters while(i != 26) { total += origin[i]; i++; } min = total; //Set min equal to total i = 0; //Reset i //Calculate minimum letter frequency while(i != 26) { if(min > origin[i]) min = origin[i];

i++; } //Display the minimum letter frequency printf("\nmin = %.0f\n", min); i = 0; //Reset i //Display letter(s) that occur least while(i != 26) { if(origin[i] == min) printf("%c ", (char)(i + 65)); i++; } printf("\n"); }//minfrequency /* Function: maxfrequency Parameters: an integer array for the number of occurrences of each letter Return: Void This function calculates the letter(s) that occur most. */ void maxfrequency(int *origin) { //Declare values float total = 0, max = 0; int i = 0; //Calculate total number of letters while(i != 26) { total += origin[i]; i++; } i = 0; //Reset i //Display error if there are no letters if(total == 0) printf("\nError: Unable to calculate maximum occurrence, for no letters were entered."); //If there are letters continue else { //Calculate the maximum letter frequency

while(i != 26) { if(max < origin[i]) max = origin[i]; i++; } //Display the maximum letter frequency printf("\nmax = %.0f\n", max); i = 0; //Reset i //Display the letter(s) that occur most while(i != 26) { if(origin[i] == max) printf("%c ", (char)(i + 65)); i++; } } printf("\n\n"); }//maxfrequency

Das könnte Ihnen auch gefallen