C语言程序设计

设指针x指向的变量值为25,则printf("%d/n",++*x);的输出结果是()A、23B、24C、25D、26

题目

设指针x指向的变量值为25,则printf("%d/n",++*x);的输出结果是()

  • A、23
  • B、24
  • C、25
  • D、26
如果没有搜索结果,请直接 联系老师 获取答案。
如果没有搜索结果,请直接 联系老师 获取答案。
相似问题和答案

第1题:

2017年是全国第( )个税收宣传月?

A、23

B、24

C、25

D、26


参考答案:D

第2题:

设有定义:float x=123.4567;,则执行以下语句后的输出结果是[ ]。

printf("%f\n"(int)(x*100+0.5)/100.1;


正确答案:123.46
123.46 解析:输出语句的表达式:(int)(x*100+0.5)/100.0是指先运算表达式中的“x*100+0.5”,然后将其结果强制转换为int型,即:(int)(l23.4567*100+O.5)=(int)12346.17=12346,接下来进行”/100.0”的运算即:12346/100.0=123.46,原因是除运算是双目运算,当—边是整型数,—边是实型数时,系统自动将整型转换为实型数,然后进行运算,又因为最后的的输出格式是float类型的实数,所以结果为123.460000。

第3题:

int x=6, y=7; printf(“%d,”,x++); printf(“%d\n”,++y); 程序的输出结果是__________ 。


正确答案:
6,8

第4题:

设变量均已正确定义并赋值,以下与其他三组输出结果不同的一组语句是

A)x++;printf(”%d\n”,x);

B)n=++x;printf(”%d\n”,n);

C)++x;printf(”%d\n”,x);

D)n=x==;printf(”%d\n”,n);


正确答案:D
【答案】D
【知识点】自增运算符
【解析】前三个选项打印的均是x变量自增一后的结果,只有D选项中x先把值赋给了n后才自增,打印是x的原值。

第5题:

(C语言)有以下程序

#define P 3

void F(int x) {return (P*x*x);}

main()

{printf("%d\n",F(3+5);}

程序运行后的输出结果是

A、192B、29C、25D、编译出错


正确答案:
   

第6题:

以下程序的输出结果是( )。 include void fun(int x) {if(x/2>0)fun(x/2); printf("%d",

以下程序的输出结果是( )。

include<stdio.h>

void fun(int x)

{ if(x/2>0)fun(x/2);

printf("%d",x);

}

main()

{fun(3);printf("\n");

}


正确答案:13
13 解析:函数fun是一个递归函数。执行fun(3);,x=3,x/2=1>0,又调用f(1),此时,x=1,x/2=0,不满足继续递归调用的条件,输出1,返回到fun(3)中,输出3。所以本题的输出结果为13。

第7题:

设int x=10,y=3,z;,以下语句的输出结果是______。printf("%d\n",z=(x%y,x/y));

A.1

B.0

C.4

D.3


正确答案:D

第8题:

已有变量定义和函数调用语句:int a=25;print_value(&a);下面函数的正确输出结果是

void print_value(int *x)

{printf("%d\n",++*x);}

A.23

B.24

C.25

D.26


正确答案:D

第9题:

以下程序运行后的输出结果是( )。 include main() { int x=20; printf("%d", 0

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

include<stdio.h>

main()

{ int x=20;

printf("%d", 0<x<20);

printf("%d\n", 0<x && x<20);

}


正确答案:10
10 解析:表达式0x20,首先计算0x,其值为1,再计算120,其值为1,输出1;表达式0x && x20,0x为1,x20为0,再计算1 && 0,其值为0,输出0。所以输出结果为10。

第10题:

以下程序的输出结果是( )。 include main()fint x=0; sub(&x,16,2); printf("%d\n",

以下程序的输出结果是( )。

include<stdio.h>

main()

fint x=0;

sub(&x,16,2);

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

}

sub(int*a,int n,int k)

{if(k<=n) sub(a,n/2,2*k);

*a+=k;

}


正确答案:14
14 解析:本题考查递归函数的调用。在主函数中调用sub(&x,16,2)函数,此时n=16,k=2,if语句的控制的条件k=n成立,所以执行下面的语句,调用sub(x,8,4),此时n=8,k=4,if语句的控制条件k=n成立,所以执行下面的语句,调用sub(x,4,8),此时n=4,k=8,if语句控制的条件k=n不成立,因此,最后得x=2+4+8=14。