- 用 C 语言编程实现判断输入为偶数的函数,即如果输入为偶数,返回 True,否则 返回 False。
bool f(int n) { if(n&1) return false; else return true; }
|
- 用 C 语言编程实现一种迭代版本的简单乘法。
int multiple(int a,int b) { if(b==0) return 0; int res=0; while(b) { if(b&1) res+=a; a<<=1; b>>=1; } return res; }
|
-
证明命题1.1。
题目:
设a,b,c∈Z,如果a∣b,b∣c,则a∣c。如果c∣a,c∣b,则对任意m,n∈Z,有c∣(ma+nb)。
证明:
因为a∣b,所以存在整数q使得b=qa,因为b∣c,所以存在整数p使得c=pb。因此,c=pqa,即存在整数pq使得c=pqa,所以a∣c。
因为c∣a,所以存在整数q使得a=qc,因为c∣b,所以存在整数p使得b=pc,任取m,n∈Z,ma+nb=mqc+npc=(mq+np)c,所以c∣(ma+nb)
- 给定一个整数 v,如何判断 v 是否 2 的某次方?比如,v = 4 = 22,返回 T rue; v = 9 = 23 + 1 并非 2 的次方,返回 False。请写一个 C 语言的函数来实现以上功 能。
int f(int v) { if(v==1) return true; else if(v==0) return false; else if(v&1) return false; return f(v>>1); }
|