标签:
(1 )分离一个三位非负整数
设x为一个整型变量,从键盘输入x的值( 三位,例如567 ), 然后将x的百、十、个位数分离出来,分别保存到整型变量a、b、c中, 然后将a、b、c进行输出。
/* 设x为一个整型变量,从键盘输入x的值( 三位,例如567 ), 然后将x的百、十、个位数分离出来,分别保存到整型变量a、b、c中, 然后将a、b、c进行输出。 */ #include <iostream> using namespace std; int main() { int x; //x为整型变量 cout<<"请输入一个三位整数:"; cin>>x; //从键盘输入x int a,b,c; //a存放x的百位,b存放x的十位,c存放x的个位 a=x/100; b=x%100/10; c=x%10; cout<<x<<" 的百位、十位、个位分别为:"<<a<<" "<<b<<" "<<c<<endl; return 0; }
(2)分离一个任意长度的非负整数(从低位到高位--用循环实现)
/* x为任意整数,从键盘输入一个整数,由低位到高位输出x的各位数。 方法:用循环实现 */ #include <iostream> using namespace std; int main() { int x; //x为整型变量 cout<<"请输入一个非负整数:"; cin>>x; //从键盘输入x while(x<0) //循环输入直到输入的x>=0 { cout<<"您输入的数是负数,请重新输入:"; cin>>x; } cout<<"从低位到高位依次输出为:"; if(x==0) cout<<x; else { while(x>0) //从低位到高位循环输出 { cout<<x%10<<" "; x=x/10; } } cout<<endl; return 0; }
(3)分离一个任意长度的非负整数(从高位到低位--用循环实现)
/* x为任意整数,从键盘输入一个整数,由高位到低位输出x的各位数。 方法:用循环实现 方法中要用到指数函数double pow(double x,double y); 函数结果是求以x为底、以y为指数的结果,注意结果为double类型 */ #include <iostream> #include <cmath> using namespace std; int main() { int x; //x为整型变量 int a; cout<<"请输入一个非负整数:"; cin>>x; //从键盘输入x while(x<0) //循环输入直到输入的x>=0 { cout<<"您输入的数是负数,请重新输入:"; cin>>x; } a=x; int length=1; //length记录输入的非负整数的长度 while((a/10)>0) //从低位到高位循环输出 { length++; a=a/10; } cout<<"输入的非负整数长度为:"<<length<<endl; length--; cout<<"从高位到低位依次输出为:"; if(x==0) cout<<x; else { while(x>0) //从低位到高位循环输出 { a=(int)pow(10,length--); // pow(10,length)结果是double类型 cout<<x/a<<" "; x=x%a; } } cout<<endl; return 0; }
标签:
原文地址:http://www.cnblogs.com/litao0505/p/5239497.html