题目来源:ZZULIOJ
目录
1060 逆序数字1
#include <stdio.h>
#include <math.h>
int main(void)
{
int n;
scanf("%d",&n);
while(n>0)
{
printf("%d ",n%10);
n = n/10;
}
return 0;
}
1061 顺序输出各位数字
#include <stdio.h>
#include <math.h>
int main(void)
{
int n,h=1,a;
scanf("%d",&n);
a = n;
while(a>=10)
{
a = a/10;
h *= 10;
}
//printf("%d\n",h);
while(h>0)
{
printf("%d ",n/h);
n = n%h;
h = h/10;
}
return 0;
}
1062 最大公约数
欧几里得算法(辗转相除法):用较大数除以较小数,再用出现的余数(第一余数)去除除数,再用出现的余数(第二余数)去除第一余数,如此反复,直到最后余数是0为止。如果是求两个数的最大公约数,那么最后的除数就是这两个数的最大公约数。
#include <stdio.h>
#include <math.h>
int main(void)
{
int m,n,a;
scanf("%d %d",&m,&n);
while(a = m%n)
{
m = n;
n = a;
}
printf("%d\n",n);
return 0;
}
1063 最大公约与最小公倍
#include <stdio.h>
#include <math.h>
int main(void)
{
int m,n,a,x,y,b;
scanf("%d %d",&m,&n);
x = m;
y = n;
while(a = m%n)
{
m = n;
n = a;
}
b = (x/n)*(y/n)*n;
printf("%d %d\n",n,b);
return 0;
}
1064 加密字符
#include<stdio.h>
int main(void)
{
char ch;
while(ch = getchar(),ch!='@')
{
if(ch>='A' && ch<='Z')
{
ch += 32;
}
if (ch>='a' && ch <='y')
{
ch += 1;
printf("%c",ch);
}else if(ch == 'z')
{
ch = 'a';
printf("%c",ch);
}else
printf("%c",ch);
}
return 0;
}
1065 统计数字字符的个数
#include<stdio.h>
int main(void)
{
char ch;
int a = 0;
while(ch = getchar(),ch!='\n')
{
if(ch>='0' && ch<='9')
{
a++;
}
}
printf("%d\n",a);
return 0;
}
1066 字符分类统计
#include<stdio.h>
int main(void)
{
char ch;
int i=1,a,b,c;
a = b = c =0;
while(scanf("%c",&ch),ch!='\n' && i<=100)
{
if(ch>='0' && ch<