从键盘输入一个正整数,分别求从1到n之间所有个位是3或5的数之和c语言编程
时间: 2024-05-09 07:18:58 浏览: 8
```c
#include <stdio.h>
int main() {
int n, sum = 0;
printf("请输入一个正整数n:");
scanf("%d", &n);
for (int i = 1; i <= n; i++) {
if (i % 10 == 3 || i % 10 == 5) {
sum += i;
}
}
printf("1到%d之间所有个位是3或5的数之和为:%d", n, sum);
return 0;
}
```
相关问题
用c语言编程实现,从键盘输入一个正整数,统计该正整数各个数位为3的个.
好的,以下是用 C 语言编写的代码,用于实现从键盘输入一个正整数,统计该正整数各个数位为 3 的个数:
```c
#include <stdio.h>
int main() {
int num, digit, count = 0;
printf("请输入一个正整数:\n");
scanf("%d", &num);
while (num > 0) {
digit = num % 10;
if (digit == 3) {
count++;
}
num /= 10;
}
printf("该正整数各个数位为 3 的个数为:%d\n", count);
return 0;
}
```
首先,我们通过 `scanf` 函数从键盘输入一个正整数 `num`。然后,我们使用 `while` 循环来依次获取该正整数 `num` 的每一位数值,并判断该数值是否为 3。如果该数值为 3,则将计数器 `count` 的值加 1。最后,我们输出计数器 `count` 的值,即为该正整数各个数位为 3 的个数。
C语言编程实现如下功能,键盘输入一个正整数,编程求出这位数是个几位数,并将其倒着输出。
可以通过循环和取模运算来实现这个功能。具体来说,每次对输入的数取模10,即可得到最后一位数字,然后将这个数字乘以10的对应次幂加到结果上,再将原数除以10继续进行相同的操作,直到原数为0为止。
以下是示例代码:
```c
#include <stdio.h>
int main() {
int n, digit, i, count = 0, reversed = 0;
printf("请输入一个正整数:");
scanf("%d", &n);
// 计算位数
while (n > 0) {
digit = n % 10;
reversed = reversed * 10 + digit;
n /= 10;
count++;
}
printf("该数是%d位数,倒着输出为:", count);
// 输出倒序结果
for (i = 0; i < count; i++) {
digit = reversed % 10;
printf("%d", digit);
reversed /= 10;
}
printf("\n");
return 0;
}
```
运行程序,输入一个正整数,可以得到输出结果:
```
请输入一个正整数:123456
该数是6位数,倒着输出为:654321
```