c语言判断对错

Python021

c语言判断对错,第1张

T C语言是按顺序执行的。

T

F 形参可以作为返回值返回,当然形参的改变不会引起实参的变化

F

F

T函数首部和函数体 ,也可以说成事声明部分和语句部分

F

T:true F:false

答案是D

A,C不对,因为s是指向了内存的指针,而且指定了大小,数组初始化楼主应该了解吧,肯定不是这样。

B不对是因为C语言没有这样初始化数组的(这就是语法),而且貌似还少些了一个引号

D是C语言允许的,实际操作是将这个字符数组(串)的首地址复制给s,s是一个指针,指向了这个字符串,访问时按地址访问下去,直到遇到'\0'作为结束,内存未知容易出现问题

char

s[]="BOOK!"

char

s[]={'B','O','O','K','!'}

char

s[10]strcpy(s,"BOOK!")

char

*s="BOOK!"

或char

*ss="BOOK!"

//这条看似无理,但是是C语言支持的,而且使用广泛

都是正确的

如果是我使用的话会是:

char

s[10+1]

memset(s,0,sizeof(s))

strcpy(s,"BOOK!")

没别的,安全

坦白说:

从语法上来讲,前两个语句都是对的。

如果sancf里包含空格,那么当输入时,对应的输入一个数字后也要输入一个空格。

但是:

如果sancf语句,输入数字,不适用空格,或者逗号,或者其他符号来间隔输入的数字,那么数字输入何时才算结束呢,这样,得到输入的数据都不会是程序员本来想输入的数字。

所以,严格来说:

有空格优于没有空格

--------------------------

double 严格说使用%f ,%lf也不出错~~ long double 使用%Lf,%lf就会出错,此处说出错是程序不报错,运行结果往往不对~~