C语言编写程序,进行位运算。 c语言的按位运算符怎么操作!?

\u3010C\u8bed\u8a00\u3011 \u6c42\u7f16\u5199\u4e00\u4e2a\u7a0b\u5e8f\uff1a\u7528\u4f4d\u8fd0\u7b97\uff08\u6ce8\u610f\u4f4d\u8fd0\u7b97\uff01\u7528\u79fb\u4f4d\u7684\u65b9\u6cd5\uff01\uff09

\u79fb\u4f4d\u3001\u518d\u53d6\u4f59\uff0c\uff0c\uff0c\u8f6c16\u8fdb\u5236\uff0c\u5bb9\u6613\u70b9
int a=123;
a>>4 \u662f\u9ad8\u4f4d\uff0c\u518d\u5224\u65ad\u662f0~f\u54ea\u4e2a\u6570\u5b57
a & 0xf \u662f\u4f4e\u4f4d\uff0c\u518d\u5224\u65ad\u662f0~f\u54ea\u4e2a\u6570\u5b57

\u4f4d\u8fd0\u7b97

\u5728\u5f88\u591a\u7cfb\u7edf\u7a0b\u5e8f\u4e2d\u5e38\u8981\u6c42\u5728\u4f4d(bit)\u4e00\u7ea7\u8fdb\u884c\u8fd0\u7b97\u6216\u5904\u7406\u3002C\u8bed\u8a00\u63d0\u4f9b\u4e86\u4f4d\u8fd0\u7b97\u7684\u529f\u80fd\uff0c \u8fd9\u4f7f\u5f97C\u8bed\u8a00\u4e5f\u80fd\u50cf\u6c47\u7f16\u8bed\u8a00\u4e00\u6837\u7528\u6765\u7f16\u5199\u7cfb\u7edf\u7a0b\u5e8f\u3002

\u4e00\u3001\u4f4d\u8fd0\u7b97\u7b26C\u8bed\u8a00\u63d0\u4f9b\u4e86\u516d\u79cd\u4f4d\u8fd0\u7b97\u7b26\uff1a

& \u6309\u4f4d\u4e0e
| \u6309\u4f4d\u6216
^ \u6309\u4f4d\u5f02\u6216
~ \u53d6\u53cd
<< \u5de6\u79fb
>> \u53f3\u79fb


1. \u6309\u4f4d\u4e0e\u8fd0\u7b97 \u6309\u4f4d\u4e0e\u8fd0\u7b97\u7b26"&"\u662f\u53cc\u76ee\u8fd0\u7b97\u7b26\u3002\u5176\u529f\u80fd\u662f\u53c2\u4e0e\u8fd0\u7b97\u7684\u4e24\u6570\u5404\u5bf9\u5e94\u7684\u4e8c\u8fdb\u4f4d\u76f8\u4e0e\u3002\u53ea\u6709\u5bf9\u5e94\u7684\u4e24\u4e2a\u4e8c\u8fdb\u4f4d\u5747\u4e3a1\u65f6\uff0c\u7ed3\u679c\u4f4d\u624d\u4e3a1 \uff0c\u5426\u5219\u4e3a0\u3002\u53c2\u4e0e\u8fd0\u7b97\u7684\u6570\u4ee5\u8865\u7801\u65b9\u5f0f\u51fa\u73b0\u3002

\u4f8b\u5982\uff1a9&5\u53ef\u5199\u7b97\u5f0f\u5982\u4e0b\uff1a 00001001 (9\u7684\u4e8c\u8fdb\u5236\u8865\u7801)&00000101 (5\u7684\u4e8c\u8fdb\u5236\u8865\u7801) 00000001 (1\u7684\u4e8c\u8fdb\u5236\u8865\u7801)\u53ef\u89c19&5=1\u3002

\u6309\u4f4d\u4e0e\u8fd0\u7b97\u901a\u5e38\u7528\u6765\u5bf9\u67d0\u4e9b\u4f4d\u6e050\u6216\u4fdd\u7559\u67d0\u4e9b\u4f4d\u3002\u4f8b\u5982\u628aa \u7684\u9ad8\u516b\u4f4d\u6e05 0 \uff0c \u4fdd\u7559\u4f4e\u516b\u4f4d\uff0c \u53ef\u4f5c a&255 \u8fd0\u7b97 ( 255 \u7684\u4e8c\u8fdb\u5236\u6570\u4e3a0000000011111111)\u3002
main(){
int a=9,b=5,c;
c=a&b;
printf("a=%d\nb=%d\nc=%d\n",a,b,c);
}


