C语言中。任意输入一个整数,提出奇数反向输出,提出偶数正向输出,还要求奇偶数字各个的个数。
回答的。我回寝室上另一个号给你多加100分。。。
#include <stdio.h>
void main()
{
int N = 0;
printf("请输入一个整数:");
scanf("%d",&N);
int arr[2][10];
int i = 0;
int j = 0;
while (N != 0)
{
int k = N % 10;
N = N / 10;
if(k % 2 == 0)
{
arr[0][i] = k;
i++;
}
if(k % 2 == 1)
{
arr[1][j] = k;
j++;
}
}
printf("偶数正向:\n");
for (int m = i - 1; m >= 0; m--)
{
printf("%d\t", arr[0][m]);
}
printf("\n共有%d个偶数\n\n", i);
printf("奇数反向:\n");
for (int n = 0; n < j; n++)
{
printf("%d\t", arr[1][n]);
}
printf("\n共有%d个奇数\n\n", j);
}
运行范例:
温馨提示:答案为网友推荐,仅供参考
第1个回答 2012-05-14
不是非常明白你的意思。你看这两个哪个是:
#include <stdio.h>
void main(void)
{
int a=0,b=0,t=0;
printf("请输入一个整数:");
scanf("%d",&a);
if(a%2)
{
for(;a!=0;)
{
t=a%10;
b=b*10+t;
a=a/10;
}
}
else
b=a;
printf("%d\n",b);
}
#include <stdio.h>
void main(void)
{
int a,b[10],c[10],d[10],i=0,j=0,k=0,l=0;
printf("请输入一个整数:");
scanf("%d",&a);
for(;a!=0;a=a/10,i++)
b[i]=a%10;
for(;j<=i;j++)
{
if(b[j]%2)
c[k++]=b[j];
else
d[l++]=b[j];
}
//接下来要看你需不需要一个完整的数了,如果不需要,那就这样
printf("奇数:");
for(i=0;i<k;i++)
printf("%d",c[i]);
printf("\n");
printf("偶数:");
for(l-=2;l>=0;l--)
printf("%d",d[l]);
printf("\n");
}
#include <stdio.h>
void main(void)
{
int a=0,b=0,t=0;
printf("请输入一个整数:");
scanf("%d",&a);
if(a%2)
{
for(;a!=0;)
{
t=a%10;
b=b*10+t;
a=a/10;
}
}
else
b=a;
printf("%d\n",b);
}
#include <stdio.h>
void main(void)
{
int a,b[10],c[10],d[10],i=0,j=0,k=0,l=0;
printf("请输入一个整数:");
scanf("%d",&a);
for(;a!=0;a=a/10,i++)
b[i]=a%10;
for(;j<=i;j++)
{
if(b[j]%2)
c[k++]=b[j];
else
d[l++]=b[j];
}
//接下来要看你需不需要一个完整的数了,如果不需要,那就这样
printf("奇数:");
for(i=0;i<k;i++)
printf("%d",c[i]);
printf("\n");
printf("偶数:");
for(l-=2;l>=0;l--)
printf("%d",d[l]);
printf("\n");
}
第2个回答 2012-05-14
是小于这个整数的所有奇数和偶数吗?