- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
一、基础能力训练:
编写一个程序实现功能:将字符串”omputer Secience”赋给一个字符数组,然后从第一个字母开始间隔的输出该串,用指针完成。
#include stdio.h
#include string.hint main()
{
char str[]=”Computer Science”;
int flag=1;
char *p=str;
while(*p)
{
if ( flag )
{
printf(“%c”,*p);
}
flag = (flag + 1) % 2;
p++;
}
printf(“\n”);
return 0;
}
输入一个字符串,用指针求出字符串的长度。
#include stdio.h
int main()
{
char str[20], *p;
int length=0;
printf(“Please input a string: ”);
gets(str);
p=str;
while(*p++)
{
length++;
}
printf(“The length of string is %d\n”, length);
return 0;
}
用指针将数组s[8]={1,2,3,4,5,6,7,8}中的值逆序存放。
#include stdio.h
int main()
{
int s[8]={1,2,3,4,5,6,7,8};
int *p,*q,count,swap;
count = sizeof(s)/sizeof(int);
p=s; q=s+count-1;
while( p q )
{
swap = *p;
*p = *q;
*q = swap;
p++;
q--;
}
for(p=s; ps+count; p++) printf(“%d ”, *p);
return 0;
}
4)编写一个程序实现功能:将两个字符串合并为一个字符串并且输出,用指针实现。
char str1[20]={“Hello ”}, str2[20]={“World ”};
#include stdio.h
int main()
{
char str1[20]={“Hello ”}, str2[20]={“World ”};
char *p=str1, *q=str2;
while( *p ) p++;
while( *q )
{
*p = *q;
p++;
q++;
}
*p = ‘\0’;
printf(“%s\n”, str1);
return 0;
}
5) 编写一个程序实现以下功能:用指针数组处理一个二维数组,要求求出二维数组所有元素的和。
int array[3][4]={ {7, 10, -2, 3},
{14, 30, 6, -15},
{0, 5, 27, -7}
}
#include stdio.h
int main()
{
int array[3][4]={{7,10,-2,3},{14,30,6,-15},{0,5,27,-7}};
int *pa[3]={array[0], array[1], array[2]}, i, j;
int sum=0;
for(i=0;i3;i++)
{
for(j=0;j4;j++,pa[i]++)
{
sum+=*pa[i];
}
}
printf(%d\n,sum);
return 0;
}
二、进阶能力落实:
已知数组a[10]和b[10]中元素的值递增有序,用指针实现将两个数组中的元素按递增的顺序输出。
#include stdio.h
int main()
{
int a[10]={1, 4, 12, 13, 14, 20, 25, 32, 33, 40};
int b[10]={0, 3, 15, 18, 19, 25, 39, 43, 44, 50};
int *p=a, *q=b;
while( (p (a+
您可能关注的文档
- 英语语法教学反思.doc
- 英语阅读理解专项训练.doc
- 营养 食物形式.doc
- 营养指导师技能练习题四级 试题及答案.doc
- 硬件课程设计模板.doc
- 用 Grid++Report 实现支票打印.doc
- 用C#编写ActiveX控件(红马).doc
- 用C_实现CS模式下软件自动在线升级.doc
- 用CAD做计算截面特性教程.doc
- 用Dos批处理取1天之前的日期.doc
- 期末考试质量分析主题班会讲课PPT课件.pptx
- 绿色插画卡通幼儿园世界无烟日PPT.pptx
- 生物多样性保护主题班会PPT课件.pptx
- 幼儿园全国爱眼日科普教育主题班会PPT课件.pptx
- 2025年全国起重机操作证-特种设备作业人员考试题库(含答案).doc
- 2025年全国煤炭企业(一通三防安全管理人员)考试题库(含答案).doc
- 心理健康与心理调适专业技术人员全真模拟考试试卷[2套]有答案.doc
- 2025年全国烟花爆竹经营单位主要负责人考试题库(含答案)2.doc
- 2025年全国建筑行业架子工证考试题库(含答案).doc
- 省级机关医院工作人员医师职员招聘考试笔试试卷【有答案】.doc
文档评论(0)