
帮忙做一下C语言程序设计题,谢谢
1、以下程序输出的结果是________。#include<stdio.h>longfun(intn){longs;if(n==1||n==2)s=2;elses=n-f...
1、 以下程序输出的结果是________。
#include <stdio.h>
long fun(int n)
{ long s;
if(n==1||n==2) s=2;
else s=n-fun(n-1);
return s; }
void main()
{ printf("%ld\n",fun(3));}
A) 1 B) 2
C) 3 D) 4
2、 若形参n的值为24,则调用prnt函数后,共输出______行。
void prnt(int n,int arr[])
{ int i;
for(i=1;i<=n;i++)
{printf("%6d",arr[i]);
if( !(i%5) ) printf("\n"); }
printf("\n"); }
A) 3 B) 4
C) 5 D) 6
3、 以下程序的输出结果是________。
#include "ctype.h"
space(char str[ ])
{int i,t; char ts[81];
for(i=0,t=0;str[i]!= '\0';i+=2)
if(!isspace(str[i]) && str[i]!= 'a')
ts[t++]=toupper(str[i]);
ts[t]= '\0';
strcpy(str,ts); }
void main()
{char s[81]={ "a b c d e f g"};
space(s);
puts(s);}
A) abcdeg B) bcde
C) ABCDE D) BCDE
4、 在调用函数时,如果实参是简单变量,它与对应形参之间的数据传递
方式是________。
A) 地址传递
B) 单向值传递
C) 由实参传给形参,再由形参传回实参
D) 传递方式由用户指定
5、 C语言中规定函数的返回值的类型是由________。
A) return语句中的表达式类型所决定
B) 调用该函数时的主调用函数类型所决定
C) 调用该函数时系统临时决定
D) 在定义该函数时所指定的类型所决定
6、 分析程序:
#include <stdio.h>
sum(int k)
{ static x=0;
return x+=k; }
void main()
{ int i,s=0;
for(i=1;i<=10;i++) s+=sum(i);
printf("s=%d\n",s); }
则下面的说法中正确的是________。
A) 程序的输出是1+(1+2)+……+(1+2+3+……+10)之值
B) 程序的输出是1+2+3+……+10之值
C) 程序的输出结果是s=10
D) 以上都不对
7、 若主调用函数类型为double,被调用函数定义中没有进行函数类型
说明,而return语句中的表达式类型为float型,则被调函数返回
值的类型是________。
A) int 型 B) float 型
C) double 型 D) 由系统当时的情况而定
8、 若已定义实参数组int
a[3][4]={2,4,6,8,10};,则在被调用函数f的下述定义中,
对形参数组b定义正确的选项是________。
A) f(int b[ ][6]) B) f(b) int b[ ][4];
C) f(int b[3][ ]); D) f(b) int b[4][5];
9、 请读程序:
#include<stdio.h>
f(char s[ ])
{ int i,j;
i=0;j=0;
while( s[j]!= '\0') j++;
return (j-i); }
void main()
{printf("%d\n",f("ABCDEF"));}
上面程序的输出结果是________。
A) 0 B) 6
C) 7 D) 8
10、 以下叙述中错误的是________。
A) 在C中,函数中的自动变量可以赋初值,每调用一次,赋一次初值
B) 在C中,在调用函数时,实参和对应形参在类型上只需赋值兼容
C) 在C中,外部变量的隐含类别是自动存储类别
D) 在C中,函数中的静态变量可以赋初值,只在编译时赋一次初值 展开
#include <stdio.h>
long fun(int n)
{ long s;
if(n==1||n==2) s=2;
else s=n-fun(n-1);
return s; }
void main()
{ printf("%ld\n",fun(3));}
A) 1 B) 2
C) 3 D) 4
2、 若形参n的值为24,则调用prnt函数后,共输出______行。
void prnt(int n,int arr[])
{ int i;
for(i=1;i<=n;i++)
{printf("%6d",arr[i]);
if( !(i%5) ) printf("\n"); }
printf("\n"); }
A) 3 B) 4
C) 5 D) 6
3、 以下程序的输出结果是________。
#include "ctype.h"
space(char str[ ])
{int i,t; char ts[81];
for(i=0,t=0;str[i]!= '\0';i+=2)
if(!isspace(str[i]) && str[i]!= 'a')
ts[t++]=toupper(str[i]);
ts[t]= '\0';
strcpy(str,ts); }
void main()
{char s[81]={ "a b c d e f g"};
space(s);
puts(s);}
A) abcdeg B) bcde
C) ABCDE D) BCDE
4、 在调用函数时,如果实参是简单变量,它与对应形参之间的数据传递
方式是________。
A) 地址传递
B) 单向值传递
C) 由实参传给形参,再由形参传回实参
D) 传递方式由用户指定
5、 C语言中规定函数的返回值的类型是由________。
A) return语句中的表达式类型所决定
B) 调用该函数时的主调用函数类型所决定
C) 调用该函数时系统临时决定
D) 在定义该函数时所指定的类型所决定
6、 分析程序:
#include <stdio.h>
sum(int k)
{ static x=0;
return x+=k; }
void main()
{ int i,s=0;
for(i=1;i<=10;i++) s+=sum(i);
printf("s=%d\n",s); }
则下面的说法中正确的是________。
A) 程序的输出是1+(1+2)+……+(1+2+3+……+10)之值
B) 程序的输出是1+2+3+……+10之值
C) 程序的输出结果是s=10
D) 以上都不对
7、 若主调用函数类型为double,被调用函数定义中没有进行函数类型
说明,而return语句中的表达式类型为float型,则被调函数返回
值的类型是________。
A) int 型 B) float 型
C) double 型 D) 由系统当时的情况而定
8、 若已定义实参数组int
a[3][4]={2,4,6,8,10};,则在被调用函数f的下述定义中,
对形参数组b定义正确的选项是________。
A) f(int b[ ][6]) B) f(b) int b[ ][4];
C) f(int b[3][ ]); D) f(b) int b[4][5];
9、 请读程序:
#include<stdio.h>
f(char s[ ])
{ int i,j;
i=0;j=0;
while( s[j]!= '\0') j++;
return (j-i); }
void main()
{printf("%d\n",f("ABCDEF"));}
上面程序的输出结果是________。
A) 0 B) 6
C) 7 D) 8
10、 以下叙述中错误的是________。
A) 在C中,函数中的自动变量可以赋初值,每调用一次,赋一次初值
B) 在C中,在调用函数时,实参和对应形参在类型上只需赋值兼容
C) 在C中,外部变量的隐含类别是自动存储类别
D) 在C中,函数中的静态变量可以赋初值,只在编译时赋一次初值 展开
4个回答
展开全部
保证百分百的正确率,选我吧,呵。
1.A
2.B
3.正确的答案应该是BCDEFG
4.D
5.D
6.A
7.A
8.B
9.B
10.C
1.A
2.B
3.正确的答案应该是BCDEFG
4.D
5.D
6.A
7.A
8.B
9.B
10.C
展开全部
A C 第三题应输出BCDEFG。 D D A C C B A
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
程序 拷贝过去,看一下运行的结果,就行了啊
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
AC?DD ACCBA
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询