Question

Create a UNIX makefile for the following C program:

//convert.c

char toUpper(char c){

if(c>='a' && c<='z')

return c-32;

return c;

}

//converting sentance to upper

void convertSentence(char *sentence){

int i=0;

while(sentence[i]!='\0'){

//convert to upper for each character

sentence[i] = toUpper(sentence[i]);

i++;

}

}

//converting all sentences into uppercase

void convertAll(char **sentenceList, int numOfSentences){

int i=0;

while(i<numOfSentences){

//calling convertsentence function to conver uppercase

convertSentence(sentenceList[i]);

i++;

}

}

sentences.c

#include<stdio.h>

#include<stdlib.h>

#include "convert.c"

int main(){

//declaring character array

char **mySentences;

int noOfSentences;

//taking how many sentences that user taking

printf("Welcome.\nPlease tell me how many sentences you wish to enter (no more than 10): ");

scanf("%d", &noOfSentences);

printf("You entered %d. Please enter your sentences one at a time.\nA sentence can only store 100 characters.\n\n", noOfSentences);

//allocating dynamic memory for no of sentances

mySentences = (char **)malloc(noOfSentences*sizeof(char *));

int i;

for(i=0;i<noOfSentences; i++){

//allocating dynamic memory for sentence length with default 100

printf("Enter sentence #%d: ", i+1);

mySentences[i] = (char *)malloc(100*sizeof(char));

scanf("\n%[^\n]s", mySentences[i]);

}

//converting all sentences into upper case

convertAll(mySentences, noOfSentences);

//printing converted upper case sentences

printf("Your Converted Sentences are: \n");

int chars = 0, withOutSpaces = 0;

for(i=0;i<noOfSentences; i++){

int len = 0;

while(mySentences[i][len]!='\0'){

if(mySentences[i][len]!=' ')

withOutSpaces++;

len++;

chars++;

}

printf("%s\n", mySentences[i]);

}

printf("\nThere are %d Characters, or %d, not including the whitespace", chars, withOutSpaces);

printf("\n\nEnd Program");

printf("\nPress any key to continue . . .\n");

getchar();

return 0;

}

