云题海 - 专业文章范例文档资料分享平台

当前位置:首页 > c语言答案

c语言答案

  • 62 次阅读
  • 3 次下载
  • 2025/6/10 15:19:49

*p=*q;语句 4.已有定义int k=2; int *ptr1, *ptr2;且ptr1和ptr2均已指向变量k,下面不能正确执行的赋值语句是(B )。 A.k=*ptr1+*ptr2; B.ptr2=k; C.ptr1=ptr2; D.k=*ptr1*(*ptr2); 5.以下程序运行结果是( B )。 sub(int x ,int y ,int *z) { *z=y-x;} main()

{ int a ,b,c; sub(10,5,&a); sub(7,a,&b); sub(a,b,&c);

printf(\}

A.5,2,3 B.-5,-12,-7 C.-5,-12,-17 D.5,-2,-7 6.下面程序段的运行结果是( A )。 char *s=\s+=2;

printf(\

A.cde B.字符'c' C.字符'c'的地址 D.无确定的输出结果 7.若有以下定义,则对a数组元素地址的正确引用是(B )。 int a[5],*p=a;

A.*&a[5] B.a+2 C.*(p+5) D.*(a+2) 8.若有以下定义,则对a数组元素地址的正确引用是( A )。 int a[5],*p=a; A.p+5 B.*a+1 C.&a+1 D.&a[0] 9.若有以下定义,则p+5表示( A )。 int a[10],*p=a;

A.元素a[5]的地址 B.元素a[5]的值 C.元素a[6]的地址 D.元素a[6]的值 10.若有以下定义,且0≤i<6,则正确的赋值语句是( D )。 int s[4][6],t[6][4],(*p)[6]; A.p=t; B.p=s; C.p=s[i]; D.p=t[i]; 11.下面程序段的运行结果是(A )。 char *format= \int a=1,b=10; a+=b;

printf(format, \

A.for, \ B.format, \C.a+=b,a=11,b=10 D.以上结果都不对 12.下面程序段的运行结果是( D )。 char *p= \int a=111,b=10,c; c=a%b; p+=3;

printf(p,c,a,b);

A.1,a=111,b=10 B.a=1,b=111 C.a=111,b=10 D.以上结果都不对 13.下面程序的运行结果是( A )。 #include \

fun (int **a,int p[2][3]) { **a=p[1][1];} main ()

{ int x[2][3]={2,4,6,8,10,12},*p; p=(int *)malloc(sizeof(int)); fun (&p,x);

printf (\}

A.10 B.12 C.6 D.8 14.设有如下定义,则以下说法中正确的是( C )。 char *aa[2]={\

A.aa数组元素的值分别是\和ABCD\B.aa是指针变量,它指向含有两个数组元素的字符型一维数组 C.aa数组的两个元素分别存放的是含有四个字符的一维字符数组的首地址 D.aa数组的两个元素中各自存放了字符'a'和'A'的地址 15.设有以下定义,则下列能够正确表示数组元素a[1][2]的表达式是( D )。 int a[4][3]={1,2,3,4,5,6,7,8,9,10,11,12}; int (*prt)[3]=a,*p=a[0];

A.*((*prt+1)[2]) B.*(*(p+5)) C.(*prt+1)+2 D.*(*(a+1)+2) 16.下列程序的输出结果是( B )。 main()

{ int a[5]={2,4,6,8,10},*p,**k; p=a; k=&p;

printf(\printf(\} A.4 4 B.2 2 C.2 4 D.4 6 17.执行以下程序后,y的值是( C )。 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(\}

A.17 B.18 C.19 D.20 18.设有如下定义,则执行语句*--p;后*p的值是( B )。 int a[5]={10,20,30,40,50},*p=*a[2];

A.30 B.20 C.19 D.29 19.设有如下定义,则下列程序段中正确的是( C )。 char *st=\

A.char a[11], *p; strcpy(p=a+1,&st[4]); B.char a[11]; strcpy(++a, st); C.char a[11]; strcpy(a, st); D.char a[], *p; strcpy(p=&a[1],st+2); 20.若有以下说明和定义,在必要的赋值之后,对fun()函数的正确调用语句是( B )。 fun(int *c){ } main()

{ int (*a)()=fun,*b(),w[10],c; ┆ }

A.a(w); B.(*a)(&c); C.b=*b(w); D.fun (b); 21.有如下程序,该程序的输出结果是( C )。 main()

{ char ch[2][5]={\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(\}

A.69825 B.63825 C.6385 D.693825 二、填空题

1.指针运算符&和*分别称为 取址运算 和 取值 运算。 2.当用指针变量作为函数参数时,此时的参数传递是 地址 传递。 3.对于二维数组arr[5][5],arr,*arr,&arr[0],arr[2]+3,*(arr+2), *(arr[2]+3)的含义分别是 5行5列元素值,0行地址,0行0列地址,0行地址,2行3列元素地址,2行0列地址,2行3列元素值 。 4.函数的指针是 函数入口地址 。 5.返回指针值的函数是 指针类型的函数 。 6.若有说明语句 int a[3]={1,3,5},*p=a;则*++p,*p++,*p+1的值分别是 3,1,2 。 7.指针变量是把内存中另一个数据的 首地址 作为其值的变量。 8.当定义某函数时,有一个形参被说明成int *类型,那么可以与之结合的实参类型可以是 整型数组名、 指向整型数据的指针值 等。 9.如果程序中已有定义:int k; ⑴定义一个指向变量k的指针变量p的语句是 int *p=&k 。 ⑵通过指针变量,将数值6赋值给k的语句是 *p=6 。 ⑶定义一个可以指向指针变量p的变量pp的语句是 int **pp 。 ⑷通过赋值语句将pp指向指针变量p的语句是 pp=&p 。 ⑸通过指向指针的变量pp,将k的值增加一倍的语句是 (**pp)*=2 。 10.下面程序段的运行结果是 ef 。 char str[]=\printf(\

搜索更多关于: c语言答案 的文档
  • 收藏
  • 违规举报
  • 版权认领
下载文档10.00 元 加入VIP免费下载
推荐下载
本文作者:...

共分享92篇相关文档

文档简介:

*p=*q;语句 4.已有定义int k=2; int *ptr1, *ptr2;且ptr1和ptr2均已指向变量k,下面不能正确执行的赋值语句是(B )。 A.k=*ptr1+*ptr2; B.ptr2=k; C.ptr1=ptr2; D.k=*ptr1*(*ptr2); 5.以下程序运行结果是( B )。 sub(int x ,int y ,int *z) { *z=y-x;} main() { int a ,b,c; sub(10,5,&a); sub(7,a,&b); sub(a,b,&c); printf(\} A.5,2,3 B.-5,-12,-7 C.-5,-12,-17 D.5,-2,-7 6.下面程序段的运行结果是( A )。 char *s=\s+=2; pri

× 游客快捷下载通道(下载后可以自由复制和排版)
单篇付费下载
限时特价:10 元/份 原价:20元
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信:fanwen365 QQ:370150219
Copyright © 云题海 All Rights Reserved. 苏ICP备16052595号-3 网站地图 客服QQ:370150219 邮箱:370150219@qq.com