本文主要是介绍基于visual Studio2013解决C语言竞赛题之0417四倍数,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
题目
解决代码及点评
这道题目还是考察循环,通过循环遍历1234~9876,然后将每个数都用算法判断其是否符合条件#include <stdio.h> #include <stdlib.h> int f4171(int num) {int count=0;while(num){count++;num/=10;}return count; }// 这个函数返回位数的转换 int f4172(int num) { int sum=0;//要返回的数字// 计算num有多少位int n=f4171(num);int Times=1;// 计算位数对应的最小值,比如四位是1000for (int i=1;i<n;i++){Times*=10;}// 翻转while(num){int temp=num%10; // temp保存当前最后一位sum+=temp*Times; // 将最后一位成语当前的times,累加到和num/=10; // num去掉一位Times/=10; // times也去掉一位,准备下次的循环}return sum; } void main() {for (int i=1234;i<9876;i++) // 遍历{if (i==4*f4172(i)) // 如果经过转换后,再乘以4等于自身,说明符合条件{printf("%4d",i);break;}}system("pause"); }
代码下载及其运行
代码下载链接:
http://download.csdn.net/detail/yincheng01/6640977
解压密码为c.itcast.cn
下载解压后用VS2013打开工程文件
点击 “本地Windows调试器” 执行
程序运行结果
这篇关于基于visual Studio2013解决C语言竞赛题之0417四倍数的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!