1.不使用第三个变量,实现两个数
可以通过使用算术运算来实现,如:
#include<stdio.h>
int main(void)
{
int a,b;
//Enter a and b:
scanf("%d %d", &a, &b);
printf("a=%d b=%d\n",a,b);
a = a + b;
b = a - b;
a = a - b;
printf("a=%d b=%d\n",a,b);
return 0;
}
2.宏定义
宏定义时不能使用等号,如:
#include <stdio.h>
#define PI 3.14
int main()
{
int r=1, c;
c = 2 * PI * r;
return 0;
}
3.数字分离
求一个数各个位上的数,可以对其求余,如123的个位是3
int i = 123;
i = i % 10;
printf("i=%d"i);
//i=3
若要继续求其十位,则可以用"/",如:
int i = 123;
i = i / 10;
//i=12
i = i % 10;
//i=2
4.计算两个正整数的最大公约数
#include<stdio.h>
int MaxCommonFactor( int a, int b)
{
int c;
if(a<=0||b<=0)
return -1;
while(b!=0)
{
c=a%b;
a=b;
b=c;
}
return a;
}
int main(void)
{
int a,b;
scanf("%d,%d",&a,&b);
printf("%d\n",MaxCommonFactor(a,b));
return 0;
}