C语言,printf自动换行问题:求网友指点!

#include<stdio.h>#include<stdlib.h>typedefstructnode{intdata;structnode*next;}NODE;NO... #include<stdio.h>
#include<stdlib.h>
typedef struct node
{
int data;
struct node*next;
}NODE;
NODE *crea_linkstack()
{
NODE*top,*p;
int a,n;
top=NULL;
printf("输入要输入链栈的节点数:");
scanf("%d",&n);
printf("输入数据:");
if(n>0)
{
while(n)
{
scanf("%d",&a);
p=(NODE*)malloc(sizeof(NODE));
p->data=a;
p->next=top;
top=p;
n--;

}
}
return top;
}

NODE *popstack(NODE*top,int*y)
{
NODE*p;
if(top!=NULL)
{
p=top;
*y=top->data;
top=top->next;
free(p);
}
return top;

}
NODE *insert(NODE*top,int x)
{
NODE*p;
p=(NODE*)malloc(sizeof(NODE));
p->data=x;
p->next=top;
top=p;
return top;
}
void show(NODE*top)
{
NODE*p;
p=top;
if(p)
{
printf("输出栈:");
while(p)
{
printf("%d ",p->data);
p=p->next;
}
}
else
printf("栈空\n");
}

void main()
{
NODE*a;
int x=0,n=0;
a=crea_linkstack();
show(a);
printf("输入要出栈的个数:");
scanf("%d",&n);
if(n>0)
{
while(n>0)
{
a=popstack(a,&x);
printf("%d ",x);
n--;
}
}
printf("输入要插入的个数:");
scanf("%d",&n);
if(n>0)
{
while(n>0)
{
scanf("%d",&x);
a=insert(a,x);
n--;
}
}
show(a);
printf("\n");
}

想请教下大家:是不是在同一个函数中:printf("a”),printf("b");a,b自动换行!而在不同函数中printf("a")(此语句在A函数);printf(“b”)(此语句在B函数中);这两个不会自动换行?
展开
 我来答
百度网友a1951b1728
2015-01-18 · TA获得超过459个赞
知道小有建树答主
回答量:110
采纳率:0%
帮助的人:106万
展开全部
printf("\n");这个语句输出的是换行,printf自己不会换行的,和在哪里无关。
追问

#include<stdio.h>

void main()

{      

int n=3;

printf("this is :");

scanf("%d",&n);

printf("this is :%d",n);//第一个printf与第二个printf之间我没有换行怎么输出时就自己换行了!

printf("\n");

}

追答
程序分输入和输出,在你现在用的这个环境,输出和输入在一起,那个换行是输入,是你打上去的字符和第一“5”一样,不是程序的输出。
本回答被提问者和网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
An很圆滑
2015-01-18 · TA获得超过212个赞
知道小有建树答主
回答量:350
采纳率:0%
帮助的人:131万
展开全部
只要不加\n都不会自动换行的,puts();这个就会自动换一行
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式