c语言程序设计指针.docx

上传人:scccc 文档编号:12427230 上传时间:2021-12-03 格式:DOCX 页数:9 大小:79.99KB
返回 下载 相关 举报
c语言程序设计指针.docx_第1页
第1页 / 共9页
c语言程序设计指针.docx_第2页
第2页 / 共9页
c语言程序设计指针.docx_第3页
第3页 / 共9页
c语言程序设计指针.docx_第4页
第4页 / 共9页
c语言程序设计指针.docx_第5页
第5页 / 共9页
亲,该文档总共9页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述

《c语言程序设计指针.docx》由会员分享,可在线阅读,更多相关《c语言程序设计指针.docx(9页珍藏版)》请在三一文库上搜索。

1、实验12指针实验目的1 通过实验进一步掌握指针的概念,会定义和使用指针变量2 能正确使用数组的指针和指向数组的指针变量。3能正确使用字符串的指针和指向字符串的指针变量实验内容请注意,在实验过程中请将所有程序中的“丁家雄”改成丁家雄!1阅读下列程序,判断预期的输出并上机验证。#in elude <stdio.h>int mai n()int i, m=0,1,2,3,4,5,6,7,8,9;int *p=m+3;/程序中必须有下面这一句输出,注意姓名!printf("* 丁家雄 _12_1 的运行结果:*n");/分析每一句的表达式输出,注意只写di勺结果,序号不

2、记录/写岀每一句的预期结果与实际结果判断输出实际输出prin tf("1. %dn", *p);(3)(3)prin tf("2. %dn", +*p);(4)(4)prin tf("3. %dn",*p);(4)(4)prin tf("4. %dn",*+p);(4)(4)prin tf("5. %dn",*p);(4)(4)prin tf("6. %dn",*p+);(4)(4)prin tf("7. %dn",*p);(5)(5)prin tf(&q

3、uot;8. %dn",(*p)+);(5)(5)prin tf("9. %dn",*p);(6)(6)p+=2;prin tf("10. %dn",*p);(7)(7)p=&m6;prin tf("11. %dn",*p);(6)(6)i=*p+4;prin tf(". %dn",i);(10)(10)i=*(p-=3);printf("13. %dn",i);prin tf("14. %dn",*p); *(p+)=9;prin tf("15.

4、 %dn",*p);prin tf("16. %dn",*(p+1);(4)(4)(4)(4)(4)(4)(6)(6)m012345679aIIP*pAS133不变2343344445A4&5475555956| 107711&61210134314a4154416462.程序改造 1)阅读下面的程序/*用指针运算求串的长度示例*/#i nclude <stdio.h>nt mai n()char s260;char *pt = s;int len=0;/*程序中必须有下面这一句输出,注意姓名! */printf("* 丁家雄

5、 _12_2的运行结果:*n");printf("请输入一个字符串(最多250个字符):”);gets(s);while (*pt !='0')len+;pt+;printf("字符串的长度为:%dn" , len);2)改造该程序,去掉上面程序中的len的使用,也能输出字符串的长度 你的程序及运行结果:#i nclude <stdio.h>int main()char s260;char *pt = s;/*程序中必须有下面这一句输出,注意姓名 ! */printf( "* 丁家雄_12_2的运行结果:*n&quo

6、t;);printf("请输入一个字符串(最多250个字符):n");gets(s);while (*pt !='0')pt+;printf("该字符串的长度为:%d",pt-s);31 C:Wind omVs.y£tern.32crncl .exe X杵料來划._:2 :的込帶年来;* 请输入一齐于存巾(锻拿250个字符h p isdj做字和串的氏度为;5卜粋厂家雄_垃_2的运行结果:* 诘输冬卜了捋宋(晟寥250个字符h 该孝诂申的崔度血612 2的运打结!th * 请输入 fr符巾(承多25M字符h dkjsk谏了苻串的长

7、度为I 7幷*家確12 2的运行结杲'* 诸输入一不字存帕最务250个字符h d do si j该字鶴串的fcftM I雄的扈行结果土 * 请输入个了柠阳(星易250牛了持h该字捋聊的恆廈为】8士丁家雄12 2的运行皓果:*林 请输入 吓宁符串(w«25DtT符):3.程序设计1)编程实现输入一串字符,将其中的空格全部去掉。必须用指针来实现!可以 写出多个不同的方案!输入:hello I am a han dsome boy !输出:helloIamaahandsomeboy!程序框架#i nclude<stdio.h>int mai n()/下面定义你需要的变量

8、/程序中必须有下面这一句输出,注意姓名!prin tf("*丁家雄 _12_3 的运行结果:*n");/下面写上你的程序代码你的程序及运行结果:#include <stdio.h>#include <string.h>#defi ne MAX100int main()char yuan MAXchar quhou MAX=""char *y=yua n;char *q=quhou;/程序中必须有下面这一句输出,注意姓名!printf( '、* 丁家雄_12_3的运行结果:*n");printf("请输入

9、你的一串字符:n"); gets(yua n);while (*y!= '0')if (*y!='')*q=*y;q+;y+;strcpy(yua n, quhou);printf("去掉空格后的字符串为:n");printf( "%s",yua n);2)编写程序实现输入一行任意文本,然后将其置反,并分别统计输出字母和数字的个数 提示:本题有很多方法可实现,要求必须用指针来实现 程序框架#i nclude<stdio.h>void mai n()/下面定义你需要的变量/程序中必须有下面这一句输出,注

10、意姓名! prin tf("* 丁家雄 _12_4 的运行结果:*n");/下面写上你的程序代码你的程序及运行结果:#include <stdio.h>#include <string.h>#defi ne max100void main()/下面定义你需要的变量char s1 maX;char s2 maX=""char *p1,*p2;int i;int j;int num1=0;int num2=0;/程序中必须有下面这一句输出,注意姓名!printf( "* 丁家雄_12_4的运行结果:*n");/下面

11、写上你的程序代码|printf("请输入你的文本:n");gets(s1);p1=s1+strle n( s1)-1;p2=s2;for (i=0;i<strlen(s1);i+)if (*p1>='A' && *p1<='Z' |*p1>='a' && *p1<='z')n um1+;else if (*p1>= '0' && *p1<= '9')n um2+;二*p2=*p1;p1-;p

12、2+;printf("置反后的字符串为:n");for (j=O;j<i;j+)printf( "%c",s2j);二printf( "n");printf("该行文本中,字母有 (个,数字有%(个" ,num1,num2);4阅读理解程序(扩充自做)仔细阅读理解潘sir课件及教材中本章的示例程序,将你阅读理解的程序的源码及运行情况截图依次贴在下面的空白处:要求:数量不设上限如果能对这些程序进行一些自己理解后的改造就更好实验结果:程序1:课件XXX程序程序2:教材例11.x程序3:课件11章15页程序:#include <stdio.h>mai n()char *s ="tha nk you"char *t ;printf( "%sn" , s);t = s+6 ;puts(t);运行结果:教材例题11.1#include <stdio.h>int main()int a5,*p;printf("输入五个数:n");for (p=a;p<a+5;p+)二seanf( "%d",p);for (p=a;p<a+5;p+)printf( "%4d",*p);

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 社会民生


经营许可证编号:宁ICP备18001539号-1