From f9b2b023554a580acb934ef3da67dbad9383db74 Mon Sep 17 00:00:00 2001 From: AvaEN Date: Sun, 10 Jul 2016 21:22:01 -0400 Subject: [PATCH 1/5] Assignment 7 --- assignment7.txt | 25 +++++++++++++++++++++++++ functions | Bin 0 -> 8640 bytes reverse | Bin 0 -> 8912 bytes reverse.c | 44 ++++++++++++++++++++++++++++++++++++++++++++ str_functions.c | 26 ++++++++++++++++++++++++++ 5 files changed, 95 insertions(+) create mode 100644 assignment7.txt create mode 100755 functions create mode 100755 reverse create mode 100644 reverse.c create mode 100644 str_functions.c diff --git a/assignment7.txt b/assignment7.txt new file mode 100644 index 0000000..8ec8a63 --- /dev/null +++ b/assignment7.txt @@ -0,0 +1,25 @@ +Ava N. +July 7, 2015 + +Assignment 7 + +1. ++*p increments value at location p point to, then evaluates (stores) to incremented value. +*p++ evaluates the value at location p points to, then advances p. (*p)++ evaluates the value at the location p points to, then increments that value. + + +2. The left to right or right to left order for operator precedence is not guarenteed. + +3. The advantages of using pointers are that they provide a way for functions to modify their calling arguments, pointers support dynamic memory allocation, and they increase efficiency when working with arrays. + + +4. (*int, &char, 10, 0 or 1, ) (looking at the types: *X==y answer=o or 1 or invalid) +4.1: char +4.2: invalid +4.3: 1 +4.4: pointer +4.5: int * +4.6: int +4.7: pointer +4.8: char* +4.9: invalid +4.10: invalid diff --git a/functions b/functions new file mode 100755 index 0000000000000000000000000000000000000000..1b9fa0ac7e19a630714ea6d085fba3ffe08525a4 GIT binary patch literal 8640 zcmeHNYitzP6+XM`7q9hVUIwBtZE>}v@?ab6EF^_lzZg?vz^oIZ){NJ?YkQORF4~=? z2Bobl1Imh!P_>o(r&6V;Kl-n&RK>qas4E~+)siZaDy6DuRVqVXi$akrHEhqhbI(3z zhbsM1^^cD=bME=>`ObaL%)NL0oxZ_-x61`AZa4sBwbf_>vhJANCQOM1U=?Vv1D=37 zL~8NUL=I^y#d=wWX5AqDJg95%3b-vG;MPQf^%EA1C0N2WBu(X&M3YHNzglmZtN|1O z5RdBW^9mF7m`Jep%X+j)%{(%R=a)Rcb%lnzj#LTeTJSz!UNX5Mk+Ns9FN&&nsWhh=$>>zBN2A8TpC?nHdNYwzwvv^5b= zW@lPw0$r_Ld(})z?GWvz_~d(NXhf96{ivWtb>4^<%>l~a`R==(u_s^pr@QlM_}Yv9 z$qR2D*iT%(F!{M<4SF^?coXJ???ha2@CR&PgqqU@r_=GIIRS=2kdZONY15bv$CHRm zPN$L*G2qbPKzEPPp?0X96wr--)CT&)c}EaRc3XTEDH=QK50+-%m`Kue zCO(T&hRdlXvh=wR8}v)HEo&9fFT7>eF7+U+&;6!hk(rh*bT*+&p=Bf98+T}!B72H5 z@7^w;w5%qZioAPE*ne1~z{C}c4bcA4K<=GWdhW0K+~4xYLIXG6%GYY3-?%m_)Qx?p zmfl3-gNeo+y#NabvBD#IYXFr#x9rt(cg}2IplDRh^`loQqi`FY&x;~P7pYbgD%-!J z{1N@TABzCj9(gc;p3CdkmJaH!>-sy7%uU5;YdBit4j5gu%Aft}ajZXN*N-4^DTx&u zydWi7>sOo676F%j_^412skawPZKIY3pASA4%oTzo!O-C4 zmTxyG*x1Xhq)!aw9uDN*8{BnAjP140JWE?JihkiEQ)z#n`)4qBZ!q_;7b6rl{z;!( zbm{v($ljxY|N3a~8^O`wsi3iVrBvppI3GkjIW=5jmI6E~CNK+x;E=K{c47WL)Wv+$ z$|vr5ypCahjPkp^zSrH|-saaleO~2qO}E$oYOU^VyI7}t19SC9yjt2D2zuLsUVpb& zK|l2G_BM$3-fxjUgK^5AUkbS*D?PB%11mkS(gQ0!@PF$8T-=b{uCcT*@WyLU)@x

+k@0NO%qpGg9<{x- zeQ#En9cue73sO4T+Pm8Jw(nt4?`9=Sz7o56+$iNB=tD z`Bdp&4^HFY!P&{cJTnejY>K69M-`7LJ6@_^qzC!+rwUedcV1`|Ho|OLXipo zu?<%xZhx=#iuk2^^84U~z^nW7oQwnVJ&UH0i+FcI^|<^5ai?}YuD!n$ahl+jdJR)0 zp<@K6ejpF0_`es_4OR2uHsUUaalb45`FkNuy!}fgs^@1THo)aDA6gJ^!v3dI2@-y< zcOtF`r1ExI;MMczIO0CoS~Y)mBi;nn&(}$TSH>nQ@fiG)jBlT}^TOW?bjU!mLEHh} zKwOdOa`g+u*Sohun{A$7C7e#3G+zPj?17ot=z{crtE;)9LV8BbGGNXJH~8o{kyO?DX_mq?B0(dYTok88dB6WRnpy zo=Rp!Mf-Aju@p53LWX8?g@p*6EQGi(Xbhoho72O zez;k65^B#Trgba|k*RPx9KqhFPOmsF#WBdFjHz%kN~H}PMM5;5G_si(wzgDJYAxF1 znT(8R9lahtV+_l2?MZ|)88N8X0Pag_84r9#yFksHoi@YcsLiycr#OY@ys`9YP?IS$ zrUttQTFvmJv?h~Tbvzr#^X_;QRI;YRnJG}CXOkGu(q`JqIfJdm5w0){%uB}-VIs)X z>4XWYXr78mbuxvfiN|iB(i}sllo$auHYI1(R1|}-Wl^o^WidGYVg%i=nDBHwf^|rl z6dn;8P8ItRRGjG3IC&i&um2jN?;Spp#rG_) z<<6Mq_ZY+Nm?-D-y3mvXce10@c78A74{`0y<u79mSOZyXP!Vo5Cufcp? zXD&!!Ogh$~rncMn3C|%$dlBY0do;9g-y%0Cyq^&u-t7H%3NhMCF#n|FpOkzqkL%BV ztY1Pt?M>Joll(EsS1_N%UVjS(p!Ep#Df4F~e^&Bw#U_Ny=lU>y9&?G`ZMhZK%kz@Y z`!V7Z$IgEZG3pbl9|^CkZ%RJzGp*d}`IEzpaz3xW^S1Jtk6%j%qZvcceYLPe@&TX!sRmb1}4h+yzYM>JDm5S>@UNz2|ty59zUqltUTGF zfug6Cu(#*u2vhmY=Y0hKe)+78Z!iCe3 z?k~H8>EJ`>wm>jq# bF_Y@T?UCW}|0tZxzq#3pw#ydWRvq{^8f-J! literal 0 HcmV?d00001 diff --git a/reverse b/reverse new file mode 100755 index 0000000000000000000000000000000000000000..2c1b12f8a57218a1037eeeb2fd965791bf3884bd GIT binary patch literal 8912 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 IId_-;AEABz5dZ)H literal 0 HcmV?d00001 diff --git a/reverse.c b/reverse.c new file mode 100644 index 0000000..7296bf0 --- /dev/null +++ b/reverse.c @@ -0,0 +1,44 @@ +//Ava N. +//In a program reverse.c, write a string reversal function using pointers that takes only a string as input, creates 2 pointers, performs a string reversal using those pointers, and prints out the reversed string. Your driver should take a string input by the user using fgets(). + +#include +#include +#include + +int main(){ + char input; + char arr[50]; + char *p1; + char *p2; + char temporary='\0'; + int n=100; + + printf("Give me a word that is under 50 letters long!!!!!! \n"); + //scanf(%s, &input); + fgets(arr, sizeof(arr), stdin); + arr[strlen(arr)-1]='\0'; + printf("\n"); + + *p1 = arr[0]; + *p2 = arr[0]; + + while (*p2 + 1 != '\0'){ + *p2++; + } + + while (p1 <= p2){ + temporary = *p2; + *p2 = *p1; + *p1 = temporary; + *p1++; + *p2--; + } + + printf("Here is the reversed of what you wrote: %s\n", arr); + +} + +/* +void reverse(char *p1, char*p2){ +} +*/ diff --git a/str_functions.c b/str_functions.c new file mode 100644 index 0000000..b5f541d --- /dev/null +++ b/str_functions.c @@ -0,0 +1,26 @@ +//Ava N. +//Write a program that implements 2 functions: (strcat() and) strcmp(). Use pointers and write the main function to execute both of these function on 2 strings. + +#include +#include + +char *characters(char* var1, char* var2) { + + return characters; +} +//strcmp() +//strcat() + + +int main (){ + //int characters; + char *var1="Welcome"; + char *var2="NY!"; + + //); + //characters = strcmp(var1, var2); + + printf("Text from var1 + var2: |%s %s|\n", var1, var2); + + return(0); +} From 5312ad06b4c5e21b81e7c54849904054f96a16c2 Mon Sep 17 00:00:00 2001 From: AvaEN Date: Sun, 10 Jul 2016 23:00:28 -0400 Subject: [PATCH 2/5] Update reverse.c --- reverse.c | 39 +++++++++++++++++++++++---------------- 1 file changed, 23 insertions(+), 16 deletions(-) diff --git a/reverse.c b/reverse.c index 7296bf0..3733ece 100644 --- a/reverse.c +++ b/reverse.c @@ -6,25 +6,37 @@ #include int main(){ - char input; char arr[50]; char *p1; char *p2; - char temporary='\0'; - int n=100; + char temporary; + + printf("Input a string that is under 50 letters long!!!!!! \n"); - printf("Give me a word that is under 50 letters long!!!!!! \n"); - //scanf(%s, &input); fgets(arr, sizeof(arr), stdin); - arr[strlen(arr)-1]='\0'; printf("\n"); + p1 = &arr; /* points to first character in string */ + p2 = &arr[strlen(arr)-1]; /* points to last character in string */ + + +/* Diagnostic purposes ... */ + + printf("\nThe following is diagnostic *****\n"); + printf("You input: %s\n",arr); + printf("Sizeof(arr) is %d\n",sizeof(arr)); + printf("String Length (including null) is: %d\n",strlen(arr)); + printf("first character is: %c\n",arr[0]); + printf("last character is: %c\n",arr[strlen(arr)-2]); + printf("P1 and P2 point to char: %c %c\n",*p1,*p2); + printf("arr[0] is: %c\n",arr[0]); + printf("p1 address is %d\n",p1); + printf("p2 address is %d\n",p2); + printf("end diagnostic!**** \n\n"); + +/* End diagnostic */ + - *p1 = arr[0]; - *p2 = arr[0]; - while (*p2 + 1 != '\0'){ - *p2++; - } while (p1 <= p2){ temporary = *p2; @@ -37,8 +49,3 @@ int main(){ printf("Here is the reversed of what you wrote: %s\n", arr); } - -/* -void reverse(char *p1, char*p2){ -} -*/ From 26b54cd98901e1d1f9ddd8c1ef0574a5b692c898 Mon Sep 17 00:00:00 2001 From: AvaEN Date: Sun, 10 Jul 2016 23:00:57 -0400 Subject: [PATCH 3/5] Update reverse.c --- reverse.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/reverse.c b/reverse.c index 3733ece..64828c5 100644 --- a/reverse.c +++ b/reverse.c @@ -11,7 +11,7 @@ int main(){ char *p2; char temporary; - printf("Input a string that is under 50 letters long!!!!!! \n"); + printf("Input a string that is under 50 letters long. \n"); fgets(arr, sizeof(arr), stdin); printf("\n"); From f8379aa652b64d66f6c9f2f9ea2e25f460612302 Mon Sep 17 00:00:00 2001 From: AvaEN Date: Mon, 11 Jul 2016 15:18:41 -0400 Subject: [PATCH 4/5] Update assignment7.txt --- assignment7.txt | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/assignment7.txt b/assignment7.txt index 8ec8a63..b9b296e 100644 --- a/assignment7.txt +++ b/assignment7.txt @@ -13,8 +13,8 @@ Assignment 7 4. (*int, &char, 10, 0 or 1, ) (looking at the types: *X==y answer=o or 1 or invalid) -4.1: char -4.2: invalid +4.1: char * +4.2: 1 4.3: 1 4.4: pointer 4.5: int * From 5f69c1669398a88e9a6361efeb756628f86dcd13 Mon Sep 17 00:00:00 2001 From: AvaEN Date: Mon, 11 Jul 2016 15:19:06 -0400 Subject: [PATCH 5/5] Update reverse.c --- reverse.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/reverse.c b/reverse.c index 64828c5..637e159 100644 --- a/reverse.c +++ b/reverse.c @@ -19,7 +19,7 @@ int main(){ p2 = &arr[strlen(arr)-1]; /* points to last character in string */ -/* Diagnostic purposes ... */ +/* Diagnostic purposes ... printf("\nThe following is diagnostic *****\n"); printf("You input: %s\n",arr); @@ -32,7 +32,7 @@ int main(){ printf("p1 address is %d\n",p1); printf("p2 address is %d\n",p2); printf("end diagnostic!**** \n\n"); - +*/ /* End diagnostic */