1. 设有定义语句:char c1 = 92, c2 = 92;,则以下表达式中值为零的是()
92的二进制是 0101 1100
A是 按位异或 0101 1100 ^0101 1100 =0000 0000
B是 按位与 0101 1100 &0101 1100 =0101 1100
C是 按位取反 ~0101 1100=1010 0011
D是 按位或 0101 1100 | 0101 1100 =0101 1100
2. 下列程序输出什么
现以顺序为 1, 2, 3, 4, 5, 6, 7 的整数列表调用该函数
- c1^c2
- c1&c2
- ~c2
- c1|c2
92的二进制是 0101 1100
A是 按位异或 0101 1100 ^0101 1100 =0000 0000
B是 按位与 0101 1100 &0101 1100 =0101 1100
C是 按位取反 ~0101 1100=1010 0011
D是 按位或 0101 1100 | 0101 1100 =0101 1100
2. 下列程序输出什么
#include<stdio.h>
#include<string.h>
int main() {
int n;
char y[10] = "ntse";
char *x = y; // *x = y首级地址,也就是'n'
n = strlen(x); // n = 4
*x = x[n]; // *x改变指向,*x存储"\0",同时y[0]指向"\0"
x++; // x指向t
printf("x=%s,", x);
printf("y=%s\n", y);
return 0;
}
- x=atse,y=
- x=tse,y=
- x=atse,y=e
- x=tse,y=e
现以顺序为 1, 2, 3, 4, 5, 6, 7 的整数列表调用该函数
struct node
{
int value;
struct node *next;
};
void rearrange(struct node *list)
{
struct node *p, * q;
int temp;
if ((!list) || !list -> next)
return;
p = list;
q = list -> next;
while(q)
{
temp = p -> value