C语言试卷

第541题

已定义以下函数

 int fun(int*p) { return *p; }

fun函数返回值是( )。

第542题

设有定义:

 int x=0,*p;

紧接着的赋值语句正确的是( )。

第543题

设已有定义:

 float x;

则以下对指针变量p进行定义且赋初值的语句中正确的是( )。

第544题

设变量p是指针变量,语句p=NULL;是给指针变量赋NULL值,它等价于( )。

第545题

以下程序中关于指针输入格式正确的是( )。

第546题

若有定义语句:

double x,y,*px,*py;

执行了px=&x;py=&y;之后,正确 的输入语句是( )。

第547题

有以下程序

#include <stdio.h> 
main() 
{ 
int n,*p=NULL;
 *p=&n;
  printf("Input n:");
   scanf("%d",&p); 
   printf("output n:"); 
   printf("%d\n",p); 
 }

该程序试图通过指针p为变量n读入数据并输出,但程序有多处错误, 以下语句正确的是( )。

第548题

有以下程序:

 #include <stdio.h> 
 main()
{ 
  int *p,x=100;
   p=&x; 
   x=*p+10; 
   printf("%d\n",x);
 }

程序运行后的输出结果是( )。

第549题

有以下程序

#include <stdio.h> 
main() 
{
int a=1,b=3,c=5;
 int *p1=&a,*p2=&b,*p=&c; 
 *p=*p1*(*p2); 
 printf("%d\n",c); 
 }

执行后的输出结果是( )。

第550题

以下叙述中正确的是( )。

第551题

以下叙述中正确的是( )。

第552题

若有定义语句:

int year=2009,*p=&year;,

以下不能使用变量year 中的值增至2010的语句是( )。

第553题

有以下程序:

#include <stdio.h>
 main() 
 { 
 int a[10]={1,3,5,7,11,13,17},*p=a; 
 printf("%d,",*(p++)); 
 printf("%d\n",*(++p));
 }

程序运行后的输出结果是( )。

第554题

有如下程序:

 #include <stdio.h> 
 main() 
 { 
 int a=0,*ptr;
  ptr=&a;
   *ptr=3;
    a=(*ptr)++;
    printf("%d,%d\n",a,*ptr); 
  }

程序运行后的输出结果是( )。

第555题

有以下程序:

 #include <stdio.h>
  main()
  { 
  int m=1,n=2,*p=&m,*q=&n,*r; 
  r=p;p=q;q=r; 
  printf("%d,%d,%d,%d\n",m,n,*p,*q);
   }

程序运行后的输出结果是( )。

第556题

有以下程序

 #include <stdio.h> 
 main() 
 { 
 int c[6]={10,20,30,40,50,60},*p,*s; p=c; 
 s=&c[5]; 
 printf("%d\n",s-p);
  }

程序运行后的输出结果是( )。

第557题

有以下程序

 #include <stdio.h> 
 main () 
 { 
 int a[5] = {2,4,6,8,10},*p,**k;
  p = a; 
  k = &p;printf("%d",*(p++)); 
  printf("%d\n",**k); 
  }

程序运行后的输出结果是( )。

第558题

以下程序的功能是:通过调用calc函数,把所求得的两数之和值 放入变量add中,并在主函数中输出。

 #include <stdio.h> 
 void calc(float x,float y,float *sum) 
 { ______ = x+y; } 
 main () 
 {
  float x,y,add; 
  scanf("%f%f",&x,&y); 
  calc(x,y,&add); 
  printf("x+y=%f\n",add); 
  }

calc函数中下划线处应填入的是( )。

第559题

有如下程序:

#include <stdio.h> 
int change(int *data) 
{ 
return (*data)++; 
} 
main() 
{ 
int data=123; 
change(&data); 
printf("%d,",data); 
data = change(&data);
 printf("%d,",data);
  printf("\n");
  }

程序运行后的输出结果是( )。

第560题

有如下程序:

#include <stdio.h> 
int convert(int *data) 
{ 
return (*data)++;
 }
  main() 
 { 
  int data=56;
   convert(&data); 
   printf("%d,",data); 
   data = convert(&data);
    printf("%d,",data); 
    printf("\n"); 
 }

程序运行后的输出结果是( )。