2. \u6309\u4f4d\u6216\u8fd0\u7b97 \u6309\u4f4d\u6216\u8fd0\u7b97\u7b26\u201c|\u201d\u662f\u53cc\u76ee\u8fd0\u7b97\u7b26\u3002\u5176\u529f\u80fd\u662f\u53c2\u4e0e\u8fd0\u7b97\u7684\u4e24\u6570\u5404\u5bf9\u5e94\u7684\u4e8c\u8fdb\u4f4d\u76f8\u6216\u3002\u53ea\u8981\u5bf9\u5e94\u7684\u4e8c\u4e2a\u4e8c\u8fdb\u4f4d\u6709\u4e00\u4e2a\u4e3a1\u65f6\uff0c\u7ed3\u679c\u4f4d\u5c31\u4e3a1\u3002\u53c2\u4e0e\u8fd0\u7b97\u7684\u4e24\u4e2a\u6570\u5747\u4ee5\u8865\u7801\u51fa\u73b0\u3002
\u4f8b\u5982\uff1a9|5\u53ef\u5199\u7b97\u5f0f\u5982\u4e0b\uff1a 00001001|00000101
00001101 (\u5341\u8fdb\u5236\u4e3a13)\u53ef\u89c19|5=13
main(){
int a=9,b=5,c;
c=a|b;
printf("a=%d\nb=%d\nc=%d\n",a,b,c);
}

3. \u6309\u4f4d\u5f02\u6216\u8fd0\u7b97 \u6309\u4f4d\u5f02\u6216\u8fd0\u7b97\u7b26\u201c^\u201d\u662f\u53cc\u76ee\u8fd0\u7b97\u7b26\u3002\u5176\u529f\u80fd\u662f\u53c2\u4e0e\u8fd0\u7b97\u7684\u4e24\u6570\u5404\u5bf9\u5e94\u7684\u4e8c\u8fdb\u4f4d\u76f8\u5f02\u6216\uff0c\u5f53\u4e24\u5bf9\u5e94\u7684\u4e8c\u8fdb\u4f4d\u76f8\u5f02\u65f6\uff0c\u7ed3\u679c\u4e3a1\u3002\u53c2\u4e0e\u8fd0\u7b97\u6570\u4ecd\u4ee5\u8865\u7801\u51fa\u73b0\uff0c\u4f8b\u59829^5\u53ef\u5199\u6210\u7b97\u5f0f\u5982\u4e0b\uff1a 00001001^00000101 00001100 (\u5341\u8fdb\u5236\u4e3a12)
main(){
int a=9;
a=a^15;
printf("a=%d\n",a);
}

4. \u6c42\u53cd\u8fd0\u7b97 \u6c42\u53cd\u8fd0\u7b97\u7b26\uff5e\u4e3a\u5355\u76ee\u8fd0\u7b97\u7b26\uff0c\u5177\u6709\u53f3\u7ed3\u5408\u6027\u3002 \u5176\u529f\u80fd\u662f\u5bf9\u53c2\u4e0e\u8fd0\u7b97\u7684\u6570\u7684\u5404\u4e8c\u8fdb\u4f4d\u6309\u4f4d\u6c42\u53cd\u3002\u4f8b\u5982\uff5e9\u7684\u8fd0\u7b97\u4e3a\uff1a ~(0000000000001001)\u7ed3\u679c\u4e3a\uff1a1111111111110110

