同一个题目,不同的程序,同样的结果,大家爱binge(谁)
本周有一道题目:
下面将陆续列出不同同学设计的的程序,各有千秋,肥瘦不同,但结果相同,大家喜欢谁?从中也可以看出设计程序美妙!
原题:编程实现,输入一个整数,计算整数是几位数,输出各位数,并计算各位数的总和。
同学一:排骨型
#include using namespace std;int main()
{int num,i=0,add=0;//i作为计数cout << "请输入一个数字:" << endl;cin >> num;while (num!=0){add=add+num%10;//求模得个位上数值且相加num=num/10;//降低一位i++;}cout << "该数由"<
同学二:丰满型
/***************************************************
*** 功能:计算一个整数的位数,输出各位数, ***
*** 计算各位数的总和 ***
*** BY:HH ***
***************************************************/#include
using namespace std;
int main()
{long int number,num;int weishu=0,tmp,sum=0;cout<<" 请输入一个小于十位的整数:";//长整形最大也就识别十位,再高多一位就溢出了。cin>>number; //输入一个数并保存到number中for(num=10;num<=10000000000;num=num*10) //开始判断,一开始比较值设置为10,不设为1是因为任何数除以1都是本身{ //每次执行语句之后,num的值都要乘以10,即进一位。weishu++; if(number1) //答案是可以,但还要增加一个goto语句。因为goto语句降低了程序的可读性,所以一般不采取{ num=num/10; //利用我们上面的比较的num值来做除数tmp=number/num; //先算出最高位的数字number=number%num; //除去最高位的数字,取剩下的数字并存放在number中sum+=tmp; //将各位上的数字逐个相加cout<
同学三:一板一眼忠厚型
#include
using namespace std;int main()
{long sum=0,num,j,k,i=0; //i存放它是几位数字,sum存放各个位数相加之和,num获取数字cout<<"请输入一个整数"<>num;k=num;while(num!=0) //计算它是几位数字{num=num/10;i++;}cout<<"它总共由"<
同学四:还属小胖型,但是一个可爱小胖。
#include "stdafx.h"
#include
using namespace std;
int _tmain(int argc, _TCHAR* argv[])
{ int a,b,c,d=0; cout<<"please input a number"<>a; for(b=10;b<=a;b*=10) { if(a/b>1) c=1; d+=c; } cout<<"这是一个"<=1;b=b/10) { c=a/b; d+=c; a%=b; } cout<<"各位数之和等于:"<
程序五:妩媚卖弄型
/***************************************************
** 输入一个整数并求其位数以及输出各位数之和 **
** 自动化1121 李庆典 **
***************************************************/ #include //预编译处理命令
#include //调用数学函数
using namespace std; //标准名字空间 int main () //主函数
{ long a; int b; int c=0; double d=0; int e=0,f=0; cout<<"请输入所要求的整数"<>a; while(d<=a) //判断该整数的位数 { d=pow(double(10),c); c++; } cout<<"该数为"<=0) { d=pow(double(10),c); e=a/d; cout<
本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!
