1149 - C语言5.11

通过次数

0

提交次数

0

时间限制 : 1 秒 内存限制 : 32 MB

给定一个不多于5位的正整数,要求:

1、 求出它是几位数;

2、 分别输出每一位数字,且每一位数字之后输出一个空格;

3、 按逆序输出各位数字,且每一位数字之后输出一个空格。

题目输入

一个不多于5位的正整数。

题目输出

共有三行,分别对应题目描述中提到的三个要求。

请注意行尾输出换行。

输入/输出样例

输入格式

34568

输出格式

5
3 4 5 6 8 
8 6 5 4 3 

C语言解答

#include<stdio.h>
int main(){
int a,i=0,j,c[5];
scanf("%d",&a);
  while(a!=0){
    c[i++]=a%10;
    a=a/10;
  }
printf("%d\n",i);
for(j=i-1;j>0;j--)
  printf("%d ",c[j]);
printf("%d \n",c[j]);

for(j=0;j<i-1;j++)
  printf("%d ",c[j]);
printf("%d \n",c[j]);
  return 0;
}

C++解答

#include <stdio.h>
int main() {
	int v, i, digit;
	int d[10];
	scanf("%d", &v);
	digit = 0;
	while (v > 0) {
		digit++;
		d[digit] = v % 10;
		v /= 10;
	}
	printf("%d\n", digit);
	for (i = 1;i <= digit;i++)
		printf("%d ", d[digit + 1 - i]);
	printf("\n");
	for (i = 1;i <= digit;i++)
		printf("%d ", d[i]);
	printf("\n");
	return 0;
}

Java解答

import java.util.Scanner;

class Main
{
	public void Work(int x)
	{
		int ct=0;
		int[] a=new int[5];
		while(x!=0)
		{
			a[ct++]=x%10;
			x=x/10;
		}
		System.out.println(ct);
		int i;
		for(i=ct-1;i>=0;i--)
		{
			System.out.print(a[i]+" ");
		}
		System.out.println();
		for(i=0;i<ct;i++)
		{
			System.out.print(a[i]+" ");
		}
		
		
	}
	public static void main(String[] args)
	{
		Scanner cin=new Scanner(System.in);
		Main t=new Main();
		while(cin.hasNext())
		{
			int x=cin.nextInt();
			t.Work(x);
		}
	}
}

Python解答

x = list(raw_input())
print len(x)
print ' '.join(x),''
x.reverse()
print ' '.join(x),''