6.1输入两个正整数m和n,求其最大公约数和小公倍数
#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>
int main(){
int p, r, n, m, temp;
printf("请输入两个正整数n,m:");
scanf("%d, %d,", &n, &m);
if (n < m)
{
temp = n; n = m; m = temp;
}
p = n * m;
while (m != 0) {
r = n % m; n = m; m = r;
}
printf("它们的最大公约数为:%d\n", n);
printf("它们的最小公倍数为:%d\n", p/n);
return 0;
}
6.2 输入一行字符,分别统计出其中英文字母,空格,数字和其他字符的个数
#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>
int main(){
char c;
int letters = 0, space = 0, digit = 0, other = 0;
printf("请输入一行字符: \n");
while ((c = getchar()) != '\n') {
if (c >= 'a'&& c<='z' || c >= 'A'&& c<='Z')
letters ++ ;
else if (c == ' ')
space ++;
else if (c >= '0'&&c<='9')
digit ++ ;
else
other++;
}
printf("字母数:%d\n空格数:%d \n数字数:%d\n其他字符数:%d\n", letters, space, digit, other);
return 0;
}
6.3 求Sn=a+aa+aaa+…+aa…a(n个a)之值,其中 a是一个数字, n表示a 的位数,例如:2+22+222+2222+22222(此时n=5),n由键盘输入。
#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>
int main(){
int a, n, i = 1, sn = 0, tn = 0;
printf("a,n= :");
scanf("%d,%d", &a, &n);
while (i <= n) {
tn = tn + a;
//赋值后的tn为i个a组成数的值
sn = sn + tn