指针的应用,结构体的应用

指针的应用,结构体的应用

ID:44053085

大小:120.55 KB

页数:3页

时间:2019-10-18

指针的应用,结构体的应用_第1页
指针的应用,结构体的应用_第2页
指针的应用,结构体的应用_第3页
资源描述:

《指针的应用,结构体的应用》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库

1、指针程序一:#includevoidmain(){inti;char*day_name(intn);printf("inputDayNo:");scanf(”%d",&i);if(i<0)exit(l);printf("DayNo:%2d->%sM,i,day_name(i));}char*day_name(inln){staticchar*name[]={"Illegalday","Monday",”Tuesday",•'Wednesday",•Thursday",'•Friday","Saturday",“Sunday”};ret

2、um((n

3、

4、n>7)?namefO]:name[n]);}运行结果如下:程序分析:木程序中定义了一个指针型函数day.name,它的返回值指向一个字符串。该函数中定义了一个静态指针数组nameoname数组初始化赋值为八个字符串,分别表示各个星期名及出错提示。形参n表示与星期名所对应的整数。在主函数中,把输入的整数i作为实参,在printf语句中调用day_name函数并把i值传送给形参n0day_name函数中的return语句包含一个条件表达式,n值若大于7或小于1则把name[0]指针返回主函数输出出错提示字符串"Illegalday'o否则返冋主

5、函数输出对应的星期名。主函数中的第7行是个条件语句,其语义是,如输入为负数(ivO)则中止程序运行退出程序。exit是一个库函数,exit⑴表示发生错误后退出程序,exit(O)表示正常退出。本程序是通过指针函数,输入一个1〜7之间的整数,输岀对应的星期名。指针程序二:#includeintmax(intajntb){if(a>b)returna;elseretumb;}voidmain(){intmax(inta,intb);int(*pmax)();intx,y,z;pmax=max;printf(Hinputtwonumbers:n

6、);scanf(”%d%d“,&x,&y);z=(*pmax)(x,y);printf(Hmaxmum=%d*z);}运行结果:inputtwonumbers:2345maxinuiiF45inputtwonumbers:7869maxmuiD=78程序分析:这个程序是用指针函数对两个数进行求最大值,运行中输入两个数,程序自动求出两个数中大者,并输出较大数的值。实际上,可以利用求最大值的函数对若干个数求最大值,可以将函数调用作为一个函数的参数,它的值又作为另一次调用的实参,如此进行很多次便可求出若干个数的最大值。结构体程序:#include

7、#includevoidmain()struetstudent{longnum;charname[20];charsex;floatscore;};structstudentstu1;structstudent*p;p二&stu1;stu1.num二89101;strepy(stu_Lname,订in");stu丄sex=,Nf;stu_1・score=89.5;printf("%ld%s%c%frT,stu1.num,stu1.name,stu1.sex,stu1.score);printfCO;printfCz%ld

8、n%s%c%fz,,(*p).num,(*p)・name,(*p).sex,(*p).score);运行结果:程序分析:在指向结构体变量的指针的学习中,对结构体变量的赋值方式可以有多种,可以利用先定义一种结构体类型,定义以后再定义结构体变量,在定义变量的同时即对结构体变量赋初值,另外可以先定义了结构体变量再对结构体变量各元素分别引用赋初值,这时要注意用成员运算符•符号。开始调这个程序的时候,“strepy(stu_l.name,订irT);”这个语句我用的是stu_l.name=〃1订in〃,后来发现出现错误。所以在对各成员进行赋值的时候应该注意。

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

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

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