2007年9月全国计算机等级考试二级C语言笔试试卷(2)

http://www.itjxue.com  2015-07-17 00:54  来源:未知  点击次数: 

若程序前面已在命令中包含math.h文件,不能够正确计算上述公式的程序段是

      A)if(x>=0) y=sqrt(x);                     B)y=sqrt(x)

else y=sqrt(-x);                          if(x<0) y=sqrt(-x);

C)if(x>=0)y=sqrt(x);                        D)y=sqrt(x>=0?x:-x);

  If(x<0)y=sqrt(-x);

(21)设有条件表达式:(EXP)?i++;j--,则以下表达式中(EXP)完全等价的是

   A)(EXP= =0)    B)(EXP!=0)     C)(EXP= =1)    D)(EXP!=1)

(22)有以下程序

#include<stdio.h>

main()

{int y=9;

for( ; y>0;y--)

if(y%3= =0)  printf("%d",--y);

}

程序的运行结果是

A)741         B)963          C)852          D)875421

(23)已有定义:char c; ,程序前面已在命令行中包含ctype.h文件,不能用于判断c中的字符是否为大写字母的表达式是

     A)isupper(c)                      B)’A’<=c<=’Z’

C)’A’<=c&&c<=’Z’                D)c<=(‘2’-32)&&(‘a’-32)<=c

(24)有以下程序

   #include<stdio.h>

   main()

   {int i,j,m=55;

for(i=1;i<=3;i++)

for(j=3;j<=i;j++) m=m%j;

printf("%d\n",m);

}

程序的运行结果是

A)0            B)1           C)2            D)3

(25)若函数调用时的实参为变量时,以下关于函数形参和实参的叙述中正确的是

     A)函数的实参和其对应的形参共占同一存储单元

B)形参只是形式上的存在,不占用具体存储单元

C)同名的实参和形参占同一存储单元

D)函数的形参和实参分别占用不同的存储单元

(26)已知字符’A’的ASCⅡ代码值是65,字符变量c1的值是’A’,c2的值是’D’。执行语句printf("%d,%d",c1,c2-2);后,输出结果是

A)A,B       B)A,68        C)65,66        D)65,68

(27)以下叙述中错误的是

A)改变函数形参的值,不会改变对应实参的值

B)函数可以返回地址值

C)可以给指针变量赋一个整数作为地址值

D)当在程序的开头包含文件stdio.h时,可以给指针变量赋NULL

(28)以下正确的字符串常量是

A)"\\\"         B)’abc’        C)OlympicGames        D)""

(29)设有定义:char p[]={’1’,’2’,’3’},*q=p; ,以下不能计算出一个char型数据所占字节数的表达式是

A)sizeof(p)       B)sizeof(char)     C) sizeof(*q)      D)sizeof(p[0])

(30)有以下函数

   int aaa(char *s)

   {char *t=s;

while(*t++);

t--;

return(t-s);

}

以下关于aaa函数的功能叙述正确的是

A)求字符串s的长度                B)比较两个串的大小

C)将串s复制到串t                 D)求字符串s所占字节数

(31)若有定义语句:int a[3][6]; ,按在内存中的存放顺序,a数组的第10个元素是

A)a[0][4]         B)a[1][3]         C)a[0][3]        D)a[1][4]

(32)有以下程序

#include<stdio.h>

void fun(char  **p)

{++p;    printf("%s\n",*p);}

main()

{char  *a[]={"Morning","Afternoon","Evening","Night"};

fun(a);

}

程序的运行结果是

A)Afternoon      B)fternoon      C)Morning      D)orning

(33)若有定义语句:int a[2][3],*p[3]; ,则以下语句中正确的是

A)p=a;       B)p[0]=a;       C) p[0]=&a[1][2];      D)p[1]=&a;

(34)有以下程序

   #include<stdio.h>

   void fun(int *a,int n)/*fun函数的功能是将a所指数组元素从大到小排序*/

   {int t,i,j;

for(i=0;i<n-1;i++)

for(j=i+1;j<n;j++)

if (a[i]<a[j])  {t=a[i];a[i]=a[j];a[j]=t;}

}

main()

{int c[10]={1,2,3,4,5,6,7,8,9,0},i;

fun(c+4,6);

for (i=0;i<10;i++)   printf("%d,",c[i]);

printf("\n");

}

程序运行的结果是

A)1,2,3,4,5,6,7,8,9,0,            B)0,9,8,7,6,5,1,2,3,4,

C) 0,9,8,7,6,5,4,3,2,1,             D)1,2,3,4,9,8,7,6,5,0,

(35)有以下程序

   #include<stdio.h>

   int  fun(char s[])

{int n=0;

while(*s<=’9’&&*s>=’0’)   {n=10*n+*s-’0’;s++;}

return(n);

}

main()

{char s[10]={’6’,’1’,’*’,’4’,’*’,’9’,’*’,’0’,’*’};

printf("%d\n",fun(s));

}

程序运行的结果是

A)9       B)61490         C)61         D)5

(36)当用户要求输入的字符串中含有空格时,应使用的输入函数是

 A)scanf()          B)getchar()         C)gets()        D)getc()

(37)以下关于字符串的叙述中正确的是

A)C语言中有字符串类型的常量和变量

B)两个字符串中的字符个数相同时才能进行字符串大小的比较

C)可以用关系运算符对字符串的大小进行比较

D)空串一定比空格打头的字符串小

 

****第38题到41题目暂缺****

 

 

 

 

(42)有以下程序

#include  <stdio.h>

void  fun(int n,int *p)

{   int   f1,f2;

if(n==1||n==2)     *p=1;

else

{    fun(n-1,&f1);      fun(n-2,&f2);

     *p=f1+f2;

}

}

main()

{     int     s;

      fun(3,&s);       printf("%d\n",s);

}

程序的运行结果是

A)2                  B)3             C)4                 D)5

(责任编辑:IT教学网)

更多

推荐计算机等级考试文章