C语言,如何将一个个输入的数字变成一串数字一起输出来,求解~

比如我在一个循环getcha()的循环体中; 然后我输入1 2 3 4 5 6, 那么怎样才能使输出结果为 NUMBER:123456 呢?

#include<stdio.h>

int main(void)
{
char c;
long num = 0;

while((c = getchar()) != '\n')
{
if(c >= '0' && c <= '9')
{
num = num * 10 + (c - '0');
}
}

printf("num = %d\n", num);
}

代码比较简单,就不写注释了,相信你能看懂。

希望对你有所帮助。

温馨提示:答案为网友推荐,仅供参考
第1个回答  2015-09-30
1: 只是打印的话,就printf("Number: %c%c%c%c%c%c", c1, c2, c3, c4, c5, c6);
2: 在循环体前声明String str = "NUMBER: "; 在循环体内拼接起来 str += getcha(); 最后打印str
3: 把123456变成整数再打印。具体怎么变 O(∩_∩)O。。。 自己想
第2个回答  2015-09-30
#include "stdio.h"
int main()
{
char ch;
int n=0;
ch=getchar();
while(ch!='\n')
{ n=n*10+ch-'0';

ch=getchar();
}
printf("%d\n",n);

}
第3个回答  2015-09-30
int *a;
static int len =0;
void getcha(int num)

{
if(num >=0)
{
*(a+len) = num;
}
}
void main()
{
int val=0;
while(val>=0)
{
scanf("%d",val);
getcha(val);
}
for(int i=0;i<len;i++)
{
printf("NUMBER:");
printf("%d",*(a+i));
}
}
相似回答