【2015】给一个不多于三位的正整数,求出它是几位数,并分别打印出各位上的数字。
2017-10-06 19:23
441 查看
Time Limit: 3 second
Memory Limit: 2 MB
给一个不多于三位的正整数,求出它是几位数,并分别打印出各位上的数字。当输入正整数不符合规则,输出“error”字样。
Input
输入文件只有一行,内容为一个不多于三位数的正整数N,如123。Output
输出文件有两行第一行为正整数N的位数,3 第二行输出各位上的数字:1 2 3Sample Input
326
Sample Output
3 3 2 6
【题解】
如果用字符串输入的话,很容易获取位数,但是题目最后数据里面有负数。。这个时候要判断一下字符串的首位是不是负号。也是可以解决问题的。
【代码】
#include <cstdio> #include <iostream> #include <string> #include <stdlib.h> using namespace std; string s2; int si; void s_p() { printf("error"); exit(0); } void input_data() { cin >> s2; si = s2.size(); if (si>3) s_p(); if (s2[0] == '-') s_p(); //判断该数为负数或为0 if (s2 == "0") s_p(); } void output_ans() { cout << si << endl; //输出字符串的长度即可。 for (int i = 1;i <= si-1;i++) cout << s2[i-1] << ' '; cout << s2[si-1]; } int main() { input_data(); output_ans(); return 0; }
相关文章推荐
- 给出一个不多于5位的正整数,(1) 求出它是几位数(2) 分别打印出每一位数字(3) 按逆序打印出各位数字,例如原数为321,应输出123
- 给一个不多于5位的正整数,要求:1、求出它是几位数;2、分别打印出每一位数字; 3、按逆序打印出各位数字,例如原数为321,应输出123。
- 给一个不多于5位的正整数,要求:一、求它是几位数,二、逆序打印出各位数字。
- 给出一个不多于5位的整数,要求 1、求出它是几位数 2、分别输出每一位数字 3、按逆序输出各位数字,例如原数为321,应输出123
- 给一个不多于5位的正整数,要求:一、求它是几位数,二、逆序打印出各位数字。 【注意: 如果输入的大于了5位数要求用户重新输入】
- 给出一个不多于5位的整数,要求 1、求出它是几位数 2、分别输出每一位数字 3、按逆序输出各位数字,例如原数为321,应输出123
- 给一个不多于5位的正整数,要求:一、求它是几位数,二、逆序打印出各位数字
- 输入一个不多于5位的正整数,要求:一、求它是几位数,二、逆序打印出各位数字。
- 给一个不多于5位的正整数,要求:一、求它是几位数,二、逆序打印出各位数字。
- 给一个不多于5位的正整数,要求:求它是几位数并且逆序打印出各位数字。
- 给一个不多于五位的正整数,要求: (1)求出他是几位数 (2)分别输出每位数字 (3)按逆序输出各位数字
- 输入一个不多于5位的正整数。1、求出它是几位数;2、分别输出每一位数字;3、按逆序输出各位数字。
- 给一个不多于5位的正整数,要求:一、求它是几位数,二、逆序打印出各位数字。
- 习题 4.9 给一个不多于5位的正整数,要求:1. 求出它是几位数;2. 分别输出每一位数字;3. 按逆序输出各位数字,例如原数为321,应输出123。
- 给一个不多于5位的正整数,要求:一、求它是几位数,二、逆序打印出各位数字。
- java经典算法_023给一个不多于5位的正整数,要求:一、求它是几位数,二、逆序打印出各位数字。
- java中给出一个不多于5位数的正整数,要求,第一是求出它是第多少位的,逆序打印出各位数字
- 给一个不多于5位的正整数,要求:(1)求它是几位数,(2)逆序打印出各位数字。
- 给一个不多于5位的正整数,要求:一、求它是几位数,二、逆序打印出各位数字
- 【程序24】TestNumber.java 题目:给一个不多于5位的正整数,要求:一、求它是几位数,二、逆序打印出各位数字。