在路上


私信TA

用户名:fairyy

访问量:4702

签 名:

梦想不会逃跑,会逃跑的只有自己.

等  级
排  名 1087
经  验 3227
参赛次数 1
文章发表 42
年  龄 0
在职情况 学生
学  校
专  业

  自我简介:

5.执行语句for(i=1;i++<4;);后变量i的值是(5 )。

【解析】:当i=4时,i<4即:4<4不成立,但i++仍执行,i=i+1=4, 不执行循环体。


7.

static int x=10;

void main()

{

    int x=3;

    f();

    x--;

    printf("%d",x);

}

f()

{

    x++;

}

屏幕上输出值为( 2)。

【解析】:fun( )函数调用的是静态变量static int x=10 ;主函数main( )中用的是int x=3.


9.下面判断正确的是( D)。

A. char c[4]="abc",d[4]="abc";等价于char c[4]=d[4]="abc"; //× 未定义d[4] ; 且定义+初始化同时进行的时候,不能进行赋值;

B. char str[10]={"china"};等价于char str[10];str[ ]={"china"}; //str是一个地址常量,不能做左值;且数组不能同时赋值;

C. char *a="china";等价于char *a;*a="china"; //char *a="china“意思是:把字符串 china的首地址赋给指针a

D. char *s="china";等价于char *s;s="china";

【解析】:数组名就是一个常量指针,如:int a[10]; int *p; p=&a[0]等价于p=a.


12.语句scanf("%7.2f",&a);是合法的。(×)

【解析】:scanf中不能指示精度,只有宽度,如:%5f ;


16.已知a=3,b=4,c=5,则逻辑表达式!(a+b)+c-1 && b+c/2的值为0。(×)

【解析】:!(a+b)为0,0+c-1=3;b+c/2=4+2=6;两个真值&&=1。

(Note: 会算,但是看错题目了,笨蛋!)


20.C语言中数组元素的方括号不可以用花括号代替。(√)

【解析】:应该是指盛放数组长度的[ ],我还以为是后面赋值的{ },emmm....


32.表示"x≥y≥z"的C表达式是__x>=y&&y>=z___。

【解析】:( )不用带也行;


33.设x=5>1+2,x的值为___1__。

【解析】:考运算符的优先级:先+,后>,最后=。


34.若输入字符串:abcde<回车>,则以下while循环体将执行__0___次。  

while((ch=getchar())=='e')

    printf("*");

【解析】:注意不是gets,是getchar!!!只能输入一个字符"a"。


40.设有以下共用体类型说明和变量定义,则变量c在内存所占字节数是__20___。

union stud

{

    short int num;

    char name[10];

    float score[5];

    double ave;

}c;

【解析】:变量所占字节数:short int=2,long int=4,char=1,float=4,double=8;

所以变量c所占字节数=num(2)+name[10] (10)+score[5] (4*5=20)+double(8)=40;

但是,注意是共同体,顾名思义,所有成员共享同一存储空间,则占20个字节(取成员中所占字节数最大的值)

   

   



 

0.0分

2 人评分

  评论区

  • «
  • »