| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 818 人关注过本帖
标题:拜求C语言知识
只看楼主 加入收藏
zhangdapei
Rank: 1
等 级:新手上路
帖 子:2
专家分:0
注 册:2010-4-19
结帖率:0
收藏
已结贴  问题点数:20 回复次数:9 
拜求C语言知识
关于数组方面的,怎样将一个整数存放到一个数组中,要求逆顺序存放。。。。
搜索更多相关主题的帖子: C语言 知识 
2010-04-19 11:36
account
Rank: 3Rank: 3
等 级:论坛游侠
帖 子:91
专家分:107
注 册:2010-4-12
收藏
得分:4 
main()
{
 int a[5],i;
 printf("please input number:\n");
 for(i=4;i>=0;i--)
 scanf("%d,",&a[i]);
 for(i=0;i<=4;i++)
 printf("\n%d ",a[i]);
}
不知道这个是否可以满足你的需要,定义一个长度为5的数组,输入11,12,13,14,15,但其下标分别为a[4],a[3]..a[0],即逆序存放,顺序输出即可。
2010-04-19 11:46
liyang04300
Rank: 2
等 级:论坛游民
帖 子:75
专家分:94
注 册:2010-3-17
收藏
得分:4 
#include <stdio.h>
int reverse( int n, int* a )
{
int i = 0;
while ( n > 0 ) {
*a++ = n % 10;
n /= 10;
++i;
}
return i;
}

int main()
{
int n = 12345;
int a[100], i;
n = reverse( n, a );
for ( i = 0; i < n; ++i )
printf( "%d ", a[i] );
}
2010-04-19 12:01
liyang04300
Rank: 2
等 级:论坛游民
帖 子:75
专家分:94
注 册:2010-3-17
收藏
得分:0 
#include"stdio.h"
#include <stdio.h>
int reverse( int n, int a[0] )
{
int s = 0;
while ( n > 0 ) {
*a = n % 10;
n /= 10;
++s;
*a++;
}
return s;
}

int main()
{
int a[100], i,n;
n=12345;
n = reverse( n, a );
for ( i = 0; i < n; ++i )
printf( "%d ", a[i] );
getch();
}
 
2010-04-19 13:40
liyang04300
Rank: 2
等 级:论坛游民
帖 子:75
专家分:94
注 册:2010-3-17
收藏
得分:0 
#include"stdio.h"
#include <stdio.h>
int reverse( int n, int a[0] )
{
int s = 0;
while ( n > 0 ) {
*a = n % 10;
n /= 10;
++s;
*a++;
}
return s;
}

int main()
{
int a[100], i,n;
n=12345;
n = reverse( n, a );
for ( i = 0; i < n; ++i )
printf( "%d ", a[i] );
getch();
}
 
2010-04-19 13:59
ubuntulover
Rank: 4
等 级:业余侠客
帖 子:77
专家分:256
注 册:2010-4-9
收藏
得分:4 
#include <stdio.h>
#include <stdlib.h>

int main( )
{
    int n = 1;
    int i;
    int num,tnum;
    int * ary = NULL;

    printf("请输入要倒序存储的数:");
    scanf("%d",&num);
    tnum = num;
    /*判断该数字是几位数*/
    while(tnum /=10){
        n++;
    }

    /*分配存储该数的空间*/
    ary = malloc(n*sizeof(int));

    for(i = 0;i < n;i++){
        ary[i] = num%10;
        num/=10;
    }


    printf("逆序输出结果:");

    for(i = 0;i < n;i++){
        printf("%d  ",ary[i]);
    }

    printf("\n");

    free(ary);

    return 0;
}

还有一个更简单的方法,将数字作为字符串类型的读进去,然后根据c语言中提供的字符串的库函数比如strlen得到字符串的长度,申请空间,然后也不难了
2010-04-19 15:57
d7d7
Rank: 4
等 级:业余侠客
帖 子:91
专家分:210
注 册:2008-9-29
收藏
得分:4 
这么多人写,不错。
2010-04-19 16:28
小伊
Rank: 2
等 级:论坛游民
帖 子:27
专家分:33
注 册:2010-4-17
收藏
得分:4 
六楼不错,学习了
2010-04-19 16:32
liyang04300
Rank: 2
等 级:论坛游民
帖 子:75
专家分:94
注 册:2010-3-17
收藏
得分:0 
六楼写的好,学习了!
2010-04-19 17:12
liyang04300
Rank: 2
等 级:论坛游民
帖 子:75
专家分:94
注 册:2010-3-17
收藏
得分:0 
六楼的把那个字符串类型的也写出来吧,大家共同学习!顶!
2010-04-19 17:15
快速回复:拜求C语言知识
数据加载中...
 
   



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

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