2024-09-02 00:13:20
#include <stdio.h>
int main()
{
int n, sum = 0;
printf("请输入一个正整数:");
scanf("%d", &n);
for (int i = 1; i <= n; i++)
{
int digit = i % 10;
if (digit == 3 || digit == 5)
{
sum += i;
}
}
printf("1到%d之间所有个位数是3或5的数的和为:%d\n", n, sum);
return 0;
}
在这个程序中,我们使用 for 循环遍历从 1 到 n 的所有整数,判断它们的个位数是否为 3 或 5,如果是,则将它们的和累加到变量 sum 中。最终输出变量 sum 的值,即为题目所求。
需要注意的是,题目要求输入一个正整数 n,因此我们需要对输入的值进行合法性检查,以确保它是正整数。此外,如果 n 的值非常大,累加过程中可能会导致整数溢出,因此需要对数据类型进行选择和判断,以确保计算结果正确。