《C Primer Plus》第六版 第十一章编程练习答案.docx_第1页
《C Primer Plus》第六版 第十一章编程练习答案.docx_第2页
《C Primer Plus》第六版 第十一章编程练习答案.docx_第3页
《C Primer Plus》第六版 第十一章编程练习答案.docx_第4页
《C Primer Plus》第六版 第十一章编程练习答案.docx_第5页
已阅读5页,还剩14页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1#include#include#define SIZE 100void input(char *, int );int main(void)char arrSIZE;int n;puts(input the number of n:);scanf(%d, &n);getchar();puts(input your string: );input(arr, n);printf(%sn, arr);getchar();return 0;void input(char *Arr, int len)int i;for (i=0; ilen; i+)*(Arr+i)=getchar();*(Arr+i)=0;while(getchar() !=n)continue;2.#include#include#define SIZE 100void input(char *, int );int main(void)char arrSIZE;int n;puts(input the number of n:);scanf(%d, &n);getchar();puts(input your string: );input(arr, n);puts(arr);getchar();return 0;void input(char *Arr, int len)int i;for (i=0; ilen; i+)*(Arr+i)=getchar();if (*(Arr+i) = | *(Arr+i)=t | *(Arr+i)= n)break;*(Arr+i)=0;while(getchar() !=n)continue;3.#include#include#define SIZE 100void input(char * );int main(void)char arrSIZE;puts(input your string: );input(arr);puts(arr);getchar();return 0;void input(char *Arr)char ch;int i=1;doch=getchar();while(ch = | ch =t | ch =n);Arr0=ch;while( (ch=getchar() &( ch!= & ch!=t & ch!=n)Arri=ch;i+;Arri=0;while (getchar()!=n)continue;4.#include#include#define SIZE 100void input(char *, int );int main(void)char arrSIZE;int n;puts(input the number of n:);scanf(%d, &n);puts(input your string: );input(arr, n);puts(arr);getchar();return 0;void input(char *Arr, int len)char ch;int i=1;doch=getchar();while(ch = | ch =t | ch =n);Arr0=ch;while( (ch=getchar() &( ch!= & ch!=t & ch!=n) & ilen)Arri=ch;i+;Arri=0;while (getchar()!=n)continue;5.#include#include#define SIZE 100char *find(char *, char );int main(void)char arrSIZE;char ch;char *ps;while(1)puts(input a string:);fgets(arr, 100, stdin);puts(input a character:);ch=getchar();ps=find(arr, ch);if(ps)puts(Find the character!);elseputs(Cont find the charcter!);getchar();getchar();return 0;char *find(char *Arr, char c)int len=strlen(Arr);char *p=Arr;int i;for (i=0; ilen; i+)if (c= *p)return p;p+;if (i=len)return NULL;return 0;6.#include#include#define SIZE 100int is_within(char *, char );int main(void)char arrSIZE;char ch;int re;while(1)puts(input a string:);fgets(arr, 100, stdin);puts(input a character:);ch=getchar();re=is_within(arr, ch);if(re)puts(Find the character!);elseputs(Cont find the charcter!);getchar();getchar();return 0;int is_within(char *Arr, char c)int len=strlen(Arr);char *p=Arr;int i;for (i=0; ilen; i+)if (c= *p)return 1;p+;if (i=len)return 0;elsereturn -1;7.#include#include#define SIZE 20char *mystrncpy(char *, char *, int );int main(void)char s1SIZE;char s2SIZE;char *ps;int n;while(1)puts(input string s2:);gets(s2);puts(input string s1:);gets(s1);puts(Input the number of n:);scanf(%d, &n);ps=mystrncpy(s1,s2, n );puts(After copy:);puts(ps);getchar();getchar();return 0;char *mystrncpy(char *dst, char *src, int len)int i;char *p1, *p2;int L=strlen(src);p2=src;p1=dst;for (i=0; i(Llen? L:len); i+)*(p1+i)=*(p2+i);return p1;8.#include#include#define SIZE 20char *string_in(char *, char * );int main(void)char s1SIZE;char s2SIZE;char *ps;while(1)puts(input string s2:);gets(s2);puts(input string s1:);gets(s1);ps=string_in(s1,s2);if (ps)puts(Find it!);elseputs(Cont find it!);getchar();getchar();return 0;char *string_in(char *s1, char *s2)int len1, len2;int i, j, temp;char *p1=s1;char *p2=s2;len1=strlen(s1);len2=strlen(s2);if (*p1=0 | *p2 =0) return NULL;for (i=0; i(len1-len2) return NULL;9#include#include#define SIZE 20void fun(char *);int main(void)char arrSIZE;while(1)puts(input a string:);gets(arr);fun(arr);puts(arr);getchar();getchar();return 0;void fun(char *Arr)char *p=Arr;int len=strlen(Arr);int i;char ch;for (i=0; ilen/2; i+)ch=pi;pi=plen-i-1;plen-i-1=ch;10#include#include#define SIZE 20void fun(char *);int main(void)char arrSIZE;while(1)puts(input a string:);gets(arr);if (arr0=n) break;fun(arr);puts(arr);getchar();getchar();return 0;void fun(char *Arr)int i, j;char tempSIZE;i=j=0;while(Arri!=0)if (Arri!= )tempj=Arri;j+;i+;strcpy(Arr, temp);Arrj=0;11.#include#include#define SIZE 20#define LIM 3void display(char *String);void Ascii( char *String);void Length(char *String);void FirstC(char *String);int First_word(char String);int main(void)char inputLIMSIZE;char ch;char *ptrLIM;while (1)int ct=0;puts(please input 10 strings:);while (ctLIM )gets(inputct);ptrct=inputct;ct+;puts(*);puts(a. print the original strings:);puts(b. print the strings with ASCII order:);puts(c. print the strings with length order:);puts(d. print the strings with first character order:);puts(e. quit.);puts(*input your choice *);ch=getchar();switch (ch)case a:display(ptr); break;case b:Ascii(ptr); break;case c:Length(ptr); break;case d:FirstC(ptr); break;default:return 0;getchar();getchar();return 0;void display(char *String)int i;for (i=0; iLIM; i+)puts(Stringi);void Ascii(char *String)char *p;int i,j;for (i=0; iLIM; i+)for (j=0; j0)p=Stringj;Stringj=Stringj+1;Stringj+1=p;display(String);void Length(char *String)char *p;int i,j;for (i=0; iLIM; i+)for (j=0; jstrlen(Stringj+1)p=Stringj;Stringj=Stringj+1;Stringj+1=p;display(String);int First_word(char String)int i=0;while (Stringi != )i+;return i;void FirstC(char *String)char *p;int i,j;for (i=0; iLIM; i+)for (j=0; jFirst_word(Stringj+1)p=Stringj;Stringj=Stringj+1;Stringj+1=p;display(String);12#include#include#includeint main(void)int ch;int word, large, small, punctuation, num, begin;word=large=small=punctuation=num=begin=0;while( (ch=getchar() != EOF) if (isdigit(ch)num+;if(ispunct(ch)punctuation+;if (isupper(ch)large+;if (islower(ch)small+;if ( isalpha(ch)if (begin=0)word+;begin=1;elsebegin=0;printf(words=%d, large=%d, small=%d, punc=%d, num=%dn, word, large, small, punctuation, num);getchar();return 0;13.#include#includevoid Reverse(char *, int );int main(void)char str100;int len;puts(Enter a string:);gets(str);len=strlen(str);Reverse(str, len);getchar();return 0;void Reverse(char *str, int n)int i;char ch;for (i=0; in/2; i+)ch=stri;stri=strn-i-1;strn-i-1=ch;for (i=0; in; i+)putchar(stri);putchar(n);14.#include#include#includeint main(int argc, char *argv)double number, value;int p;printf(The command lines has %d arguments:n, argc-1);num

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论