下面程序的输出结果是()。#include <iostream>using namespace std;void main( ){int i=8,*p=0; p

题目
下面程序的输出结果是()。include using namespace std;void main( ){int i=8,*p=0; p

下面程序的输出结果是( )。 #include <iostream> using namespace std; void main( ) { int i=8,*p=0; p = &i; coat<<p; }

A.0

B.变量i的地址

C.*p=0; 是错误的,因为不可给指针型变量赋予常数值

D.8

参考答案和解析
正确答案:B
解析:可以把0赋给指针变量。
如果没有搜索结果或未解决您的问题,请直接 联系老师 获取答案。
相似问题和答案

第1题:

若有以下程序 include int a[ ]={2,4,6,8}; main( ) { int i; int *p=a; for(i=0;i<4

若有以下程序

#include <stdio.h>

int a[ ]={2,4,6,8};

main( )

{ int i;

int *p=a;

for(i=0;i<4;i++) a[i]=*p;

printf("%d\n",a[2]);}

上面程序的输出结果是

A.6

B.8

C.4

D.2


正确答案:D
解析:在C语言中,数组元素下标是从0开始的;指针变量p指向数组的首地址。for循环语句中,指针变量 p始终指向数组的首地址,因而执行循环赋值语句后数组各元素的值均变为2。

第2题:

请读程序:includeint a[]={2,4,6,8,};main(){int i; int *p=a; for( i=0;i<4;i++)a[i]

请读程序: #include <stdio.h> int a[]={2,4,6,8,}; main() { int i; int *p=a; for( i=0;i<4;i++) a[i]=*p++; priatf("%d\n",a[2]); } 上面程序的输出结果是( )。

A.6

B.8

C.4

D.2


正确答案:A
解析:本题考查通过指针引用数组元素。程序通过a[i]=*p++;语句,循环地将2赋给a[0],4赋给a[1],6赋给a[2],8赋给a[3],所以输出结果为6。

第3题:

请读程序: includeint a[]={2,4,6,8};main (){ int i;int * p=a;for(i=0;i<4;i + +)a[

请读程序: # include<stdio.h> int a[]={2,4,6,8}; main ( ) { int i; int * p=a; for(i=0;i<4;i + +)a[i]=* p + +; printf("%d\n”,a[2]); } 上面程序的输出结果是 ( )

A.6

B.8

C.4

D.2


正确答案:A

第4题:

若有以下程序includeint a[]={2,4,6,8};main(){int i; int *p=a; for(i=0;i<4;i++)a[i

若有以下程序 #include <stdio.h> int a[]={2,4,6,8}; main() { int i; int *p=a; for(i=0;i<4;i++)a[i]=*p; printf("%d\n",a[2]);} 上面程序输出结果是

A.6

B.8

C.4

D.2


正确答案:D
解析:在C语言中,数组元素下标是从0开始的;指针变量p指向数组的首地址。for循环语句中,指针变量p始终指向数组的首地址,因而执行循环赋值语句后数组各元素的值均变为2。

第5题:

下面程序的输出结果是_______。includemain(){char*p[]={"DOOL","OPK","H","SP"}; int

下面程序的输出结果是_______。 #include<stdio.h> main() { char*p[]={"DOOL","OPK","H","SP"}; int i; for (i=3;i>=0;i-,i-) printf("%c",*p[i]); printf("\n"); }

A.SO

B.SP

C.SPOPK

D.SHOB


正确答案:A
解析:p[0]存放的是“BOOL\0”的首地址;p[1]存放的是“OPK\0”的首址等。在printf语句中输出的*p[i]表示p[i]字符串的第一个字符。在for循环中,i的初值为3,那么输出的第一个字符为“S”,接着两次i-,则输出的值为*p[1],即字符“0”,所以本题的输出为SO。

第6题:

若有以下程序includeint a[]={2,4,6,8};main(){int i;int *p=a;for(i=0;i<4;i++)a[i]=

若有以下程序 #include<stdio.h> int a[]={2,4,6,8}; main() { int i; int *p=a; for(i=0;i<4;i++)a[i]=*p; printf("%d\n",a[2]);} 上面程序的输出结果是

A.6

B.8

C.4

D.2


正确答案:D
解析: 在C语言中,数组元素下标是从0开始的;指针变量p指向数组的首地址。for循环语句中,指针变量p始终指向数组的首地址,因而执行循环赋值语句后数组各元素的值均变为2。

第7题:

若有以下程序:includeint a[]={2,4,6,8};main(){int i; int *p=a; for(i=0;i<4;i++)a[

若有以下程序: #include<stdio.h> int a[]={2,4,6,8}; main() { int i; int *p=a; for(i=0;i<4;i++) a[i]=*p; printf("%d\n",a[2]); } 上面程序的输出结果是( )。

A.6

B.8

C.4

D.2


正确答案:D
解析:在C语言中,数组元素的下标是从0开始的。for循环语句中,指针变量p始终指向数组a的首地址,因而执行循环赋值语句后数组各元素的值均变为2。

第8题:

下面程序的输出结果是() include main( ) { int i,a[ ]={2,4,6,8}; int * p=a;

下面程序的输出结果是 ( ) # include<stdio.h> main( ) { int i,a[ ]={2,4,6,8}; int * p=a; for(i=0;i<4;i+ +)a[i]=* p+ +; printf(*%d\n",a[2]); }

A.6

B.8

C.4

D.2


正确答案:A

第9题:

下面程序的输出结果是______。 include main() {char *p[]="BOOL","OPK","H","SP"};int

下面程序的输出结果是______。 #include<stdio.h> main() { char *p[]="BOOL","OPK","H","SP"}; int i; for(i=3;i>=0;i-,i-) printf("%c",*p[i]); printf("\n"); }

A.SO

B.SP

C.SPOPK

D.SHOB


正确答案:A
解析:p[0]存放的是“BOOL\0”的首地址;p[1]存放的是“OPK\0”的首址等。在printf语句中输出的*p[i]表示p[i]字符串的第—个字符。在for循环中,i的初值为3,那么输出的第—个字符为“S”,接着两次i-,则输出的值为*p[1],即字符“O”,所以本题的输出为SO。