C语言习题集合(指针)(4)
第七章 指 针 ·16·
#include \string.h\ main() {
char s[80], *t1, *t2; int m; gets(s); m=strlen(s); t1=s;
t2=【s+m-1】; while(t1 { if (*t1!=*t2) break; else { t1++; 【t2--】;} } if (t1 } 13.当运行以下程序时,从键盘输入:apple↙ tample↙ ???? 则下面程序的运行结果是__aptample______。 #include \stdio.h\ main() { char s[80], *t; t=s; gets(t); while (*(++t)!='\\0') if (*t=='a') break; else { t++; gets(t); } puts(t); } 14.当运行以下程序时,从键盘输入6↙,则下面程序的运行结果是__????___97671___。 #include \stdio.h\ #include \string.h\ main() { char s[]=\97531\, c; c=getchar(); f(s,c); puts(s); } f(char *t, char ch) { while (*(t++)!='\\0'); 第七章 指 针 ·17· while(*(t-1) *(t--)=*(t-1); *(t--)=ch; } ????15.若有定义:int a[]={1,2,3,4,5,6,7,8,9,10,11,12}, *p[3], m; 则下面程序段的输出是 ____11____。 for ( m=0; m<3; m++) p[m]=&a[m*4]; printf(\%d\\n\, p[2][2]); 16.下面程序的运行结果是_1,2_______。 #include \stdio.h\ main() { char s[]=\1357\, *t; t=s; printf(\%c, %c\\n\, *t, ++*t); } 17.以下程序将数组a中的数据按逆序存放。请填空。 #include \stdio.h\ #define M 10 main() { int a[M], m, n, temp; for( m=0; m m=0; n=M-1; while(m temp=*(a+m); 【*(a+m)=*(a+n)】; *(【a+n】)=temp; m++; n--;} for (m=0;m } 18.以下程序在a数组中查找与x值相同的元素的所在位置。请填空。 #include \stdio.h\ main() { int a[11], x, m; printf(\please input ten numbers:\\n\); for(m=1;m<11;m++) scanf(\%d\, a+m); printf(\please input x:\); 第七章 指 针 ·18· scanf(\%d\, &x); *a=【x】; m=10; while (x!=*(a+m)) 【m--】; if (m>0) printf(\]'s position is : M\\n\, x, m); else printf(\%d not been found!\\n\, x); } 19.以下程序的功能是________。 #include \stdio.h\ main() { char * s[]=={ \PASCAL\, \FORTRAN\, \COBOL\, \BASIC\}; char **p; int n; p=s; for (n=0;n<4;n++) printf(\%s\\n\, *(p++)); } 20.若有定义和语句:int a[4]={1,2,3,4},*p; p=&a[2]; ,则*--p的值是_2_______。 21.若有定义和语句:int a[2][3]={0}, (*p)[3]; p=a;,则p+1表示数组__指向数组a的第二行。 22.若有如下定义和语句: int *p[3], a[6], n; for (m=0;m<3;m++) p[m]=&a[2*m]; 则*p[0]引用的是a数组元素【a[0]】;*(p[1]+1)引用的是a数组元素【a[3]】。 23.若有以下定义和语句,在程序中引用数组元素a[m]的四种形式是:【*(p+m)】、【*(a+m)】、【p[m]】和a[m]。(假设m 已正确说明并赋值) int a[10], *p; p=a; 24.下面程序的输出结果是__1 3 5 7 9 11______。 #include \stdio.h\ main() { int b[2][3]={1,3,5,7,9,11}; int *a[2][3]; int i,j; int **p, m; for(i=0;i<2;i++) for(j=0;j<3;j++) a[i][j]=*(b+i)+j; p=a[0]; for(m=0;m<6;m++) { 第七章 指 针 ·19· printf(\M\, **p); p++; } } 25.定义语句int *f();和int (*f)();的含义分别为【返回值的类型为int *型的函数f】和【指向返回值的类型为int 型的函数的指针】。 26.请根据运行结果,完成main函数中的填空。 Array_add( int a[], int n) { int m, sum=0; for (m=0;m main() { int Array_add(int a[], int n); static int a[3][4]={2,4,6,8,10,12,14,16,18,20,22,24}; int *p, total1, total2; 【int (*pt)()】; pt=Array_add; p=a[0]; total1=Array_add(p,12); total2=(*pt)(【a[0],12】); printf(\total1=%d\\ntotal2=%d\\n\, total1,total2);12 } 运行结果:total1=156 total2=156
相关推荐:
- [互联网资料]2022年厦门大学机电工程系824机械设计
- [互联网资料]东南大学2022年硕士研究生拟录取名单公
- [互联网资料]能源调研报告(精选多篇)
- [互联网资料]初三英语下学期 中考英语 语法填空训练
- [互联网资料]2022内蒙古选调生行测常识备考:新事物
- [互联网资料]自驾必备!在新西兰租什么样的车自驾游
- [互联网资料]佛教素食菜谱44页未完
- [互联网资料]盈利能力分析外文翻译
- [互联网资料]2022年南昌航空大学音乐学院736马克思
- [互联网资料]优选外贸跟单实习报告总结(精品版)
- [互联网资料]银行新员工培训总结
- [互联网资料]2_year_visa_new_guidance_190316
- [互联网资料]天津市五校宝坻一中静海一中杨村一中芦
- [互联网资料]2007--2008学年第一学期高三数学宁波市
- [互联网资料]Chromatic framework for vision in ba
- [互联网资料]幼儿园大班上学期美术教案《心愿树》含
- [互联网资料]2022年华中农业大学信息学院820微型计
- [互联网资料]硬盘坏道的表现 __硬盘使用久了
- [互联网资料]江苏省2016年会计从业资格考试《会计基
- [互联网资料]公共场所卫生监督试卷全解
- 高级英语第一册所有修辞方法及例子总结
- 综合交通枢纽规划与城市发展
- 沃尔玛的企业文化案例分析
- 美国Thanksgiving Day 感恩节 介绍
- PEP六年级英语上册Unit6How do you fee
- 最齐全的中国大型商场购物中心名单
- 数据结构实验报告八—哈夫曼编译码
- 杭州市余杭区人民政府(通知)
- 七年级语文成语运用专项训练
- 微观经济学第三章 消费者行为 课后习题
- 对_钱学森之问_的思考
- Excel_三级联动_下拉菜单
- 办公用品需求计划申请表
- 对外汉语教材必须要知道的发展史
- 挑战杯大学生学术科技作品竞赛作品申报
- 举办民办教育培训机构应具备下列条件
- 太阳能路灯项目设计方案
- 2013年八年级上最新人教版新教材Unit3I
- 【历史】 6-4 《近代科学之父牛顿》 课
- 高中生物《第四章 第二节 探讨加酶洗衣




