1.求1~100 的3 的倍数
# include <stdio.h>
int main()
{
for (int i = 1; i <= 100; i++)
{
if (i % 3 == 0)
{
printf("%d ", i);
}
}
return 0;
}
2.1到 100 的所有整数中出现多少个数字6
# include <stdio.h>
int main()
{
int count = 0;//计数器
for (int i = 1; i <= 100; i++)
{
if (i % 10 == 6 )//个位为6
{
count++;
}
if (i / 10 == 6 )//十位为6
{
count++;
}
}
printf("%d", count);
return 0;
}
3.计算1 / 1 - 1 / 2 + 1 / 3 - 1 / 4 + 1 / 5 …… + 1 / 99 - 1 / 100 的值
# include <stdio.h>
int main()
{
float i = 1;
double sum = 0;
for (int j= 1;j <= 100; j++)
{
sum += i / j;
i *= -1;//符号变化
}
printf("%lf", sum);
return 0;
}
3.乘法口诀表
# include <stdio.h>
int main()
{
for (int i = 1; i <= 9; i++)
{
for (int j = 1; j <= i; j++)
{
printf("%d*%d=%d ", i, j, i * j);
}
printf("\n");
}
return 0;
}
4.判断三角形
# include <stdio.h>
int main()
{
int a, b, c;
scanf("%d %d %d", &a, &b, &c);
if (a + b > c && a + c > b && b + c > a)
{
if (a == b || b ==c || a==c)
{
printf("等腰三角形");
}
else if (a == b && b == c)
{
printf("等边三角形");
}
else
{
printf("其他三角形");
}
}
else
{
printf("构成不辽三角形");
}
return 0;
}
5.数字金字塔
# include <stdio.h>
int main()
{
int i, j;
for (i = 1; i <= 4; i++)//列
{
for (int k = i; k < 4; k++)//每一行打印多少空格
{
printf(" ");
}
for (j = 1; j <= i; j++)//行
{
printf("%d " , i);
}
printf("\n");
}
return 0;
}
6.计算1!+2!+3!+...+10!的值
# include <stdio.h>
int main()
{
int sum = 0;
for (int i = 1; i <= 10; i++)//1到10的范围
{
int flag = 1;
for (int j = 1; j <= i; j++)//1到10的每个数字的阶乘
{
flag *= j;
}
sum += flag;//存储每一个数字的阶乘
}
printf("%d", sum);
return 0;
}
7.打印2000到3000的闰年
# include <stdio.h>
int main()
{
for (int i = 2000; i <= 3000; i++)
{
if ((i % 4 == 0 && i % 100 != 0) || (i % 400 == 0))
{
printf("%d ", i);
}
else
continue;
}
return 0;
}
8.输入若干成绩,输入负数为止,统计最高成绩,和最小成绩
# include <stdio.h>
int main()
{
int grade;//分数
int max = 1;
int min = 99;
while(1)
{
scanf("%d" , grade);
if(grade <0)
break;
if(grade > max)
max = grade;
if(grade < min)
min = grade;
}
printf("最大数为:%d , 最小数为:%d" , max, min);
return 0;
}
9.输入两个整数求他们的最大公约数和最小公倍数之和
# include <stdio.h>
int main()
{
int a ,b;
scanf("%d %d" , &a,&b);
int a1 = a;
int a2 = b;
while(b1)//欧几里得算法
{
int ys = a1 % b1;
a1 = b1;
b1 = ys;
}
//循环结束后a1就是最大公约数
int min_gb = a * b / a1;
int sum = min_gb +a1;
printf("%d" , sum);
return 0;
}
10.求1+12+123+1234+12345的和
# include <stdio.h>
int main()
{
int sum = 0;
int cj = 0;
for (int i = 1; i <= 5; i++)
{
cj = cj * 10 + i;
sum += cj;
}
printf("%d", sum);
return 0;
}
11.1000以内的完数
# include <stdio.h>
int main()
{
int i = 0;
int temp = 0;
for ( i = 1; i < 1000; i++)
{
int sum = 0;
for (int j = 1; j <= i-1; j++)
{
if (i % j == 0)
{
sum += j;
}
}
if (sum == i)
{
printf("%d ", i);
temp = i;
}
else
continue;
}
return 0;
}
12.水仙花数
# include <stdio.h>
# include <math.h>
int main()
{
for (int i = 100; i < 1000; i++)
{
int sum = 0;
int temp = i;
while (temp)
{
sum += (int)pow(temp % 10, 3);
temp /= 10;
}
if (sum == i)
printf("%d ", i);
else
continue;
}
return 0;
}
13.求a+aa+aaa+aaaa+a....a n是项数通过键盘输入,a是数字
# include <stdio.h>
int main()
{
printf("请输入你的数字");
int num = 0;
scanf("%d", &num);
printf("请输入你的项数");
int n = 0;
scanf("%d", &n);
int sum = 0;
int flag = 0;
for (int i = 1; i <=n; i++)
{
flag= flag * 10 + num;
sum += flag;
}
printf("%d", sum);
return 0;
}
14.打印菱形
# include <stdio.h>//打印菱形,分两部分打
int main()
{
int n = 0;
scanf("%d", &n);
//上部分
for (int i = 1; i <= n; i++)
{
for (int k = i; k < n; k++)
{
printf(" ");
}
for (int j = 1; j <= i; j++)
{
printf("* ");
}
printf("\n");
}
//下部分
for (int i = 1; i <= n - 1; i++)
{
for (int k = 1; k <= i; k++)
{
printf(" ");
}
for (int j = i; j <= n - 1; j++)
{
printf("* ");
}
printf("\n");
}
return 0;
}