[rkv-sdc@localhost 888320181$ gcc -Wall sentences. [rkv-sdc@localhost θ8032018]s ·/a.out Welcone. Please tell ne how nany sentences you wish to enter (no nore than 10): 4 You entered 4. Please enter your sentences one at a tine. A sentence can only store 100 characters. Enter sentence #1: Hy nane is beth. Enter sentence #2 : Hello. Enter sentence #3: Goodbye 123 Enter sentence #4: Im done Your Converted Sentences are: HY NAHE IS BETH HELLO GOODBYE 123 IH DONE There are 41 Characters, or 36, not including the whitespace End Progran Press any key to continue .. . [rkv-sdc@localhost 080320181$

0 0
Add a comment Improve this question Transcribed image text
Answer #1

Below two lines are enough to make UNIX makefile for your c program. Create a file name called makefile and copy the below two lines into it.

sentences:
        gcc -Wall -o sentences sentences.c

Note:

There is a TAB space required in starting of the second line.

The general syntax of a Makefile.

target [target...] : [dependent ....]
[ command ...]

Arguments in brackets are optional. Note the tab space required before each command.

In our makefile target is sentences, no dependent and command is gcc -Wall -o sentences sentences.c

Add a comment
Know the answer?
Add Answer to:
Create a UNIX makefile for the following C program: //convert.c char toUpper(char c){ if(c>='a' && c<='z')...
Your Answer:

Post as a guest

Your Name:

What's your source?

Earn Coins

Coins can be redeemed for fabulous gifts.

Not the answer you're looking for? Ask your own homework help question. Our experts will answer your question WITHIN MINUTES for Free.
Similar Homework Help Questions
  • Please help me with this question (in C programming language and Unix) computer system book 3 edi...

    please help me with this question (in C programming language and Unix) computer system book 3 edition int *fun (int *x)f int value *xtt return &value; int main) int pl; int **p2; int a; char str [5] printf ("Enter a number:") scanf("%d", a) ; printf ("Enter a line:") gets (str); p1-malloc(sizeof (int)) *pl-p2; p2-malloc(sizeof (int)); pl-fun (a); n-0; for (pl-stripl<-str+5;pl++) if (isdigit (pl)) at+; return 0; Construct a table that shows for each line of code, what may be the...

  • C program help #include #include #include void PrintName(char firstname[16], char lastname[16]); int main () { char...

    C program help #include #include #include void PrintName(char firstname[16], char lastname[16]); int main () { char firstname[16]; char lastname[16]; printf("please enter your first name:"); scanf("%s",firstname); printf("please enter your last name:"); scanf("%s",lastname); PrintName(firstname,lastname); return 0; } void PrintName(char firstname[16], char lastname[16]){ char fullname[34]; *fullname=*firstname+*lastname; (char*) malloc (sizeof (*fullname)); if (strlen(firstname) > 16||strlen(lastname)>16||strlen(fullname)>16) fflush(stdin); else printf(" the full name is %s %s \n",firstname,lastname); printf(" the full name is-> %s",fullname);/*why is one not run*/ return 0; }

  • I'm having trouble getting my program to output What is your first name? damion what is...

    I'm having trouble getting my program to output What is your first name? damion what is your last name? anderson damion, Your first name is 6 characters Your last name, anderson, is 8 characters Your name in reverse is: noimad nosredna This is my code so far: #include <stdlib.h> #include <stdio.h> void sizeOfName(char** name); void printSizeOfName(int *first, int *last, char** name); void reverseString(int *first, int *last, char** name); int main() {   char** name;   name = (char**)malloc(2*sizeof(char*));   name[0] = (char*)malloc(100*sizeof(char));   name[1]...

  • Q.25. Given the following program, you are asked to discuss memory leaks caused in its execution....

    Q.25. Given the following program, you are asked to discuss memory leaks caused in its execution. Determine which memory locations get uncontrolled. (2 points) 4 6 7 8 9 10 11 12 B 13 14 15 16 17 18 1 #include <stdio.h> 2 #include <stdlib.h> 3 #include <string.h> 5 void main() { char *aString = "Memory leaks?"; char **strList; int i, n = 5; strlist = (char**)malloc(n*sizeof(char*)); for (i=0; i<n; i++) { printf("\nstring %d ", i+1); strList[i] = (char*)malloc(50*sizeof (char));...

  • Modify the client server system program given below so that instead of sendto() and recvfrom(), you...

    Modify the client server system program given below so that instead of sendto() and recvfrom(), you use connect() and un-addresssed write() and read() calls. //Server.c #include #include #include #include #include #include #include #include #include #include # define PortNo 4567 # define BUFFER 1024 int main(int argc, char ** argv) { int ssd; int n; socklen_t len; char msg[BUFFER]; char clientmsg[BUFFER]; struct sockaddr_in server; struct sockaddr_in client; int max_iterations = 0; int count = 0, totalChar = 0, i = 0;...

  • #include <stdio.h> #include <string.h> #include <ctype.h> #include <stdlib.h> int main(void) { /* Type your code here....

    #include <stdio.h> #include <string.h> #include <ctype.h> #include <stdlib.h> int main(void) { /* Type your code here. */ int GetNumOfNonWSCharacters(const char usrStr[]) { int length; int i; int count = 0; char c; length=strlen(usrStr); for (i = 0; i < length; i++) { c=usrStr[i]; if ( c!=' ' ) { count++; } }    return count; } int GetNumOfWords(const char usrStr[]) { int counted = 0; // result // state: const char* it = usrStr; int inword = 0; do switch(*it)...

  • I'm having trouble getting my program to output this statement Enter a sentence: Test! There are...

    I'm having trouble getting my program to output this statement Enter a sentence: Test! There are 5 total characters. There are 1 vowel. There are 1 UPPERCASE letters. There are 3 lowercase letters. There are 1 other characters. Here's my code: #include<string.h> #include<stdio.h> #include<stdbool.h> int main() { char str[100]; int i; int vowels=0; int UC; int LC; int Others; int c; printf("Enter a sentence: \n"); gets(s); LC=countLC(&s); UC=countUC(&s); Others=countOthers(&s); printf("There are %d total characters.\n", ; for(i=0; i<strlen(str); i++){ if(isVowel(str[i])) vowels++;...

  • I was asked to write a program that when divisible by 2- reverses the order of...

    I was asked to write a program that when divisible by 2- reverses the order of the letters in a sentence when divisible by 3- changes all lowercase letter into uppercase letters in a sentence when divisible by 5 skips the vowels in a sentence this is what I have so far. my reverseMode works fine. #include <iostream> #include <string> #include<cstring> using namespace std; void reverseMode(char* str); void upperMode(char* str); void goodbyeVowels(char* str); char str[50], rstr[50]; //initializing my character arrray...

  • Here is a serial program in C and parallel program in OpenMP that takes in a string as input and counts the number of occurrences of a character you choose. Why is the runtime for the output for the O...

    Here is a serial program in C and parallel program in OpenMP that takes in a string as input and counts the number of occurrences of a character you choose. Why is the runtime for the output for the OpenMP parallel program much longer? Serial Program #include <stdio.h> #include <string.h> #include <time.h> int main(){    char str[1000], ch;    int i, frequency = 0;    clock_t t; struct timespec ts, ts2;       printf("Enter a string: ");    gets(str);    int len = strlen(str);    printf("Enter a character...

  • In Programming language C - How would I convert my words char array into a string...

    In Programming language C - How would I convert my words char array into a string array so I can use the strcmp() function and alphabetically sort the words? #include <stdio.h> #include <stdlib.h> #include <string.h> #include <ctype.h> int main(int argc, char*argv[]){ int i =0; int j =0; int count =0; int length = strlen(argv[1]); for(i =0; i < length; i++){ if(isalpha(argv[1][i]) == 0 ||isdigit(argv[1][i] != 0)){ count ++; } printf("%c",argv[1][i]); } char *strings; int wordNum =0; int charNum =0; strings...

ADVERTISEMENT
Free Homework Help App
Download From Google Play
Scan Your Homework
to Get Instant Free Answers
Need Online Homework Help?
Ask a Question
Get Answers For Free
Most questions answered within 3 hours.
ADVERTISEMENT
ADVERTISEMENT
ADVERTISEMENT