中南大学C语言实验(指针、结构体)

中南大学C语言实验(指针、结构体)

ID:41992590

大小:98.40 KB

页数:8页

时间:2019-09-05

中南大学C语言实验(指针、结构体)_第1页
中南大学C语言实验(指针、结构体)_第2页
中南大学C语言实验(指针、结构体)_第3页
中南大学C语言实验(指针、结构体)_第4页
中南大学C语言实验(指针、结构体)_第5页
资源描述:

《中南大学C语言实验(指针、结构体)》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库

1、实验七指针一、目的要求1.掌握指针的定义和使用指针变量;2.学会使用字符吊的指针和指向数组的指针变量;3.学会使用指向函数的指针变量;4.按实验内容要求完成全程程序设计后才允许上机。二、实验内容与步骤设计一个函数,它有三个形参(1)被查找的字符串St"(2)待查找的字符xCh;(3)在字符串址屮xCh出现的位置i=0,1,…它的返回值是在sh•中xCh出现的次数(若sti•中无xCh,则返回值=())三、上机要求1、键入待查的字符xCh;2、键入被杳的字符$str;3、调用该函数;4、打印它的返回值和出现的位置;5、允许重复执行,每次以清屏开始(用循环语句控制重复执行)。

2、四、提示xCh在str出现位置应设计为一整型指针,以便记下0〜N个位置(整数)。ifjui••(i)uC[oo[]jjsJuqo'q3xwip)unjjuit()qoj0§=dui9it(uipjs)qsnuj入)up?和)nd0SB9[ju(u)Xjo(n)入)ndAjuounono^§uoj^u)jiuud}(人二iduio堺&入冃dui0))j!:护aiq(iu==dui0j

3、

4、lM==dui0i)ji:()ip诩=digi(UTpis)qsnuj•(n«N/A

5、oqipuij】onUE3„)jjuud}(O==DJ!:()(unjd*)mtunj=unjd}(/==duiQj

6、

7、lA.==duiQj)ji}(M二idui训in尸idu®)引!qM;人尸diue:()(unjd*)mtp()unjjui:diuajjuqo}()UIVLUP!()A9pnfoui#char*p;clrscr();printf(,,xCh=n);xCh=getch();printf("%cstr=M,xCh);gets(str);p=&str[O];i=O;j=O;while(*p){if(*p==xCh){j++;printf

8、(MxCh:%dtu,i);}p=p+l;i++;returnj;Mian()版:#inckidcvoidmain()inti,j;charxCh,str[100],*p,temp;temp=,Y,;/*给temp赋初值Y,防止第一个while循环无法运行*/while(temp!='N,lltemp!=*n')/*如果temp不等于n或N时,进行循环*/{if(temp==,Y'lltemp=='y')/*当temp为y或Y时,进行卜•列循环,用于进行题目要求的操作*/{clrscr();/*清屏*/printf(,,xCh=,');/*在屏幕输出提

9、示xCh=*/xCh=getch();/*从屏幕读取一个字符赋给xCh(getch()和getchar()M区别:前者只要输入一个字符就结束输入过程,后者需要按回车或空格后才结束输入过程)*/printf(n%cstr=",xCh);/*在屏幕xCh=后面输出刚才输入的xCh的值,并提示用户输入str(因为我们用getch(),输入完字符后会自动结朿xCh的输入进入下一•指令的执行(在本题中,下一指令是:printf(u%cstr=H,xCh);),而不在屏幕输出刚才输入的字符)【不理解的话把该句改成{printf(“str=”);}看看输出结果就知道了]*/

10、gets(str);/*输入str*/p=&str[O];/*将指针地址指向str这个字符串的首字符位置*/i=0;j=0;while(*p)/*当p所指向的字符不为空字符时,进行判断循环*/{if(*p==xCh)/*当p所指向的字符为所需寻找的xCh吋,进行以下操作*/{i++;/*i自加1,用于累计str中xCh的数目*/printf(MxCh:%dtn,j);/*输出xCh在str中出现的位置*/}p=p+1;/*指针地址移向str的下个字符*/j++;/*j用于记录此时p的位置,在str中第一个字符时=0,第二个时=1,以此类推*/}讦(i==0)/*当str

11、中没冇xCh这个字符时,i=0*/{printf(MCanNotFindThexCh!i=%d",i);/*在屏幕中提示无法找到str中的xCh,并输出i=0*/}elseprintf(Mi=%dM,i);/*为换行*/printf(MParden>Y/N:u);fflush(stdin);/*清空计算机缓存*/temp=getch();/*从屏幕中读取一个字符赋给temp*/if(temp==Nlltemp=='n')/*当temp为N或n时*/break;/*跳出循环*/if(temp!='Y'&&temp!=

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。