- 1、本文档共3页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
指针的应用,结构体的应用
指针程序一:
#includestdio.h
void main()
{
int i;
char *day_name(int n);
printf(input Day No:\n);
scanf(%d,i);
if(i0) exit(1);
printf(Day No:%2d--%s\n,i,day_name(i));
}
char *day_name(int n){
static char *name[]={ Illegal day,
Monday,
Tuesday,
Wednesday,
Thursday,
Friday,
Saturday,
Sunday};
return((n1||n7) ? name[0] : name[n]);
}
运行结果如下:
程序分析:本程序中定义了一个指针型函数 day_name,它的返回值指向一个字符串。该函数中定义了一个静态指针数组 name。name 数组初始化赋值为八个字符串,分别表示各个星期名及出错提示。形参 n 表示与星期名所对应的整数。在主函数中,把输入的整数 i 作为实参,在printf 语句中调用 day_name 函数并把 i 值传送给形参 n。day_name 函数中的 return 语句包含一个条件表达式,n 值若大于 7 或小于 1 则把 name[0]指针返回主函数输出出错提示字符串“Illegal day”。否则返回主函数输出对应的星期名。主函数中的第 7行是个条件语句,其语义是,如输入为负数(i0)则中止程序运行退出程序。exit 是一个库函数,exit(1)表示发生错误后退出程序,exit(0)表示正常退出。
本程序是通过指针函数,输入一个 1~7 之间的整数,输出对应的星期名。
指针程序二:
#includestdio.h
int max(int a,int b)
{
if(ab)return a;
else return b;
}
void main()
{
int max(int a,int b);
int(*pmax)();
int x,y,z;
pmax=max;
printf(input two numbers:\n);
scanf(%d%d,x,y);
z=(*pmax)(x,y);
printf(maxmum=%d,z);
}
运行结果:
程序分析:这个程序是用指针函数对两个数进行求最大值,运行中输入两个数,程序自动求出两个数中大者,并输出较大数的值。实际上,可以利用求最大值的函数对若干个数求最大值,可以将函数调用作为一个函数的参数,它的值又作为另一次调用的实参,如此进行很多次便可求出若干个数的最大值。
结构体程序:
#includestdio.h
#includestring.h
void main()
{
struct student
{
long num;
char name[20];
char sex;
float score;
};
struct student stu_1;
struct student *p;
p=stu_1;
stu_1.num=89101;
strcpy(stu_1.name,lilin);
stu_1.sex=M;
stu_1.score=89.5;
printf(%ld\n%s\n%c\n%f\n,stu_1.num,stu_1.name,stu_1.sex,stu_1.score);
printf(\n);
printf(%ld\n%s\n%c\n%f\n,(*p).num,(*p).name,(*p).sex,(*p).score);
}
运行结果:
程序分析:
在指向结构体变量的指针的学习中,对结构体变量的赋值方式可以有多种,可以利用先定义一种结构体类型,定义以后再定义结构体变量,在定义变量的同时即对结构体变量赋初值,另外可以先定义了结构体变量再对结构体变量各元素分别引用赋初值,这时要注意用成员运算符.符号。
开始调这个程序的时候,“strcpy(stu_1.name,lilin);”这个语句我用的是stu_1.name= lilin,后来发现出现错误。所以在对
您可能关注的文档
- 情人节表白送什么花?.doc
- 情到细处自然真.doc
- 惠水二中2011——2012学年度高一生物第四次月考试题及答案.doc
- 感恩作文155.doc
- 成人教育班大学语文作业答案全解2.doc
- 感知农场春季清爽菜--蚝油西兰花.doc
- 成人高考百问百答分析表.doc
- 惠州2011届高三第一次调研考理科综合试题.doc
- 成才第一步,从爱上作业开始.doc
- 成本分布分析图1.doc
- 2024年浙江温州永嘉县事业单位引进高层次人才24人笔试历年典型考题及考点研判与答案详解.docx
- [金华]浙江省金华武义县融媒体中心招聘事业编制工作人员 笔试历年典型考题及考点剖析附答案详解.docx
- [辽宁]2024年辽宁教育学院招聘工作人员 笔试历年典型考题及考点剖析附答案详解.docx
- [深圳]2024年广东深圳市福田区发展和改革局招聘特聘人员笔试历年典型考题及考点剖析附答案详解.docx
- [温州]浙江温州泰顺县图书馆招聘编外工作人员笔试历年典型考题及考点剖析附答案详解.docx
- [湖南]2024年湖南中医药大学护理学院科研助理岗位招聘笔试历年典型考题及考点剖析附答案详解.docx
- [湖南]2024年湖南长沙民政职业技术学院高层次人才招聘95人笔试历年典型考题及考点剖析附答案详解.docx
- [天津]2024年天津市市场监督管理委员会事业单位招聘34人笔试历年典型考题及考点剖析附答案详解.docx
- [深圳]2024年广东深圳市福田区福保街道办事处招聘场馆管理岗笔试历年典型考题及考点剖析附答案详解.docx
- [湖北]2024年湖北省农业科学院招聘29人笔试历年典型考题及考点剖析附答案详解.docx
文档评论(0)