请问printf是输出后换行吗?如果不是,什么才是输出后换行呢?是,什么才是输出后不换行呢?
顺便讲一下c++中的输入语句与输出语句,不想要cin和cout,说了也可以。pascal换c++中,所以最好把read(读入),readln(读入后换行),write(输...
顺便讲一下c++中的输入语句与输出语句,不想要cin和cout,说了也可以。
pascal换c++中,所以最好把read(读入),readln(读入后换行),write(输出),writeln(输出后换行),和c++读入输出语句结合一下,方便记忆。
解释一下include<iostream>和include<stdio.h>的区别
谢了! 展开
pascal换c++中,所以最好把read(读入),readln(读入后换行),write(输出),writeln(输出后换行),和c++读入输出语句结合一下,方便记忆。
解释一下include<iostream>和include<stdio.h>的区别
谢了! 展开
2个回答
展开全部
printf()函数输出默认是不换行的,换行需要转移控制符“\n”。
输入输出函数(printf 和 scanf)是C语言中非常重要的两个函数,也是学习C语言必学的两个函数。在C语言程序中,几乎没有一个程序不需要这两个函数,尤其是输出函数(printf),所以这两个函数必须要掌握。如果在程序中要使用 printf 或者 scanf,那么就必须要包含头文件 stdio.h。
printf("字符串\n");其中\n表示换行的意思。它是一个转义字符,前面在讲字符常量的时候见过。其中 n 是“new line”的缩写,即“新的一行”。
扩展资料:
相关控制符的应用:
1、\n:换行。
2、\f:清屏并换页。
3、\r:回车。
4、\t:Tab符。
5、输出控制符中,%d、%f、%s、%c 是最常用的,它们分别是输出整数、实数、字符串和字符的控制符。
6、%md: m 为指定的输出字段的宽度。如果数据的位数小于 m,则左端补以空格,若大于 m,则按实际位数输出。
参考资料来源:百度百科-printf()
展开全部
iostream 是输入输出流类库, stdio.h 是C语言的标准输入输出流函数库的头文件,不是类,是为兼容C语言标准库才用的,不建议用,很多C++编译器甚至不支持这个东西。。。。
printf 是C语言的东西,他是一个函数,字面意思是打印,你输出的是文本,所以显示屏是按文本规则输出字符的,文本要换行需要碰到换行符号,这是最早打字机定义的一种字符 \r 也就是10, 你只要输出一个 他就回换一行,不过现在换行符用的少,改用\n回车字符 13 只有碰到这两个字符才会换行,writeln 会换行是他替你填了 \n\r (回车换行)。。。
这两个字符的来历是来源于一种古老的工具,打字机,打字机打字打到头,或者你要提前换行,你就要输入一个特殊字符 \n 回车,将小车拉到最左边, \r 纸张换行,目前的打印机和显示屏,以及文本显示工具都还是按这个方式,只是简单的多 , 一个 \r 或\n就能换行,但是 \n\r 连用代表换一行, 你要换行只要输出下面。。。
\r , \n ,\n\r 三种任意一种, 通常写法就是 "你好!\n不好" 这就是两行的字 ,但windows记事本用的是\n\r。。。 网络协议中的文本通常也是\n\r,平常则常用\n。。。
printf 是C语言的东西,他是一个函数,字面意思是打印,你输出的是文本,所以显示屏是按文本规则输出字符的,文本要换行需要碰到换行符号,这是最早打字机定义的一种字符 \r 也就是10, 你只要输出一个 他就回换一行,不过现在换行符用的少,改用\n回车字符 13 只有碰到这两个字符才会换行,writeln 会换行是他替你填了 \n\r (回车换行)。。。
这两个字符的来历是来源于一种古老的工具,打字机,打字机打字打到头,或者你要提前换行,你就要输入一个特殊字符 \n 回车,将小车拉到最左边, \r 纸张换行,目前的打印机和显示屏,以及文本显示工具都还是按这个方式,只是简单的多 , 一个 \r 或\n就能换行,但是 \n\r 连用代表换一行, 你要换行只要输出下面。。。
\r , \n ,\n\r 三种任意一种, 通常写法就是 "你好!\n不好" 这就是两行的字 ,但windows记事本用的是\n\r。。。 网络协议中的文本通常也是\n\r,平常则常用\n。。。
追问
还有最后一个问题,pascal中过程procedure和函数function在c++中对应什么?
function应该是 inc main()
那么procedure是什么? void吗?
追答
procedure 是过程关键字, function 是函数关键字 ,c++ 和c 都是省去了这种关键字,所以没有对应。。。。
procedure 可以认为是无返回值的函数。。。。
procedure proc(a:int) ; 就等于 c 中的 void proc(int a); procedure 和void不能等价,
procedue 是个类型说明的关键字,C语言和C++没有这种东西,所以不能完全等价
你可以写 void proc(void) 却不能写 procedure proc(procedure)
pascal中有类型说明符 号, var 变量声明(此后的代码全是变量声明),等价basic中的
dim ,c,c++中没有。。。。 procedure 过程说明符 等价 basic 中的 Sub ,c中同样没有。。。function 函数说明 basic中也是 funciton,c 和c++没有。。。。。。。
c和C++ 对过程和函数不做区分, 只要返回值是 void函数就是过程,void是返回值类型,不是过程声明关键字,c语言,c++出现较晚,语法不是很严格,很多感觉不必要的关键词都没有定义了。。。
bisic pascal 返回值都写在后边 如 function a(i:char):char,c,和c++是前面 ,
char a(char i) ,可以看出在对应关系上 function 是多余的一个关键字,procedure 也一样 。。。。
其实函数和过程还是有区别的,主要区别是过程退出时,什么都不用管,而函数必须要去复原堆栈,因为要取返回值,调用者需要调用前保存返回的堆栈位置,过程则不用保存,函数调用后还要多一个步奏,取返回值,取完后复原堆栈,在编译上有区别,如果你有返回值却从来不用,倒不如写成 procedure 运行更快。。。。
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询