5. \u5de6\u79fb\u8fd0\u7b97 \u5de6\u79fb\u8fd0\u7b97\u7b26\u201c<<\u201d\u662f\u53cc\u76ee\u8fd0\u7b97\u7b26\u3002\u5176\u529f\u80fd\u628a\u201c<< \u201d\u5de6\u8fb9\u7684\u8fd0\u7b97\u6570\u7684\u5404\u4e8c\u8fdb\u4f4d\u5168\u90e8\u5de6\u79fb\u82e5\u5e72\u4f4d\uff0c\u7531\u201c<<\u201d\u53f3\u8fb9\u7684\u6570\u6307\u5b9a\u79fb\u52a8\u7684\u4f4d\u6570\uff0c
\u9ad8\u4f4d\u4e22\u5f03\uff0c\u4f4e\u4f4d\u88650\u3002\u4f8b\u5982\uff1a a>\u201d\u662f\u53cc\u76ee\u8fd0\u7b97\u7b26\u3002\u5176\u529f\u80fd\u662f\u628a\u201c>> \u201d\u5de6\u8fb9\u7684\u8fd0\u7b97\u6570\u7684\u5404\u4e8c\u8fdb\u4f4d\u5168\u90e8\u53f3\u79fb\u82e5\u5e72\u4f4d\uff0c\u201c>>\u201d\u53f3\u8fb9\u7684\u6570\u6307\u5b9a\u79fb\u52a8\u7684\u4f4d\u6570\u3002
\u4f8b\u5982\uff1a\u8bbe a=15\uff0ca>>2 \u8868\u793a\u628a000001111\u53f3\u79fb\u4e3a00000011(\u5341\u8fdb\u52363)\u3002\u5e94\u8be5\u8bf4\u660e\u7684\u662f\uff0c\u5bf9\u4e8e\u6709\u7b26\u53f7\u6570\uff0c\u5728\u53f3\u79fb\u65f6\uff0c\u7b26\u53f7\u4f4d\u5c06\u968f\u540c\u79fb\u52a8\u3002\u5f53\u4e3a\u6b63\u6570\u65f6\uff0c \u6700\u9ad8\u4f4d\u88650\uff0c\u800c\u4e3a\u8d1f\u6570\u65f6\uff0c\u7b26\u53f7\u4f4d\u4e3a1\uff0c\u6700\u9ad8\u4f4d\u662f\u88650\u6216\u662f\u88651 \u53d6\u51b3\u4e8e\u7f16\u8bd1\u7cfb\u7edf\u7684\u89c4\u5b9a\u3002Turbo C\u548c\u5f88\u591a\u7cfb\u7edf\u89c4\u5b9a\u4e3a\u88651\u3002
main(){
unsigned a,b;
printf("input a number: ");
scanf("%d",&a);
b=a>>5;
b=b&15;
printf("a=%d\tb=%d\n",a,b);
}
\u8bf7\u518d\u770b\u4e00\u4f8b!
main(){
char a='a',b='b';
int p,c,d;
p=a;
p=(p<<8)|b;
d=p&0xff;
c=(p&0xff00)>>8;
printf("a=%d\nb=%d\nc=%d\nd=%d\n",a,b,c,d);
}

位运算

在很多系统程序中常要求在位(bit)一级进行运算或处理。C语言提供了位运算的功能, 这使得C语言也能像汇编语言一样用来编写系统程序。

一、位运算符C语言提供了六种位运算符:

& 按位与
| 按位或
^ 按位异或
~ 取反
<< 左移
>> 右移

1. 按位与运算 按位与运算符"&"是双目运算符。其功能是参与运算的两数各对应的二进位相与。只有对应的两个二进位均为1时,结果位才为1 ,否则为0。参与运算的数以补码方式出现。

例如:9&5可写算式如下: 00001001 (9的二进制补码)&00000101 (5的二进制补码) 00000001 (1的二进制补码)可见9&5=1。

按位与运算通常用来对某些位清0或保留某些位。例如把a 的高八位清 0 , 保留低八位, 可作 a&255 运算 ( 255 的二进制数为0000000011111111)。
main(){
int a=9,b=5,c;
c=a&b;
printf("a=%d\nb=%d\nc=%d\n",a,b,c);
}

2. 按位或运算 按位或运算符“|”是双目运算符。其功能是参与运算的两数各对应的二进位相或。只要对应的二个二进位有一个为1时,结果位就为1。参与运算的两个数均以补码出现。
例如:9|5可写算式如下: 00001001|00000101
00001101 (十进制为13)可见9|5=13
main(){
int a=9,b=5,c;
c=a|b;
printf("a=%d\nb=%d\nc=%d\n",a,b,c);
}

3. 按位异或运算 按位异或运算符“^”是双目运算符。其功能是参与运算的两数各对应的二进位相异或,当两对应的二进位相异时,结果为1。参与运算数仍以补码出现,例如9^5可写成算式如下: 00001001^00000101 00001100 (十进制为12)
main(){
int a=9;
a=a^15;
printf("a=%d\n",a);
}

4. 求反运算 求反运算符~为单目运算符,具有右结合性。 其功能是对参与运算的数的各二进位按位求反。例如~9的运算为: ~(0000000000001001)结果为:1111111111110110

