题库 题库

【单选题】

有以下程序:
int fun(int x)
{ int p;
if(x==0||x==1)return(3);
p=x-fun(x-2);
return p;
}
main()
{ printf("%d\n",fun(7));}
执行后的结果是( )。
  • A.7

  • B.3

  • C.2

  • D.0

参考答案

查看答案

相关试题

单选题 若有以下定义:
char a;int b;
float c;double d;
则表达式a*b+b-c值的类型为( )。
查看答案
单选题 设在C语言中,float类型数据占4个字节,则double 类型数据占( )个字节。 查看答案
单选题 对如下二叉树进行后序遍历的结果为( )。
查看答案
单选题 有以下程序:
main()
{int i,j;
for(j=10;j<11;j++)
{ for(i=9;i<J;I++)
if(!(j%i))break;
if(i==j-1)
printf("%d",j);
}
}
输出结果是( )。
查看答案
单选题 在单链表中,增加头结点的目的是( )。 查看答案
单选题 有以下程序:
main( )
{ int k=5,n=0;
do
{ switch(k)
{ case 1:
case 3:n+=l;k--;break;
defalut:n=0;k--;
case 2:
case 4:n+=2;k--;break:
}
printf("%d",n);
}while(k>0&&n<5);
}
程序运行后的输出结果是( )。
查看答案
单选题 若有定义和语句:
int**pp),*P,a=20,b=10;
pp=&p;p=&a;p=&b;printf("%d,%d\n",*P,*PP);
则输出结果是( )。
查看答案
单选题 能正确表示“当x的取值在[1,10]和[100,110]范围内为真,否则为假”的表达式是( )。 查看答案
单选题 若a为int类型,且其值为3,则执行完表达式a+= a-=a*a后,a的值是( )。 查看答案
单选题 有以下程序
#include
void fun(char**p)
{++p;printf("%s",*p);}
main()
{char*a[]={"Morning","Afternoon","Evening"," Night");
fun(a);
}
程序的运行结果是( )。
查看答案
单选题 若有以下的说明和语句,则在执行for语句后,’(*(pt+1)+2)表示的数组元素是( )。
int t[3][3],*pt[3],k;for(k=0;k<3;k++)pt[k]= &t[k][0];
查看答案
单选题 有以下程序:
int fun(int x)
{ int p;
if(x==0||x==1)return(3);
p=x-fun(x-2);
return p;
}
main()
{ printf("%d\n",fun(7));}
执行后的结果是( )。
查看答案
单选题 以下程序的输出结果是( )。
main()
{ char w[][10]={"ABCD","EFGH","IJKL","
MNOP"),K;
for(k=1;k<3;k++)printf("%s\n",w[k]);
查看答案
单选题 定义下列结构体(联合)数组:
struct st
{ char name[15];
int age;
}a[10]={"ZHA0",14,"WANG",15,"LIU",16," ZHANG",17);
执行语句printf("%d,%C",a[2].age,*(a[3].name+ 2))的输出结果为( )。
查看答案
单选题 有以下程序:
void swap(char*x,char*y)
{ char t;
t=*x;*x=*y;*y=t;
}
main()
{ char*s1="abe",*s2="123":
swap(s1,s2);
printf("%s,%s\n",s1,s2);
}
程序执行后的输出结果是( )。
查看答案
单选题 下列程序的输出结果是( )。
#include
main()
{ int i;
for(i=1;i<=10,i++)
{ if((i*i>=20)&&(i*i<=100))
break;
}
printf("%d\n",i*i;
}
查看答案
单选题 对线性表进行二分法检索,其前提条件是( )。 查看答案
单选题 下列叙述中正确的是( )。 查看答案
单选题 下面程序输出的是( )。
main()
{ int t=l;fun(fun(t));}
fun(int h)
{ static int a[3]={1.2.3};
int k;
for(k=0;k<3;k++)a[k]+=a[k]-h;
for(k=0;k<3;k++)printf("%d",a[k]);
printf("\n");
return(a[h]);}
查看答案
单选题 有以下程序:
#include
main()
{ int x=4,y;
do
{ y=x;
if(!y)printf("x");
else
printf("y"):
x--;
}while(x);
}
程序的输出结果是( )。
查看答案