C语言怎么以 # 号结束输入, 输入的是整型

cpubaozha 2010-11-22 08:52:53
C语言怎么以 # 号结束输入, 输入的是整型~~~
...全文
2252 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
hk2305621_1 2010-11-22
  • 打赏
  • 举报
回复
可以先getchar(),将int类型的第一个数字接收回来,判断

#include <stdio.h>

int main(void) {

int t;
char c;
while((c = getchar()) && c != '#') {
scanf("%d", &t);

int tmp = c - '0';//将c装换为整数
//求出t有多少位,然后将tmp乘以位数+1 再加上t

int cnt = 0, z;
z = t;
while(z != 0) {
cnt ++;
z = z/10;
}

t = tmp * pow10(cnt + 1) + t;
}
}
cpubaozha 2010-11-22
  • 打赏
  • 举报
回复
呵呵。弄好了。。还是很感谢各位大哥。分送你们了
do__i 2010-11-22
  • 打赏
  • 举报
回复
while(scanf("%d",&n)!=0)
这样试试,你最后输入#试试
do__i 2010-11-22
  • 打赏
  • 举报
回复
把你的代码贴出来看看。
cpubaozha 2010-11-22
  • 打赏
  • 举报
回复
是一个 求连续阶乘和 的题目其它实现了,只是输入#号不对。学得不是很好。希望指点下
cpubaozha 2010-11-22
  • 打赏
  • 举报
回复

输入数据样式:
5
3
#

输出数据样式:
sum =153

sum =9

#

是这样的,新手,让各位见笑了
ForestDB 2010-11-22
  • 打赏
  • 举报
回复
麻烦LZ换个问法,比如具体是怎样的输入操作,期待怎样的结果。
cpubaozha 2010-11-22
  • 打赏
  • 举报
回复
不对呀。我只能输入35才行。不能真接输入#号
do__i 2010-11-22
  • 打赏
  • 举报
回复
scanf("%d",&n);
while(n!=35) //#的ASCII码是035
{
}

69,373

社区成员

发帖
与我相关
我的任务
社区描述
C语言相关问题讨论
社区管理员
  • C语言
  • 花神庙码农
  • 架构师李肯
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