5. 左移运算 左移运算符“<<”是双目运算符。其功能把“<< ”左边的运算数的各二进位全部左移若干位,由“<<”右边的数指定移动的位数,
高位丢弃,低位补0。例如: a<<4 指把a的各二进位向左移动4位。如a=00000011(十进制3),左移4位后为00110000(十进制48)。6. 右移运算 右移运算符“>>”是双目运算符。其功能是把“>> ”左边的运算数的各二进位全部右移若干位,“>>”右边的数指定移动的位数。
例如:设 a=15,a>>2 表示把000001111右移为00000011(十进制3)。 应该说明的是,对于有符号数,在右移时,符号位将随同移动。当为正数时, 最高位补0,而为负数时,符号位为1,最高位是补0或是补1 取决于编译系统的规定。Turbo C和很多系统规定为补1。
main(){
unsigned a,b;
printf("input a number: ");
scanf("%d",&a);
b=a>>5;
b=b&15;
printf("a=%d\tb=%d\n",a,b);
}
请再看一例!
main(){
char a='a',b='b';
int p,c,d;
p=a;
p=(p<<8)|b;
d=p&0xff;
c=(p&0xff00)>>8;
printf("a=%d\nb=%d\nc=%d\nd=%d\n",a,b,c,d);
}

位域

有些信息在存储时,并不需要占用一个完整的字节, 而只需占几个或一个二进制位。例如在存放一个开关量时,只有0和1 两种状态, 用一位二进位即可。为了节省存储空间,并使处理简便,C语言又提供了一种数据结构,称为“位域”或“位段”。所谓“位域”是把一个字节中的二进位划分为几个不同的区域, 并说明每个区域的位数。每个域有一个域名,允许在程序中按域名进行操作。 这样就可以把几个不同的对象用一个字节的二进制位域来表示。一、位域的定义和位域变量的说明位域定义与结构定义相仿,其形式为:
struct 位域结构名
{ 位域列表 };
其中位域列表的形式为: 类型说明符 位域名:位域长度

例如:
struct bs
{
int a:8;
int b:2;
int c:6;
};
位域变量的说明与结构变量说明的方式相同。 可采用先定义后说明,同时定义说明或者直接说明这三种方式。例如:
struct bs
{
int a:8;
int b:2;
int c:6;
}data;
说明data为bs变量,共占两个字节。其中位域a占8位,位域b占2位,位域c占6位。对于位域的定义尚有以下几点说明:

1. 一个位域必须存储在同一个字节中,不能跨两个字节。如一个字节所剩空间不够存放另一位域时,应从下一单元起存放该位域。也可以有意使某位域从下一单元开始。例如:
struct bs
{
unsigned a:4
unsigned :0 /*空域*/
unsigned b:4 /*从下一单元开始存放*/
unsigned c:4
}
在这个位域定义中,a占第一字节的4位,后4位填0表示不使用,b从第二字节开始,占用4位,c占用4位。

2. 由于位域不允许跨两个字节,因此位域的长度不能大于一个字节的长度,也就是说不能超过8位二进位。

3. 位域可以无位域名,这时它只用来作填充或调整位置。无名的位域是不能使用的。例如:
struct k
{
int a:1
int :2 /*该2位不能使用*/
int b:3
int c:2
};
从以上分析可以看出,位域在本质上就是一种结构类型, 不过其成员是按二进位分配的。

二、位域的使用位域的使用和结构成员的使用相同,其一般形式为: 位域变量名·位域名 位域允许用各种格式输出。
main(){
struct bs
{
unsigned a:1;
unsigned b:3;
unsigned c:4;
} bit,*pbit;
bit.a=1;
bit.b=7;
bit.c=15;
printf("%d,%d,%d\n",bit.a,bit.b,bit.c);
pbit=&bit;
pbit->a=0;
pbit->b&=3;
pbit->c|=1;
printf("%d,%d,%d\n",pbit->a,pbit->b,pbit->c);
}

上例程序中定义了位域结构bs,三个位域为a,b,c。说明了bs类型的变量bit和指向bs类型的指针变量pbit。这表示位域也是可以使用指针的。
程序的9、10、11三行分别给三个位域赋值。( 应注意赋值不能超过该位域的允许范围)程序第12行以整型量格式输出三个域的内容。第13行把位域变量bit的地址送给指针变量pbit。第14行用指针方式给位域a重新赋值,赋为0。第15行使用了复合的位运算符"&=", 该行相当于: pbit->b=pbit->b&3位域b中原有值为7,与3作按位与运算的结果为3(111&011=011,十进制值为3)。同样,程序第16行中使用了复合位运算"|=", 相当于: pbit->c=pbit->c|1其结果为15。程序第17行用指针方式输出了这三个域的值。

