遍一个程序,是个试题。

来源:百度知道 编辑:UC知道 时间:2024/06/02 22:58:41
给出一个不高于5位的正整数,要求:
1,求出它是几位数。
2.分别输出每一个数字。
3.按逆序输出个位数字,例如原数为321,应输出123.

大家帮忙,谢谢
本人刚学C语言,能不能给我做一个简单,太深我就看不明白了。这道题是《C程序设计》(第三版)中第五大章选择结构程序设计中后面的习题里面的第7题。
大家写的我没有一个能看明白

SinbadLee的程序
输入abc
死循环
真的好健壮啊!

不想跟你争了 没有意义 你继续抱着你那个按位模算法吧
#include <stdio.h>
#include <string.h>

int n;
char ch[6];

int main(){
scanf("%d",&n);
sprintf(ch,"%d",n);
printf("%d\n",strlen(n)-1);
for(int i = 0;i<strlen(n);i++)
printf("%d\n",ch[i]);
for(int i = strlen(n)-1;i>=0;i--)
printf("%d",ch[i]);
return 0;
}

程序不是越简单越好的,楼上的程序存在严重隐患,如果输入一个6位数,程序死了。

macbookair 一看就是学生吧,编写的程序不能实用。你是从键盘输入,你能控制输入的人输入的正好是5位或者以下吗?输入6位怎样?
程序要足够健壮!

严重同意 晨风_后天 的观点。写程序不仅仅是要完成功能,要足够健壮,友好界面。如果使用程序的人不小心输入了非预期的内容,程序就死了,你能说是使用者的问题吗?肯定是写程序的人的问题了
#include <stdlib.h>
#include <stdio.h>

int fun(int iValue)
{
int inputvalue = iValue;
int n = 0;
while(inputvalue)
{
n++;
//逆序输出每位数字
printf("Number %d: %d&