深入研究字符指针

上传人:tian****1990 文档编号:71603748 上传时间:2019-01-21 格式:PPT 页数:58 大小:1.83MB
返回 下载 相关 举报
深入研究字符指针_第1页
第1页 / 共58页
深入研究字符指针_第2页
第2页 / 共58页
深入研究字符指针_第3页
第3页 / 共58页
深入研究字符指针_第4页
第4页 / 共58页
深入研究字符指针_第5页
第5页 / 共58页
点击查看更多>>
资源描述

《深入研究字符指针》由会员分享,可在线阅读,更多相关《深入研究字符指针(58页珍藏版)》请在金锄头文库上搜索。

1、Lesson 11 深入研究字符指针,,字符指针,2006.4.47设有以下定义和语句 char st20 = “Program“, *p; p = st; 则以下叙述中正确的是 A)*p与st0的值相等 B)st与p的类型完全相同 C)st数组长度和p所指向的字符串长度相等 D)数组st中存放的内容和指针变量p中存放的内容相同,字符指针10-1,2007.9.29若有:char s =1,2,3, *p = s; 则以下不能计算出一个char型数据所占字节数的表达式是 A)sizeof(s) B)sizeof(char) C)sizeof(*p) D)sizeof(s0),字符指针10-2,

2、2005.3.42以下程序的运行结果是 char s = “159“, *p = s; printf(“%c“, *p+); printf(“%c“, *p+);,15,2006.9.37以下程序的运行结果是 char s = “aeiou“, *p = s; printf(“%cn“, *p + 4);,字符指针10-3,2007.4.44以下程序的运行结果是 char s = “aeiou“, *p = s; printf(“%cn“, *(p + 4);,e,u,2010.9.22以下程序的运行结果是 char s = “aeiou“; printf(“%c“, *s + 2);,c,2

3、009.9.20以下程序运行后n的值是 char *s = “012xy“; int i, n = 0; for (i = 0; si != 0; i+) if (si = a ,字符指针10-4,2,2004.9.42以下程序的运行结果是 char s = “Yesn/No“, *p = s; puts(p + 4); *(p + 4) = 0; puts(s);,/No Yes,2004.9.36以下程序的运行结果是 char s = “ABCD“, *p; for (p = s+1; *p; p+) puts(p);,字符指针10-5,BCD CD D,2009.3.21以下程序的运行结

4、果是 char *s = “ABC“; do printf(“%d“, *s % 10); s+; while (*s);,567,2004.9.35以下程序的运行结果是 char st 10 = “China“, “Beijing“; char *p = st; printf(“%sn“, p + 10);,字符指针10-6,Beijing,2004.9.11以下程序的运行结果是 char a = “Language“, b = “Programe“; char *p1 = a, *p2 = b; int k; for (k = 0; k = 7; k+) if (*(p1 + k) = *

5、(p2 + k) printf(“%c“, *(p1 + k);,gae,例以下程序的运行结果是 char st = “xyz“, *p = st; while (*p) p+; for (p-; p - st = 0; p-) printf(“%s“, p);,字符指针10-7,zyzxyz,例以下程序的运行结果是 char st = “Game“; st += 2; printf(“%d“, st0); A)输出G的ASCII码 B)输出m的ASCII码 C)输出I的ASCII码 D)程序有错,2004.9.12以下程序的运行结果是 char a = “123456789“, *p; in

