用C语言编写的,这样直接遍历非常简单,不过对于节省时间和内存资源来说是非常粗糙的!
不过做事情先粗后精,快速迭代才是正路,不要想一开始就非常完美!
代码如下:
#include<stdio.h>
int main(){
int n,m;
int cnt=0,set=0,sum=0;
scanf("%d",&n);
for(int i=1;i<=n;i++){
int j=i;
int k=i%10;
while(j!=0){
j=j/10;
if(j==1||k==1){
set=1;
sum++;
}else{
k=j%10;
continue;
}
}
if(set){
cnt+=sum;
sum=0;
}
set=0;
}
printf("%d",cnt);
return 0;
}
运行后与案例输出一致。
本文介绍了一个使用C语言实现的遍历算法,通过直接遍历的方式进行计数操作。虽然该方法在效率上可能不够优化,但作为快速迭代和初步实现的手段,它提供了一种简单明了的解决方案。
2994

被折叠的 条评论
为什么被折叠?



