| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 610 人关注过本帖
标题:新手求助!!请大侠们帮帮忙!
只看楼主 加入收藏
zj1979
Rank: 1
等 级:新手上路
帖 子:9
专家分:0
注 册:2005-10-11
收藏
 问题点数:0 回复次数:9 
新手求助!!请大侠们帮帮忙!
编写一个程序,用户输入一个正整数,把他的各位数字前后颠倒一下.并输出颠倒后的结果.
哪位热心大哥帮帮兄弟,兄弟是个初学者!谢谢了!!
搜索更多相关主题的帖子: 正整数 大哥 用户 
2005-10-11 20:40
philip_yin
Rank: 1
等 级:新手上路
帖 子:47
专家分:0
注 册:2005-10-6
收藏
得分:0 

我编了这样的一个程序,代码如下: # include <stdio.h>

int main() { int n,i=0; int s[100]; printf("请输入一个正整数:"); scanf("%d",&n); while(n >= 10) { s[i] = n%10; n = n / 10; i++; } i++; s[i] = n%10; while(i >=0 ) { printf("%d",s[i]); i--; } printf("\n");

return 0; } 大家觉得我的代码有问题吗?我在vc下编译没有问题,可是显示结果就不对了,望高人给指导一下,谢谢!类似的问题困扰我好久了


2005-10-11 21:58
aolong
Rank: 1
等 级:新手上路
帖 子:248
专家分:0
注 册:2005-10-11
收藏
得分:0 
回复:(zj1979)新手求助!!请大侠们帮帮忙!
把地一个while语句后面的i++;去掉就可以了

奋斗之中,朦胧有你,一切已变的那么飘渺虚无...
2005-10-11 22:19
aolong
Rank: 1
等 级:新手上路
帖 子:248
专家分:0
注 册:2005-10-11
收藏
得分:0 
把第一个while语句后的i++去掉就可以了
数组下标隔的有数

奋斗之中,朦胧有你,一切已变的那么飘渺虚无...
2005-10-11 22:22
philip_yin
Rank: 1
等 级:新手上路
帖 子:47
专家分:0
注 册:2005-10-6
收藏
得分:0 
楼上的aolong,按你说的做法,输出结果依然是不对的。(另外,我觉得第一个while循环后面的i++语句是不可缺少的)
大家再帮帮我啊,谢谢了!

[此贴子已经被作者于2005-10-11 22:58:31编辑过]



2005-10-11 22:45
wenyong
Rank: 1
等 级:新手上路
帖 子:251
专家分:0
注 册:2005-8-9
收藏
得分:0 
# include <stdio.h>

int main() { int n,i=0; int s[100]; printf("请输入一个正整数:"); scanf("%d",&n); while(n >= 10) { s[i] = n%10; n = n / 10; i++; } i++; //////这个有什么用? s[i] = n%10; // 这个呢? while(i >=0 ) { printf("%d",s[i]); i--; } printf("\n");

return 0; }


2005-10-12 08:54
凌云
Rank: 1
等 级:新手上路
威 望:1
帖 子:78
专家分:0
注 册:2005-9-17
收藏
得分:0 

按楼主的思路改了一下: # include <stdio.h>

int main() { int n,i=0; int s[100]; printf("请输入一个正整数:"); scanf("%d",&n); if(n<10) { printf("%d",n); } else { while(n >= 10) { s[i] = n%10; n = n / 10; i++; if(n<10) { s[i]=n; } } for(int j=0;j<=i;j++) { printf("%d",s[j]); } } return 0; }


2005-10-12 10:31
凌云
Rank: 1
等 级:新手上路
威 望:1
帖 子:78
专家分:0
注 册:2005-9-17
收藏
得分:0 
没有具体优化!
运行没问题!

2005-10-12 10:46
philip_yin
Rank: 1
等 级:新手上路
帖 子:47
专家分:0
注 册:2005-10-6
收藏
得分:0 
完全明白了,多谢大家的指导!

[此贴子已经被作者于2005-10-12 13:34:35编辑过]



2005-10-12 13:09
zj1979
Rank: 1
等 级:新手上路
帖 子:9
专家分:0
注 册:2005-10-11
收藏
得分:0 
谢谢大家的帮助!!但是如果不用数组可以编出吗?
这个程序只能输出5位的正正数,6位以后就超出int型的范围了.
不知道有没有必要改成long int型呢?
2005-10-12 15:16
快速回复:新手求助!!请大侠们帮帮忙!
数据加载中...
 
   



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

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