指针1-60
更新时间:2024-03-21 16:06:01 阅读量: 综合文库 文档下载
题目部分,(卷面共有60题,180.0分,各大题标有题量和总分) 一、单项选择题(60小题,共180.0分) (3分)[1]以下程序的输出结果是 #include
void fun(char *w, int m) {char s, *p1, *p2; p1=w; p2=w+m-1; while(p1 {s=*p1++; *p1=*p2--; *p2=s;} } main( ) {char a[ ]=\; fun(a, strlen(a)); puts(a); } A、GEFDCBA B、AGADAGA C、AGAAGAG (3分)[2]下列语句执行后的结果是 y=5; p=&y; x=*p++; A、x=5,y=5 B、x=5,y=6 C、x=6, y=5 (3分)[3]以下程序的输出结果是 point(char *pt); main() {char b[4]={?a?, ?c?, ?s?, ?f?}, *pt=b; point(pt); printf(“%c\\n”, *pt); } point(char *p) {p+=3; } A、a B、c C、s D、f (3分)[4]在下列叙述中,正确的一条是 A、以下程序运行结果为Computer and c: main() {char str[4]; str=“Computer and c”; printf(“%s\\n”, str); } B、下面两种表示方式等价 (1) int fun(int x,int y) (2) int fun(x,y) int x,y; C、若输入1、2,以下程序的运行结果为12 main() D、GAGGAGA D、x=6, y=6 {int *p,i,a[2]; p=a; for(i=0;i<2;i++) scanf(“%d”,p++); for(i=0;i<2;i++,p++) printf(“%d”,*p); } D、以下程序的运行结果为3 main() {int *p,a[5]={1,3,4,5,6}; p=a; printf(“%d”,*p++); } (3分)[5]以下程序的输出结果为 move(int array[6], int n, int m) {int *p, array_end; array_end=*(array+n-1); for(p=array+n-1;p>array;p--) *p=*(p-1); *array=array_end; m--; if(m>0) move (array, n, m); } main() {static int number[6]={1, 2, 3, 4, 5, 6}; int m=4, j; move(number, 6, m); for(j=0;j<5;j++) printf(“%d,”, number[i]); printf(“%d”, number[5]); } A、1,2,3,4,5,6 B、6,5,4,3,2,1 C、3,4,5,6,1,2 D、6,1,2,3,4,5 (3分)[6]以下程序的输出结果为 f(char *s) {char *p=s; while(*p!=?\\0?) p++; return(p-s); } main() { printf(“%d\\n”, f(“12345678”)); } A、12345678 B、7 C、1 (3分)[7]以下程序的输出结果为 #idefine FORMAT “%u, %u” main() {int a[3][4]={1, 3, 5, 7, 9, 11, 13, 15, 17, 19, 21, 23}; D、8 printf(“\\n”); printf(FORMAT, **a, *a[0]); printf(FORMAT, *(a[0]+1), *&a[0][1]); printf(FORMAT, a[1][0], *(*(a+1)+0)); } A、3,3 5,5 9,9 B、1,1 3,3 9,9 C、1,1 3,3 5,5 D、5,5 7,7 9,9 (3分)[8]以下程序的输出结果是 sub(int *s, int y) {static int t=3; y=s[t]; t--; } main() {int a[ ]={1, 2, 3, 4}, n; int x=4; for(n=0; n<4; n++) {sub(a, x); printf(“%d”, x); } printf(“\\n”); } A、1234 B、3333 C、4321 (3分)[9]在下列程序中,输出结果与其它程序不同的是A、main() {int a[10]; int i; for(i=0;i<10;i++) scanf(“%d”,&a[i]); printf(“\\n”); for(i=0;i<10;i++) printf(“%d”,a[i]); } B、main() {int a[10]; int i; for(i=0;i<10;i++) scanf(“%d”,&a[i]); printf(“\\n”); for(i=0;i<10;i++) printf(“%d”,*(a+i)); } C、main() {int a[10]; int i, *p; for(i=0;i<10;i++) scanf(“%d”,&a[i]); printf(“\\n”); for(p=a;p<(a+10);p++) printf(“%d”,*p); } D、main() {int a[10]; D、4444 int i, *p; for(i=0;i<10;i++) scanf(“%d”,&a[i]); printf(“\\n”); for(i=0;i<10;i++) printf(“%d”,*(p+i)); } (3分)[10]以下程序的输出结果是 sub(int x, int y, int *z) {*z=y-x+2;} main() {int a, b, c; sub(16, 7, &a); sub(9, a, &b); sub(a, b, &C、; printf(“%d, %d, %d\\n”, a, b, C、; } A、–7,- 14,-5 B、–7,-16,-9 C、–7,-12,-9 D、–9,-14,-5 (3分)[11]在下列语句中,其含义为“p为带回一个指针的函数,该指针指向整型数据”的定义语句是 A、int *p(); B、int **p; C、int (*p)(); D、int *p; (3分)[12]变量p为指针变量,若p=&a,下列说法不正确的是 A、&*p==&a B、*&a==a C、(*p)++==a++ D、*(p++)==a++ (3分)[13]在下列叙述中,正确的一条是 A、语句int *pt中的*pt是指针变量名 B、语句int *p=a;等价于int *p; p=&a[0]; C、运算符*和&都是取变量地址的运算符 D、已知指针变量p指向变量a,则&a和*p值相同,都是变量a的值 (3分)[14]以下程序段给数组所有的元素输入数据,则以下正确答案为 main() {int a[10], i=0; while (i<10) scanf(“%d”, __________ ); ? } A、a+(i++) B、&a[i+1] C、a+i D、&a[++i] (3分)[15]下面函数的功能是 sss (char *s, char *t) {while((*s)&&(*t)&&(*t= =*s)) s++, t++; return(*s-*t); } A、求字符串的长度 B、比较两个字符串的大小 C、将字符串s复制到字符串t中 D、将字符串s连接到字符串t中 (3分)[16]以下程序的输出结果是 fun(int *s, int n1, int n2) {int i, j, t; i=n1; j=n2; while(i {t=*(s+i); *(s+i)=*(s+j); *(s+j)=t; i++; j--; } } main( ) {int a[10]={1, 2, 3, 4, 5, 6, 7, 8, 9, 0}, i, *p=a; fun (p, 0, 3); fun (p, 4, 9); fun (p, 0, 9); for(i=0; i<10; i++) printf(\; printf(“\\n”); } A、0 9 8 7 6 5 4 3 2 1 B、4 3 2 1 0 9 8 7 6 5 C、5 6 7 8 9 0 1 2 3 4 D、0 9 8 7 6 5 1 2 3 4 (3分)[17]下面各语句行中,能正确进行赋字符串操作的语句行是 A、char st[4][5]={“ABCDE”}; B、char s[5]={?A?, ?B?, ?C?, ?D?, ?E?}; C、char *s; s= “ABCDE”; D、char *s; scanf(“%s”,s); (3分)[18]以下程序的输出结果是 #include {char *s1=\,*s2=\; s1++;s2++; printf(\,strcmp(s1, s2)); } A、正数 B、负数 C、零 D、不确定的值 (3分)[19]请读程序: #include {if(*c<=?Z?&&*c>=?A?) *c-=?A?-?a?; return *c; } main( ) {char s[81], *p=s; gets (s); while(*p) {*p=fun(p); putchar(*p); p++;} putchar(?\\n?); } 若运行时从键盘上输入OPEN THE DOOR<回车>,则上面程序的输出结果为 A、oPEN tHE dOOR B、open the door C、OPEN THE DOOR D、Open The Door (3分)[20]在下面关于指针的说法中,错误的一条是 A、变量的指针就是变量的地址 B、可以将一个整型量或任何其他非地址类型的数据赋给一个指针变量 C、一个指针变量只能指向同一个类型的变量 A、xyabcAB B、abcABz C、ABabcz D、xycdBCD (3分)[48]下列程序的输出结果是 main( ) {int a[5]={2, 4, 6, 8, 10}, *p, **k; p=a; k=&p; printf(“%d ”, *(p++)); printf(“%d\\n”, **k); } A、4 4 B、2 2 C、2 4 D、4 6 (3分)[49]执行以下程序后,y的值是 main( ) {int a[ ]={2, 4, 6, 8, 10}; int y=1, x, *p; p=&a[1]; for(x=0;x<3;x++) y+=*(p+x); printf(“%d\\n”, y); } A、17 B、18 C、19 D、20 (3分)[50]若已定义:int a[9], *p=a; 并在以后的语句中未改变p的值,不能表示a[1]地址的表达式是 A、p+1 B、a+1 C、a++ D、++p (3分)[51]以下程序的输出结果是 main( ) {char s[ ]=”ABCD”, *p; for(p=s+1; p A、ABCD BCD CD D B、A B C D C、B C D D、BCD CD D (3分)[52]假定下列程序的可执行文件名为prg . exe,则在该程序所在的子目录下输入命令行: prg hello good<回车>后,程序的输出结果是 main(int argc, char *argv[ ]) {int i; if(argc<=0) return; for(i=1; i A、hello good B、hg C、hel D、hellogood (3分)[53]若有以下调用语句,则不正确的fun函数的首部是 main() { ? int a[50], n; ? fun (n, &a[9]); ? } A、void fun(int m,int x[ ]) B、void fun(int s,int h[41]) C、void fun(int p,int *s) D、void fun(int n,int a) (3分)[54]有如下说明 int a[10]={1,2,3,4,5,6,7,8,9,10},*p=a; 则数值为9的表达式是 A、*p+9 B、*(p+8) C、*p+=9 D、p+8 (3分)[55]以下程序执行后,a的值是 main() {int a, k=4, m=6, *p1=&k, *p2=&m; a=p1= =&m; printf(“%d\\n”, a); } A、4 B、1 C、0 D、运行时出错,a无定值 (3分)[56]有如下程序: main() {char ch[2][5]={“6937”,“8254”},*p[2]; int i,j,s=0; for(i=0;i<2;i++) p[i]=ch[i]; for(i=0;i<2;i++) for(j=0;p[i][j]>?\\0?;j+=2) s=10*s+p[i][j]-?0?; printf(“%d\\n”,s); } 该程序的输出结果是 A、69825 B 63825 C、6385 D、693825 (3分)[57]以下程序运行后,输出结果是 main() {char *s=“abcde”; s+=2; printf(“%ld\\n”, s); } A、cde B、字符c的ASCII码值 C、字符c的地址 D、出错 (3分)[58]以下程序的输出结果是 main() {char a[ ]=“programming”, b[ ]= “language”; char *p1, *p2; int i; p1=a; p2=b; for(i=0; i<7; i++) if(*(p1+i)= =*(p2+i)) printf(“%c”, *(p1+i)); } A、gm B、rg C、or D、ga (3分)[59]设有如下定义: int arr[ ]={6, 7, 8, 9, 10}; int *ptr; 则下列程序段的输出结果是 ptr=arr; *(ptr+2)+=2; printf(“%d, %d\\n”, *ptr, *(ptr+2)); A、8,10 B、6,8 C、7,9 D、6,10 (3分)[60]设p1和p2是指向同一个int型一维数组的指针变量,k为int型变量,则不能正确执行的语句是 A、k=*p1+*p2; B、p2=k; C、p1=p2; ====================答案==================== 答案部分,(卷面共有60题,180.0分,各大题标有题量和总分) 一、单项选择题(60小题,共180.0分) (3分)[1][答案] C (3分)[2][答案] A (3分)[3][答案] A (3分)[4][答案] B (3分)[5][答案] C (3分)[6][答案] D (3分)[7][答案] B (3分)[8][答案] D (3分)[9][答案] D (3分)[10][答案] A (3分)[11][答案] A (3分)[12][答案] D (3分)[13][答案] B (3分)[14][答案] A (3分)[15][答案] B D、k=*p1*(*p2); (3分)[16][答案] C (3分)[17][答案] C (3分)[18][答案] A (3分)[19][答案] B (3分)[20][答案] B (3分)[21][答案] A (3分)[22][答案] B (3分)[23][答案] B (3分)[24][答案] D (3分)[25][答案] C (3分)[26][答案] B (3分)[27][答案] B (3分)[28][答案] B (3分)[29][答案] C (3分)[30][答案] D (3分)[31][答案] C (3分)[32][答案] B (3分)[33][答案] C (3分)[34][答案] D (3分)[35][答案] A (3分)[36][答案] C (3分)[37][答案] A (3分)[38][答案] B (3分)[39][答案] C (3分)[40][答案] B (3分)[41][答案] A (3分)[42][答案] D (3分)[43][答案] D (3分)[44][答案] A (3分)[45][答案] D (3分)[46][答案] D (3分)[47][答案] D (3分)[48][答案] C (3分)[49][答案] C (3分)[50][答案] C (3分)[51][答案] D (3分)[52][答案] B (3分)[53][答案] D (3分)[54][答案] B (3分)[55][答案] C (3分)[56][答案] C (3分)[57][答案] C (3分)[58][答案] D (3分)[59][答案] D (3分)[60][答案] B
正在阅读:
指针1-6003-21
第12讲 计算机网络安全知识08-28
Win7任务管理器对进程了如指掌06-19
桐乡市农村居民建房管理办法12-07
2015年全国初中数学联合竞赛试题10-19
2018年高考浙江卷第9题(平面向量)-2018年高考数学经典题分析及针05-24
引上光缆是光缆工作量的一种名称04-04
试论述强制招标的范围11-04
材料力学(填空、简答、判断、选择)03-29
- 多层物业服务方案
- (审判实务)习惯法与少数民族地区民间纠纷解决问题(孙 潋)
- 人教版新课标六年级下册语文全册教案
- 词语打卡
- photoshop实习报告
- 钢结构设计原理综合测试2
- 2014年期末练习题
- 高中数学中的逆向思维解题方法探讨
- 名师原创 全国通用2014-2015学年高二寒假作业 政治(一)Word版
- 北航《建筑结构检测鉴定与加固》在线作业三
- XX县卫生监督所工程建设项目可行性研究报告
- 小学四年级观察作文经典评语
- 浅谈110KV变电站电气一次设计-程泉焱(1)
- 安全员考试题库
- 国家电网公司变电运维管理规定(试行)
- 义务教育课程标准稿征求意见提纲
- 教学秘书面试技巧
- 钢结构工程施工组织设计
- 水利工程概论论文
- 09届九年级数学第四次模拟试卷
- 指针
- 60
- 2015年计算机内审
- 无领导小组讨论的经典面试题目及答案解析
- 感受新变化 喜迎十八大感悟十年蜕变 - 图文
- 如何赢得电子商务时代的未来?
- 2016-2017学年人教版一年级数学上册期中测试题
- 2018-2019年初中数学冀教版《八年级上》《第十五章 二次根式》《
- D调之家大学生校园主题餐厅创业经营项目商业计划书
- 实验一 熟悉SQL Server2008数据库、数据库和表的创建与管理
- (2016年秋季版)吉林省通化市七年级语文下册 第四单元 综合性学
- 与领导相处的8个原则
- 粤语拼音与中文对照
- 第五单元教案文档
- 安全管理工作流程图
- 湖北省第九届大学生化学(化工)学术创新成果报告会会议论文模板
- 物业管理综合能力复习
- 检修施工xc-第一册-商务通用
- 国际企业战略联盟成功和失败案例分析
- 2015年2月14日国内外时事政治
- 高考政治大二轮复习专题二生产劳动与经营提升卷52
- 2016年最新广西生态文明与可持续发展试题试题库