6、t i = 0; p = a; while (*p) if (i % 2 = 0) *p = *; p+; i+; puts(a);,字符指针10-8,*2*4*6*8*,例以下程序的运行结果是 char st 20 = “I“,“Love“,“You“, *p; p = (char *)st; printf(“%dn“, strlen(p + 20);,字符指针10-9,4,例以下程序的运行结果是 char sa = “ABCDEFG“, sb80, *p; p = sa + 3; while (-p = sa) strcpy(sb, p); printf(“%dn“, strlen(sb)

7、;,7,例以下程序的运行结果是 char fun(char ch) if (ch = A ,字符指针10-10,i love you!,例以下程序的运行结果是 char s = “ATM“, *p = s; while (*p) printf(“%c“, *p+);,输出字符串,ATM,例以下程序的运行结果是 char s = “ATM“; for (i = 0; i strlen(s); i+) printf(“%c“, si);,ATM,例以下程序的运行结果是 char s = “ATM“; int i = 0; while (si) printf(“%c“, si+);,ATM,字符数组

8、名作函数参数,例以下程序的运行结果是 int fun(char *p) int k = 0; while (pk) k+; return k; main() char a = “NBA“; printf(“%d“, fun(a); ,3,字符数组名作参数11-1,例以下程序的运行结果是 int fun(char *p) char *s = p; while (*p) p+; return p - s; main() char a = “NBA“; printf(“%d“, fun(a); ,3,字符数组名作参数11-2,例以下程序的运行结果是 void fun(char *p) int i;

9、for (i = 0; i = a ,CHINA!,字符数组名作参数11-3,2005.3.14以下程序的运行结果是 void fun(char *s, int p, int k) int i; for (i = p; i k-1; i+) si = si+2; main() char s = “abcdefg“; fun(s, 3, strlen(s); puts(s); ,字符数组名作参数11-4,abcfg,2010.3.12以下程序的运行结果是 void f(char *s) int i, n = strlen(s); char t = sn-1; for (i = n - 1; i

10、0; i-) si = si-1; s0 = t; main() char s = “abcdef“; f(s); puts(s); ,字符数组名作参数11-5,fabcde,2010.9.34以下程序的运行结果是 void fun(char *p) int i = 0; while (pi) if (pi= ,字符数组名作参数11-6,aB cD EFG !,2007.9.35以下程序的运行结果是 int fun(char s ) int n = 0; while (*s = 0) n = 10 * n + *s - 0; s+; return n; void main() char s10

11、 = “61*4*9*0*“; printf(“%dn“, fun(s); ,字符数组名作参数11-7,61,2006.4.37以下程序的运行结果是 void fun(char *p) char *q = p; while (*q != 0) (*q)+; q+; main() char a = “Program“, *p = ,Prohsbn,字符数组名作参数11-8,字符数组名作参数11-9,将a所指字符串中除了下标为偶数、同时ASCII值也为偶数的字符外,其余的全都删除;串中剩余字符所形成的新串放在t所指的数组中。 void fun(char *a, char *t) ,int i, j

12、 = 0; for (i = 0; i strlen(a); i += 2) if (ai % 2 = 0) tj+ = ai; tj = 0;,字符数组名作参数11-10,字符串中只包含字母和*号,删除字符串中所有的*号,不得使用C语言提供的字符串函数。 void fun(char s ) ,int i = 0, j = 0; while (si) if (si != *) sj+ = si; i+; sj = 0;,字符数组名作参数11-11,字符串中只包含字母和*号,删除串尾部所有的*号,不得使用C语言提供的字符串函数。 void fun(char s ) ,char *p = s; w

13、hile (*p) p+; p-; while (*p = * ,实现字符串函数,2 strcat函数,3 strcmp函数,1 strcpy函数,实现strcpy函数4-1,N,B,A,sb,2,0,1,0,3,int i; for (i = 0; i = strlen(sb); i+) sai = sbi;,N,B,A,sa,0,实现strcpy函数4-2,N,B,A,sb,0,p = sa, w = sb; while (*w) *p = *w; w+; p+; ,N,B,A,sa,0,w,p,*p = 0;,*p = 0;,w,w,w,p,p,p,*p = *w;,实现strcpy函数

14、4-3,N,B,A,sb,0,p = sa, w = sb; while (*p = *w) p+, w+; ,N,B,A,sa,0,w,p,w,w,w,p,p,p,实现strcpy函数4-4,N,B,A,sb,0,p = sa, w = sb; while (*p+ = *w+);,N,B,A,sa,0,w,p,w,w,w,p,p,p,w,p,实现strcat函数2-1,m,e,0,sa,int i, a = strlen(sa), b = strlen(sb); for (i = 0; i = a; i+) sbb+i = sai;,L,O,V,sb,E,0,2,0,1,m,e,0,实现strcat函数2-2,m,e,0,sa,char *p = sa, *w = sb + strlen(sb);,L,O,V,sb,E,0,m,e,0,p,w,p,p,p,w,w,w,while (*w+ = *p+);,2004.4.14以下fun()函数实现字符串复制,即将t所指字符串复制到s所指向内存空间中,形成一个新的字符串s。请填空。 void fun(char *s, char *t) while (*s+ = _); main() char st130, st2 = “abcdefgh“; fun(st1, st2); printf(“%

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 高等教育 > 大学课件

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号