Due: Tuesday, January 25th, 2011 9:10am
Handin five files for this assignment, one for each part.
Use this code as swapint.c:
#include <stdio.h> #include <stdlib.h> /* define a swap function here .... */ int main(int argc, char** argv) { int a = atoi(argv[1]); int b = atoi(argv[2]); swap(&a, &b); printf("%d\n", a); printf("%d\n", b); return 0; }
Implement swap so that the resulting program takes two small integers on the command line and prints them in reverse order.
Use this code as swapstr.c:
#include <stdio.h> /* define swap .... */ int main(int argc, char** argv) { char* a = argv[1]; char* b = argv[2]; swap(&a, &b); printf("%s\n", a); printf("%s\n", b); return 0; }
Implement swap so that the resulting program takes two command-line arguments (that can be anything) and prints them in reverse order.
Use this code as strcmp.c:
#include <stdio.h> int same_string(char* a, char* b) { .... } int main(int argc, char** argv) { if (same_string(argv[1], "hello") == 0) printf("hi\n"); else printf("huh?\n"); return 0; }
Implement same_string so that it returns 0 if its arguments are the same string, 1 otherwise. The C language provides functions like strcmp and strlen, but don’t use them.
Use this code as array.c:
#include <stdio.h> #include <stdlib.h> int* make_array(int len) { .... } int main(int argc, char** argv) { int len; int *a; int i; len = atoi(argv[1]); a = make_array(len); for (i = 0; i < len; i++) { if (a[i] != i) printf("bad\n"); } return 0; }
Implement make_array so that it when a small natural number is provided as a command-line argument, the prgram does not print “bad.” You’ll need to use malloc in make_array.
Use this code as matrix.c:
#include <stdio.h> #include <stdlib.h> int** make_matrix(int rows, int cols) { .... } int main(int argc, char** argv) { int rows, cols; int **m; int i; int j; rows = atoi(argv[1]); cols = atoi(argv[2]); m = make_matrix(rows, cols); for (i = 0; i < rows; i++) { for (j = 0; j < cols; j++) { if (m[i][j] != i+j) printf("bad\n"); } } return 0; }
Implement make_array so that it when two small natural numbers are provided as command-line arguments, the prgram does not print “bad.” It’s easiest to use malloc more than once in make_matrix.
Last update: Thursday, April 7th, 2011mflatt@cs.utah.edu |