Question
You are given a C file hw03q1.c which contains a partially completed program. Follow the instructions contained in comments and complete the required functions. You
You are given a C file hw03q1.c which contains a partially completed program. Follow the instructions contained in comments and complete the required functions. You will be writing most functions in HW03 (initializeStrings, printStrings, reverseStrings, encryptStrings, decryptStrings) using only pointer operations instead of using array operations. In this homework, the arrays in all functions need to be accessed with pointer, not as array. It means you cannot use array indexing like s[0][0]. You will be using a character pointer. You may use only the strlen( ) function from string.h library. You can find out more about these functions by reading through the instructions in the hw04q1.c file. Example output is given below.
// Be sure to add the standard header above. // Enter your name here // State the IDE that you use: Visual Studio or GCC (SELECT ONE AND INDICATE)
#include
#pragma warning(disable : 4996) // compiler directive for Visual Studio only
// Read before you start: // You are given a partially complete program. Complete the functions in order for this program to work successfully. // All instructions are given above the required functions, please read them and follow them carefully. // You shoud not modify the function return types or parameters. // You can assume that all inputs are valid. Ex: If prompted for an integer, the user will input an integer. // You can use only the strlen() of strings.h library to check string length. Do not use any other string functions // because you are supposed to use pointers for this homework. // **** DO NOT use arrays to store or to index the characters in the string ****
// Global Macro Values. They are used to define the size of 2D array of characters #define NUM_STRINGS 4 #define STRING_LENGTH 50
// Forward Declarations void initializeStrings(char[NUM_STRINGS][STRING_LENGTH]); void printStrings(char[NUM_STRINGS][STRING_LENGTH]); void encryptStrings(char[NUM_STRINGS][STRING_LENGTH], int); void decryptStrings(char[NUM_STRINGS][STRING_LENGTH], int); void reverseStrings(char strings[NUM_STRINGS][STRING_LENGTH]); char* reverseOneString(char s[STRING_LENGTH]); int isPalindrome(char s[STRING_LENGTH]);
// Problem 1: initializeStrings (5 points) // Use pointer p to traverse the 2D array of characters variable 'strings' (input from user in main() ) and set all characters in each // array to a null terminator so that there is a 4 row and 50 column 2D array full of null terminators. // The null terminator '\0' is used to denote the end of a string. void initializeStrings(char strings[NUM_STRINGS][STRING_LENGTH]) { char *p = &strings[0][0]; // enter code here
}
// Problem 2: printStrings (5 points) // Use pointer p to traverse the 2D character array "strings" and print each string. // See the example outputs provided in the word document. Each string should be printed on a new line. void printStrings(char strings[NUM_STRINGS][STRING_LENGTH]) { char *p = &strings[0][0]; // enter code here
}
Step by Step Solution
There are 3 Steps involved in it
Step: 1
Get Instant Access to Expert-Tailored Solutions
See step-by-step solutions with expert insights and AI powered tools for academic success
Step: 2
Step: 3
Ace Your Homework with AI
Get the answers you need in no time with our AI-driven, step-by-step assistance
Get Started