| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 519 人关注过本帖
标题:遇到难题了
只看楼主 加入收藏
whys
Rank: 1
等 级:新手上路
帖 子:50
专家分:8
注 册:2009-10-27
结帖率:100%
收藏
已结贴  问题点数:15 回复次数:3 
遇到难题了
输入一个5位数的整数,用5个变量分别记录个位、十位、百位、千位、万位得数,怎么实现?
比如:输入12345  就记录  a[0]=1、 a[1]=2、 a[2]=3、 a[3]=4、 a[4]=5
搜索更多相关主题的帖子: 难题 
2009-11-16 20:53
jinmu
Rank: 2
等 级:论坛游民
帖 子:34
专家分:93
注 册:2009-11-9
收藏
得分:15 
#include<stdio.h>
#define N 5
void main()
{
    int a[N],i;
    int m;
    scanf("%d",&m);
    a[0]=m/10000;
    a[1]=(m-10000*a[0])/1000;
    a[2]=(m-10000*a[0]-a[1]*1000)/100;
    a[3]=(m-10000*a[0]-a[1]*1000-a[2]*100)/10;
    a[4]=m%10;
    for(i=0;i<N;i++)
    {
        printf("%d\n",a[i]);
    }
}
2009-11-16 21:29
whys
Rank: 1
等 级:新手上路
帖 子:50
专家分:8
注 册:2009-10-27
收藏
得分:0 
没想到这样实现
2009-11-16 22:07
keepc
Rank: 1
等 级:禁止访问
帖 子:61
专家分:9
注 册:2009-11-15
收藏
得分:0 
#include "stdafx.h"

#define N 5

void reverse(int a[],int n );

int main(int argc, char* argv[])
{
    int number,a[N],i = 0;

    printf("请输入一位5位正整数: ");
    scanf("%d",&number);
    do{
        a[i++] = number % 10;

    }while((number /= 10) > 0);
    reverse(a,N);
    for(i = 0;i < N;i++)
        printf("a[%d] = %d\n",i,a[i]);

    return 0;
}

void reverse(int a[],int n )
{
    int i,j,*ptr1,*ptr2,temp;

    ptr1 = a;
    ptr2 = a + n - 1;
    for(i = 0,j = n - 1;i < j;i++,j--)
    {
        temp = *ptr1;
        *ptr1 = *ptr2;
        *ptr2 = temp;
        ptr1++,ptr2--;
    }
}
2009-11-16 22:20
快速回复:遇到难题了
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.020675 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved