1. #include<stdio.h>
  2. int main()
  3. {
  4. int n;
  5. int d = 0;;
  6. int u = 1;
  7. int c = 0;
  8. int i = 0;
  9. scanf("%d", &n);
  10. for (int a = 1;a <= n;a++)
  11. {
  12. i = 0; //用来判断好数,每次循环归零
  13. u = 1; //因为最少有一位数
  14. d = a; //用来防止a的数值改变
  15. for (;d > 10;)
  16. {
  17. d /= 10;
  18. u++; //u统计位数
  19. }
  20. d = a;
  21. for (int w = 1;w <= u;w++)
  22. {
  23. if (w % 2 != 0 && d % 2 != 0) //判断好数
  24. {
  25. i++;
  26. }
  27. else if (w % 2 == 0 && d % 2 == 0) //只要判断奇数和偶数不用提取个位
  28. {
  29. i++;
  30. }
  31. d /= 10; //更换个位
  32. }
  33. if (u == i) //判断
  34. {
  35. c++; //统计好数
  36. }
  37. }
  38. printf("%d", c); //输出
  39. return 0;
  40. }
点赞(1)
 

10 分

1 人评分

 

C语言网提供由在职研发工程师或ACM蓝桥杯竞赛优秀选手录制的视频教程,并配有习题和答疑,点击了解:

一点编程也不会写的:零基础C语言学练课程

解决困扰你多年的C语言疑难杂症特性的C语言进阶课程

从零到写出一个爬虫的Python编程课程

只会语法写不出代码?手把手带你写100个编程真题的编程百练课程

信息学奥赛或C++选手的 必学C++课程

蓝桥杯ACM、信息学奥赛的必学课程:算法竞赛课入门课程

手把手讲解近五年真题的蓝桥杯辅导课程

评论列表 共有 0 条评论

暂无评论