Practice

1.以读写方式打开一个普通文件,且当其不存在时要创建它,应指定的mode参数是(D)

A.r+

B.rw+

C.rw

D.w+

E.r

image

2.以下那一个是fseek(FILE *stream, long offset, int whence)中whence的合法值?D

A.SEEK_OOP

B.SEEK_BIG

C.SEEK_TEL

D.SEEK_SET

E.SEEK_GET

3.已知字符‘A’的ASCII代码值是65,字符变量c1的值是‘A’,c2的值是‘D’。则执行语句 printf(“%d, %d”, c1, c2-2); 后,输出结果是(C)

A.A,B

B.A,68

C.65,66

D.65,68

4.以下叙述中错误的是(A)

A.函数的形参存放在数据段中

B.函数可以返回地址值

C.可以给指针变量强制赋一个浮点数作为地址值

D.可以给指针变量赋NULL

key:函数的形参存放在栈空间。

5.以下说法正确的是(D)

A.文件指针指向了文件的第一个字节

B.文件描述符代表了文件的大小

C.可以通过调节文件指针的指向来读取文件中间的某个字节

D.文件描述符是系统IO访问文件的句柄

6.若有以下定义,则不移动指针p且通过指针p引用值为98的数组元素的表达式是 p[0][5]

int w[10]={23,54,10,33,47,98,72,80,61}, (*p)[10]=&w;

7.有以下程序:

#include <stdio.h>
int fun(char s[])

{
	int n = 0;

	while(*s<='g' && *s>='0')

	{

		n = 10*n + *s - '0';

		s++;

	} 
	
	return(n);

}

int main(void)

{

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

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

}

程序运行的结果是(C)

A.9

B.61490

C.61

D.5

key:按照ascii码

设有以下程序:

#include <stdio.h> 

int main()

{ 
    int a,b,k=4,m=6,*p1=&k,*p2=&m;

	a = p1 != &m;

	b=(*p1)/(*p2)+7;
    
    printf("a=%d\n",a);			//a = 1
    
    printf("b=%d\n",b) ;		//b = 7

}

如下代码,请分析该代码实现的功能

int func(x)

{ 
	int countx = 0;

​	 while(x)

	{ 
    
    	countx ++;

​	 	x=x & (x-1);

	} 

	return countx;

}

该函数的功能为(该函数功能是计算一个数x二进制表示中1的个数);

假定x = 9999。

函数的运行结果为:8 分析:该函数功能是计算一个数x二进制表示中1的个数 x&(x-1)计算后x每次少一个1

posted @ 2024-05-25 10:41  WJnuHhail  阅读(3)  评论(0编辑  收藏  举报