★第1 :
阅读程序,选择程序的运行结果___A___
#include <stdio.h>
main()
{ int x;
  x=try(5);
  printf(%d\n, x);
}
  try(int n)
{ if(n>0)  return(n*try(n-2));
  else  return(1);
}
 A. 15
 B. 120
 C. 1
 D. 前面3个答案均是错误的
2 :
在下列结论中,只有一个是正确的,它是___A___
 A. 递归函数中的形式参数是自动变量
 B. 递归函数中的形式参数是外部变量
 C. 递归函数中的形式参数是静态变量
 D. 递归函数中的形式参数可以根据需要自己定义存储类型
★第3 :
阅读程序,选择程序的输出结果__A___
#include <stdio.h>
f(int x, int y)
  { return(y-x);
    }
main()
{     int *g(int,int);
int a=5, b=6, c=2;
    g=f;
    c=(*g)(a,b);
    printf(%d\n, c);
}
 A. 1
 B. 2
 C. 3
 D. 前面3个答案均是错误的
4 :
阅读程序,选择程序的输出结果__D___
#include <stdio.h>
char *p=abcdefghijklmnopq;
main()
  { while(*p++!=’e’) ;
    printf(%c\n, *p);
  }
 A. c
 B. d
 C. e
 D. f
★第6 :
阅读程序,选择程序的输出结果___D___
#include <stdio.h>
void prtv(int *x)
    { printf(%d\n, ++*x);
    }
main()
{ int a=25;
  prtv(&a);
}
 A. 23
 B. 24
 C. 25
 D. 26
7 :
阅读程序,选择程序的输出结果___B___
#include <stdio.h>
main()
{ static char a[ ]= language, b[]=program;
  char *ptr1=a, *ptr2=b;
  int k;
  for(k=0; k<7; k++)
    if(*(ptr1+k)==*(ptr2+k))
        printf(%c, *(ptr1+k));
}
 A. gae
 B. ga
 C. language
 D. 有语法错误
★第8 :
函数调用strcat(strcpy(str1, str2), str3)的功能是__C___
 A. 将串str1复制到串str2中,然后再连接到str3之后
 B. 将串str1连接到串str2之后,再复制到str3之中
 C. 将串str2复制到串str1中,然后再将串str3连接到串str1之后
 D. 将串str2复制到串str1中,再将串str1连接到str3之后
★第9 :
设有以下程序段,则在main函数中使用语句__D___是无意义的。
main()
  { int min();
    int a, b, c, (*p)();
    p=min;
     
  }
min(x, y)
int x, y;
{
 
}
 A. printf(%d\n, min(a,b));
 B. c=min(a, b);
 C. c=(*p)(a,b);
 D. p++;
10 :
已知static int a[2][3]={2,4,6,8,10,12}; 正确表示数组元素地址的是__A___
 A. *(a+1)
 B. *(a[1]+2)
 C. a[1]+3
 D. a[0][0]
11 :
已知int i, x[3][4]; 则不能将x[1][1]的值赋给变量i的语句是___C___
 A. i=*(*(x+1)+1)
 B. i=x[1][1]
 C. i=*(*(x+1))
 D. i=*(x[1]+1)
★第12 :
c的值不为0时,在下列选项中能够将c的值赋给变量ab的是___C____.     
 c语言二维数组表示方法A. c=b=a;
 B. (a=c)||(b=c);
 C. (a=c)&&(b=c);
 D. a=c=b;
13 :
函数的功能是交换变量xy中的值,且通过正确调用返回交换的结果。能正确执行此功能的函数是___D___
 A. funa(int *x, int *y)
{ int *p;
*p=x; *x=*y; *y=*p;
}
 B. funb(int x, int y)
{ int t;
t=x; x=y; y=t;
}
 C. func(int *x, int *y)
{ *x=*y; *y=*x;
}
 D. fund(int *x, int *y)
{ *x=*x+*y; *y=*x-*y; *x=*x-*y;
}
14 :
已知int x[]={1,3,5,7,9,11}, *ptr=x; 则不能正确引用数组元素的语句是___B___
 A. *(ptr--)
 B. *(--ptr)
 C. *(ptr++)
 D. *(++ptr)
15 :
已知int *ptr1, *ptr2; 均指向同一个int类型一维数组中的不同元素,kint类型变量,则下面错误的赋值语句是___B___
 A. k=*ptr1+*ptr2;
 B. ptr2=k;
 C. ptr1=ptr2;
 D. k=*ptr1*(*ptr2);
★第16 :
已知chars1[10], *s2=ab\0cdef; 则执行语句strcpy(s1,s2); 后,变量s1的内容为___A____
 A. ab
 B. cdef
 C. ab\0cdef
 D. 内容不定
17 :
以下有关宏替换叙述中,错误的是___D___

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。