输入一个4位数,要求逆序打印每一位数字,并打印逆序整数。要求用循环完...
发布网友
发布时间:2024-10-06 16:30
我来回答
共5个回答
热心网友
时间:2024-11-09 14:26
#include<stdio.h>
void main(){
int i,j,a,b,num[4],c;
printf("输入四位整数:\n");
scanf("%d",&a);
b=1000;
c=a;
printf("输出逆序每一位数字\n");
for(i=0;i<4;i++)
{num[i]=c/b;
c=c-num[i]*b;
b=b/10;}
for(i=3;i>=0;i--)
printf("%d ",num[i]);
printf("\n");
c=0;
b=1;
for(i=0;i<4;i++)
{c=num[i]*b+c;
b=b*10;}
printf("输入逆序四位整数:");
printf("%d",c);
getch();
}
刚写的,没写说明自己能看的懂的,都是简单的循环;
热心网友
时间:2024-11-09 14:27
#include <stdio.h>
void main()
{
int a[100],i=0,j,t;
do
{scanf("%d",&a[i]);i++;}
while (getchar()!='\n');
for (j=0;j<i-j;j++)
{t=a[j];a[j]=a[i-j-1];a[i-j-1]=t;}
for (j=0;j<i;j++)
printf("%d\t",a[j]);}
这个是逆序输出一个字符串的,改一下就行了
热心网友
时间:2024-11-09 14:26
//-----------------------------------------
#include <iostream>
#include <vector>
using namespace std;
//-----------------------------------------
int main()
{
vector<int> s;
int a;
cin>>a;
for(;a!=0;)
{
cout<<(a%10)<<endl;
s.push_back(a%10);
a=a/10;
}
for(int i=0;i<4;i++)
cout<<s[i];
}
刚自学了点C++,所以也不是很标准。如果你测试还有错误,记得告诉我下
热心网友
时间:2024-11-09 14:28
这是整数运算,其实可以用字符串运算,比较方便,结果也一样,但题目的意思就变了
#include <stdio.h>
void main()
{ int i,m,n,a[4];
printf("please input the number n:\n");
scanf("%d",&n);
a[0]=n/1000;
a[1]=n%1000/100;
a[2]=n%1000%100/10;
a[3]=n%1000%1000%10;
for(i=3;i>=0;i--)
printf("%d,",a[i]);
printf("\n");
m=1000*a[3]+100*a[2]+10*a[1]+a[0];
printf("%d\n",m);
}
热心网友
时间:2024-11-09 14:29
不太明白你的意思,能否举例说明?