类型定义符typedef

C语言不仅提供了丰富的数据类型,而且还允许由用户自己定义类型说明符,也就是说允许由用户为数据类型取“别名”。 类型定义符typedef即可用来完成此功能。例如,有整型量a,b,其说明如下: int aa,b; 其中int是整型变量的类型说明符。int的完整写法为integer,

为了增加程序的可读性,可把整型说明符用typedef定义为: typedef int INTEGER 这以后就可用INTEGER来代替int作整型变量的类型说明了。 例如: INTEGER a,b;它等效于: int a,b; 用typedef定义数组、指针、结构等类型将带来很大的方便,不仅使程序书写简单而且使意义更为明确,因而增强了可读性。例如:
typedef char NAME[20]; 表示NAME是字符数组类型,数组长度为20。
然后可用NAME 说明变量,如: NAME a1,a2,s1,s2;完全等效于: char a1[20],a2[20],s1[20],s2[20]
又如:
typedef struct stu{ char name[20];
int age;
char sex;
} STU;
定义STU表示stu的结构类型,然后可用STU来说明结构变量: STU body1,body2;
typedef定义的一般形式为: typedef 原类型名 新类型名 其中原类型名中含有定义部分,新类型名一般用大写表示, 以
便于区别。在有时也可用宏定义来代替typedef的功能,但是宏定义是由预处理完成的,而typedef则是在编译时完成的,后者更为灵活方便。

你还是找本书看下,这个台基本了,好比1+1=2

