求解几道C语言题23 有数组定义语句“char a[20];”,则正确的输入语句为( D ).A.scanf("%s",
来源:学生作业帮 编辑:搜搜做题作业网作业帮 分类:综合作业 时间:2024/04/28 23:18:27
求解几道C语言题
23 有数组定义语句“char a[20];”,则正确的输入语句为( D ).
A.scanf("%s",&a);B.scanf("%s",a[]);
C.gets(a[20]);D.gets(a);
20.下列对字符数组s的初始化不正确的是( C ).
A.char s[5]="abc";B.char s[5]={'a','b','c','d','e'};
C.char s[5]="abcde";D.char s[]="abcde";
11.对于以下递归函数f( ),调用f(4),其返回值为( A ).
int f(int n)
{ if(n) return f(n-1)+n;
else return n;
}
A.10 B.4 C.0 D.以上均不是
23 有数组定义语句“char a[20];”,则正确的输入语句为( D ).
A.scanf("%s",&a);B.scanf("%s",a[]);
C.gets(a[20]);D.gets(a);
20.下列对字符数组s的初始化不正确的是( C ).
A.char s[5]="abc";B.char s[5]={'a','b','c','d','e'};
C.char s[5]="abcde";D.char s[]="abcde";
11.对于以下递归函数f( ),调用f(4),其返回值为( A ).
int f(int n)
{ if(n) return f(n-1)+n;
else return n;
}
A.10 B.4 C.0 D.以上均不是
对于23 理解%s 与gets %s是输出字符串,对应的变量应是数组名,所以应是a 不是&a 或者a[]
gets() 是读取字符串,它的变量也是数组名,所以选D
对于20 其他对的就无所谓了 C是因为超过界限了 在初始化的时候 虽然输入的是abcde 但是系统会在后面加上\0 所以实际上是6个位置, 但是只开辟了5个位置,所以数组越界了
对于11 终止的值为0,即当n==0时 递归回来 过程为
if 4 return f(3)+4
调用f(3) 即
if 3 return f(2)+3
下面同理直到
if 0 则 if不通过 执行return 0 对应 f(1)=1
则f(2)=f(1)+2
f(3)=f(2)+3
f(4)=f(3)+4
综上 f(4)=10
gets() 是读取字符串,它的变量也是数组名,所以选D
对于20 其他对的就无所谓了 C是因为超过界限了 在初始化的时候 虽然输入的是abcde 但是系统会在后面加上\0 所以实际上是6个位置, 但是只开辟了5个位置,所以数组越界了
对于11 终止的值为0,即当n==0时 递归回来 过程为
if 4 return f(3)+4
调用f(3) 即
if 3 return f(2)+3
下面同理直到
if 0 则 if不通过 执行return 0 对应 f(1)=1
则f(2)=f(1)+2
f(3)=f(2)+3
f(4)=f(3)+4
综上 f(4)=10
求解几道C语言题23 有数组定义语句“char a[20];”,则正确的输入语句为( D ).A.scanf("%s",
有两个字符数组 a、b,则以下正确的输入语句是 A.scanf(“%s%s”,&a,&b);B.gets(a); get
C语言的一道题目.有输入语句scanf(“a=%d,b=%d”,&i,&j);要求输入10和20,并且:① 写出输入时的
若定义x为double型变量,则能正确输入x值的语句是.A)scanf(“%f”,x); B)scanf(“%f”,&x
写出语句scanf(“%d%c%f”,&a,&b,&c);中所用变量的正确定义.
若有定义语句:char s[3][10],(*k)[3],*p;则以下赋值语句正确的是:A、p=s; B、p=k; C、
有输入语句:int a,b,c; scanf("a=%d,b=%d,c=%d",&a,&b,&c); 为使变量a的值为1
15 有输入语句:scanf("a=%d,b=%d,c=%d",&a,&b,&c);为使变量a的
定义语句:char s[3][10],(*k)[3],*p;,则以下赋值语句正确的为啥是 A)p=s; B)p=k; C
下面语句正确的是 A.char s[5] B.char s[5]="12345" C.chat s[56] D.char
C语言习题 以下定义语句中正确的是() A.int a=b=0 ; B.char A=65+1; b='b';
求讲解两道C语言的题52 声明语句为“char s[4][15],*p1,**p2;int x,*y;”,下列语句中正确