编程题 从键盘上输入1个4位的整数a,分解出每一位数字,按逆序的数字组合出新的整数b。

作者&投稿:线妍 (若有异议请与网页底部的电邮联系)
【编程】从键盘输入一个四位正整数。首先分离出该正整数中的每一位数字,并按逆序显示输出各位数字~

两个地方错了。
第一,scanf()读入的应为变量的地址,所以
scanf("&d",x);应该是
scanf("%d",&x) //要用&x,否则程序出错
第二,
scanf("%d",a + b * 10 + c * 100 + d * 1000);应该是
printf("%d",a + b * 10 + c * 100 + d * 1000);

#include
using namespace std;
void main()
{
int num;
cout<<"input the data:"<<endl;
cin>>num;
if(num9999)
do{
cout<<"input wrong,try again!"<<endl;
cin>>num;
}while(num9999);
int temp=num,a[4],i=0;
cout<<"the reverse sorted is:"<<endl;
for(i=0;i<4;i++)
{
a[i]=temp%10;
temp/=10;
cout<<a[i];
}
cout<<endl;
for(i=0;i<4;i++)
for(int j=i+1;j<4;j++)
{
if(a[i]>a[j])
temp=a[i];
a[i]=a[j];
a[j]=temp;
}
cout<<"the maximum number which build by the "<<num<<" is:"<<endl;
for(i=0;i<4;i++)
cout<<a[3-i];
cout<<endl;
cout<<"the minimum number which build by the "<<num<<" is:"<<endl;
for(i=0;i<4;i++)
cout<<a[i];
cout<<endl;


}

main()

{int a,b=0,t;

scanf("%d",&a);

t=a;

while(t>0)

{b=b*10+t%10;

t/=10;}

printf("a=%d\n",a);

printf("b=%d\n",b);}

例如:

#include<iostream>

using namespace std;

int main()