1+1+3 验证一下,你就会了~

  • C璇█缂栧啓绋嬪簭,杩涜浣嶈繍绠銆
    绛旓細鍦ㄥ緢澶氱郴缁绋嬪簭涓父瑕佹眰鍦ㄤ綅(bit)涓绾杩涜杩愮畻鎴栧鐞嗐C璇█鎻愪緵浜浣嶈繍绠鐨勫姛鑳斤紝 杩欎娇寰桟璇█涔熻兘鍍忔眹缂栬瑷涓鏍风敤鏉缂栧啓绯荤粺绋嬪簭銆備竴銆佷綅杩愮畻绗璇█鎻愪緵浜嗗叚绉嶄綅杩愮畻绗︼細& 鎸変綅涓 | 鎸変綅鎴 ^ 鎸変綅寮傛垨 ~ 鍙栧弽 << 宸︾Щ >> 鍙崇Щ 1. 鎸変綅涓庤繍绠 鎸変綅涓庤繍绠楃"&"鏄弻鐩繍绠楃銆傚叾鍔熻兘...
  • c璇█涓,濡備綍瀹炵幇浣嶈繍绠?
    绛旓細c璇█锛氬彇鏁村瀷鍙橀噺x涓殑绗琾浣嶅紑濮嬬殑n涓猙it浣嶏紝鍙互閲囩敤浣嶈繍绠鐨勬柟娉曘傚厛鍚戝乏绉讳綅锛屼涪寮冨墠闈笉闇瑕佺殑浣嶏紝鍐嶉氳繃鍚戝悗绉讳綅锛屼涪寮冨悗闈笉闇瑕佺殑浣嶏紝鏈鍚庡啀鍚戝乏绉讳綅鍒板師鏉ョ殑浣嶇疆锛屽氨鍙互浜嗐1//num&(num-1)=(1111)&(1110)=(1110)2//num&(num-1)=(1110)&(1101)=(1100)3//num&(num-1)=(11...
  • c璇█涓,濡備綍鐢浣嶈繍绠,杈撳叆涓涓崄杩涘埗鏁拌岃緭鍑轰竴涓簩杩涘埗鏁?
    绛旓細include <stdio.h>int num[100];int main(){ int n,t=0,i; scanf("%d",&n); while(n) { num[t++] = (n & 1); n >>= 1; } for(i=t-1;i>=0;i--) printf("%d",num[i]); puts(""); return 0;} ...
  • C璇█浣嶈繍绠銆傝緭鍏ヤ竴涓暟,璁╄鏁扮殑绗3浣,绗10浣,绗13浣 缃1,璁╃7浣...
    绛旓細int main(){ int n,a1,a2;scanf("%d",&n);a1=n&0xfb7f; //璇ユ暟鐨勭3浣嶏紝绗10浣嶏紝绗13浣 缃1 a2=n|0x2408; //绗7浣嶏紝绗10浣嶇疆0 printf("%d %d %d",n,a1,a2);}
  • C璇█缂栫▼杈撳叆涓涓暣鏁版眰鍘熺爜,瑕佺敤浣嶈繍绠鏉杩涜缂栫▼
    绛旓細buffer[sizeof(int) * 8] = '\0'; return buffer;}int main(void){ char buffer[33]; int n; scanf("%d", &n); if (n >= 0) { printf("鍙嶇爜锛%s\n", to_binary_str(buffer, n)); printf("琛ョ爜锛%s\n", to_...
  • C璇█浣嶈繍绠
    绛旓細灏哻涓巄杩涜鎸変綅鎴杩愮畻锛鍗砪=c|b 绋嬪簭濡備笅锛 main() {unsigned a,b,c;int n: scanf("a=%o,n=%d",&a,&n);
  • c璇█浣嶈繍绠闂?
    绛旓細c璇█浣嶈繍绠闂瑙g瓟锛氳瑙g瓟杩欎釜闂鎴戜滑鍏堟潵鐪嬩竴涓緥瀛愶紝浠g爜濡備笅鍥句竴锛屽浘涓彸杈规槸闂涓緱鍒颁唬鐮侊紝宸﹁竟鏄繖娈典唬鐮佺殑姹囩紪鎸囦护銆備袱绉嶆儏鍐电殑涓嶅悓鐐硅缁嗚鏄庡涓嬶細绗竴绉嶆儏鍐碉細printf("%d",2>>64);鐢卞浘涓殑姹囩紪浠g爜鍙互鐪嬪嚭锛屽鏋滀袱涓暟閮芥槸甯告暟鐨勬儏鍐典笅锛屼唬鐮佷腑鏄笉鍚搴旂殑姹囩紪鎸囦护鐨勶紝鍥犱负缂栬瘧鍣...
  • c璇█浣嶈繍绠 璁$畻鍑洪珮浣庡瓧鑺 姹傚姪澶т浆
    绛旓細浠g爜锛#include <stdio.h>int main(){short a;scanf("%hd",&a);printf("the value of low byte is %#hx\n",0xff&a);printf("the value of high byte is %#hx\n",0xff00&a);return 0;} 鎴浘锛
  • C璇█缂栫▼杩愮敤浣嶈繍绠鏂规硶瀹炵幇
    绛旓細a=11101101 濡傛灉涓嶆槸鐢ㄤ腑闂村彉閲 a=(a>>(8-2))|(a<<2)鎬婚暱搴(8 16 32)寰幆宸︾Щn (a>>(N-n))|(a>>n)寰幆鍙崇Щn (a<<(N-n))|(a>>n)C璇█鐨浣嶈繍绠鍔熻兘鏄叾鍖哄埆浜庡叾浠栧ぇ澶氭暟楂樼骇绋嬪簭璁捐璇█鐨勭壒鑹蹭箣涓锛岀敤瀹冨彲浠ユ柟渚垮疄鐜颁竴浜涚壒娈婂姛鑳斤紝鐏垫椿鎺屾彙鏄敤C绋嬪簭缂栧啓绯荤粺绋嬪簭鐨勫熀纭銆
  • 澶уc璇█,浣嶈繍绠
    绛旓細char 鍜 int 鍙互澶у皬鐩稿悓 閮芥槸16涓瓧鑺 鍒濆鐨勮瘽锛屼綘瑕佺煡閬撯榓'鍙互鐩存帴鐪嬫垚鏁板瓧97锛屸榖'鏄98 鐭ヨ瘑鐐逛笉澶 宸︾Щ 琛0 | 杩愮畻 0-16杩涘埗鐨勮浆鎹 鍓╀笅鐨勪綘瑕佹妸杩欎釜杩囩▼鎷嗗垎寮鏉ワ紝涓娆′竴姝ョ殑绠楋紝灏辩畝鍗曞緢澶
  • 扩展阅读:c#面试题 ... c++编程 ... c++编程入门自学 ... c#用什么软件编写 ... c++编程适合几岁学 ... c#简单程序实例 ... c++编程必背50个代码 ... c#简单程序 ... c#表达式计算 ...

    本站交流只代表网友个人观点,与本站立场无关
    欢迎反馈与建议,请联系电邮
    2024© 车视网