{

int n;

printf("please input n (xxxx):");

scanf("%d",&n);

while(n!=0)

{

cout<<n%10<<endl;

n=n/10;

扩展资料:

整数中,能够被2整除的数,叫做偶数。不能被2整除的数则叫做奇数。即当n是整数时,偶数可表示为2n(n 为整数);奇数则可表示为2n+1(或2n-1)。

偶数包括正偶数(亦称双数)、负偶数和0。所有整数不是奇数,就是偶数。

在十进制里,我们可用看个位数的方式判断该数是奇数还是偶数:个位为1,3,5,7,9的数为奇数;个位为0,2,4,6,8的数为偶数。

参考资料来源:百度百科-整数



#include<bits/stdc++.h>
using namespace std;
int main(){
    string s;
    cin>>s;
    reverse(s.begin(),s.end());
    cout<<s;
    return 0;
}


#include<iostream> using namespace std; void main() { int num; cout<<"input the data:"<<endl; cin>>num; if(num<1000||num>9999) do{ cout<<"input wrong,try again!"<<endl; cin>>num; }while(num<1000||num>9999); int temp=num,a[4],i=0; cout<<"the reverse sorted is:"<<endl; for(i=0;i<4;i++) { a[i]=temp%10; temp/=10; cout<<a[i]; } cout<<endl; for(i=0;i<4;i++) for(int j=i+1;j<4;j++) { if(a[i]>a[j]) temp=a[i]; a[i]=a[j]; a[j]=temp; } cout<<"the maximum number which build by the "<<num<<" is:"<<endl; for(i=0;i<4;i++) cout<<a[3-i]; cout<<endl; cout<<"the minimum number which build by the "<<num<<" is:"<<endl; for(i=0;i<4;i++) cout<<a[i]; cout<<endl; }

Scanner sc=new Scanner(System.in);
String str=sc.next();
String []arr=str.split("");
for(int i=3;i>=0;i--){
System.out.print(arr[i]);
}
没有加上是不是整型的判断

main()
{int a,b=0,t;
scanf("%d",&a);
t=a;
while(t>0)
{b=b*10+t%10;
t/=10;}
printf("a=%d\n",a);
printf("b=%d\n",b);}


沙湾区13773992624: 编写程序,从键盘上输入一个4位数,如果4位数各位上的数字均为0或2或4或6或8输出“YES”,否则输出“NO” -
守眨板蓝:[答案] 0000 Y 2222 Y 4444 Y 6666 Y 8888 Y 其他的都是N? 如果是这样的话,使用个if多重语句就行了.

沙湾区13773992624: 【编程】从键盘输入一个四位正整数.首先分离出该正整数中的每一位数字,并按逆序显示输出各位数字#include #include void main (){\x09int a,b,c,d,x;\x09... -
守眨板蓝:[答案] 两个地方错了.第一,scanf()读入的应为变量的地址,所以scanf("&d",x);应该是scanf("%d",&x) //要用&x,否则程序出错第二,scanf("%d{...

沙湾区13773992624: 编程:从键盘输入一个四位的整数,输出各个数据位 -
守眨板蓝: 我用c写吧 #include<stdio.h> main() { int a; printf("输入一个四位的整数\n"); scanf("%d",&a); printf("个位%d 十位%d 百位%d 千位%d\n",a%10,(a/10)%10,(a/100)%10,a/1000); }

沙湾区13773992624: 从键盘任意输入一个4位数x,编程计算X的每一位数字相加之和(忽略整数前的正负号). -
守眨板蓝:[答案] #include main() { \x09int a,b,c,d; \x09int sum,i; \x09printf("输入一个四位数\n"); \x09scanf("%d",&i); \x09a=i/1000; \x09b=(i/10)%10; \x09c=(i/100)%10; \x09d=i%10; \x09sum=a+b+c+d; \x09printf("%d\n",sum); }

沙湾区13773992624: C语言编写程序从键盘任意输入一个4位数X,编程计算X的每一位数字相加之和(忽略整数前的正负号) -
守眨板蓝: #include<stdio.h>void main() {int i=0,sum=0;char s[10];scanf("%s",s);while(s[i]!=0){ if(s[i]>='0' && s[i]<='9')sum += s[i]-'0';i++;}printf("%s的每一位数字相加之和为%d\n",s,sum); }

沙湾区13773992624: 从键盘输入任意一个4位正整数,编程分隔出该4位数 的各位数字,计算它们的和并输出到显示器上 .#includeint main(){int a,b,c,d,e,f;scanf("%d",&e);e=(... -
守眨板蓝:[答案] 你好像对C语言的赋值符号不理解?e=(1000*a)+(100*b)+(10*c)+(1*d);这样是把(1000*a)+(100*b)+(10*c)+(1*d)的值赋给e,而不是把e分解成a,b,c,d改成这样吧:#includeint main(){int a,b,c,d,e,f;scanf("%d",&e);a=e/100...

沙湾区13773992624: 从键盘输入一个四位数,被认为是正整数X,编程计算X的每一位数字相加之和. -
守眨板蓝: #include "stdio.h"//包含头文件 main() { int x,a,b,c,d;//声明四个变量用于存储四位数及其各位的数 printf("请输入一个四位整数\n");//输出提示语句 scanf("%d",&x);//从屏幕上获取这个四位数 a=x%10;//获取个位 b=(x%100)/10;//获取十位 c=(x%1000)/100;//获取百位 d=x/1000;//获取千位 printf("%d各位相加结果为%d\n",x,a+b+c+d);//输出这个四位数及其各位的和 } vc上运行通过.希望你能满意

沙湾区13773992624: 用if语句实现程序:从键盘输入一个四位正整数,首先分离出该整数中的每一位数字,然后用分离出的数字组成用if语句实现程序:从键盘输入一个四位正整... -
守眨板蓝:[答案] #include void main() { int m,e,b,c,d,i,j,temp; scanf("%d",&m); e=m/1000; b=(m/100)%10; c=(m/10)%10; d=m%10; int a[4]={e,b,c,d}; for(i=0;i

沙湾区13773992624: 编程实现从键盘上输入一个四位数,如2017,程序输出各位数字之和(2+0+1+7),即程序输出10 -
守眨板蓝: #include int main() { using namespace std; int num; cin >> num; if(num>9999) cout < else { int tmp[4]; tmp[0] = num/1000; tmp[1] = num/100-tmp[0]*10; tmp[2] = num/10-tmp[0]*100-tmp[1]*10; tmp[3] = num-tmp[0]*1000-tmp[1]*100-tmp[2]*10; cout < } return 0; }

沙湾区13773992624: C语言编程:从键盘输入一个4位整数,求这个4位数的各位数字之和.如:输入的4位整数是1128,则输出结果为12. -
守眨板蓝: 把整数以字符数组读入 每个字符减48 相加即可

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 星空见康网