当前位置:文档之家› C语言 练习题(函数)

C语言 练习题(函数)

C语言 练习题(函数)
C语言 练习题(函数)

一、选择题

1. 以下程序的运行结果是。

#include

int fun(int n)

{int m=0,f=-1,i;

for(i=1;i<=n;i++)

{m=m+i*f;

f=-f;

}

return m;

}

int main()

{printf("m=%d\n",fun(10));

return 0;

}

A.m=5 B.m=-6 C.m=6 D.m=-5

2. C语言规定,简单变量作为实参时,它和对应形参之间的数据传递方式是。

A.地址传递

B.单项值传递

C.由实参传给形参,再由形参传回给实参

D.由用户指定传递方式

3. 以下程序有语法性错误,有关错误原因的正确说法是。

#include

int main()

{int G=5,k;

void prt_char ( );

...

k=prt_char(G);

...

}

A.语句void prt_char( ); 有错,它是函数调用语句,不能用void说明

B.变量名不能使用大写字母

C.函数说明和函数调用语句之间有矛盾

D.函数名不能使用下划线

4. 以下程序的运行结果是。

#include

int fun(int a,int b)

{if(a>b) return (a+b);

else return (a-b);

}

int main()

{int x=3,y=8,z=6,r;

r=fun(fun(x,y),2*z);

printf("%d\n",r);

return 0;

}

A.-16 B.-17 C.17 D.16

5. 以下程序的功能是计算函数F(x,y,z) = (x+y)/(x-y)+(z+y)/(z-y)的值,请选择填空。

#include

#include

float f(float,float);

int main( )

{float x,y,z,sum;

scanf("%f%f%f",&x,&y,&z);

sum=f( )+f( );

printf("sum=%f\n",sum);

return 0;

}

float f(float a,float b)

{float value;

value=a/b;

return value;

}

A.x-y, x+y B.x+y, x-y C.z+y, z-y D.z-y, z+y A.x-y, x+y B.x+y, x-y C.z+y, z-y D.z-y, z+y 6. 以下程序可选出能被3整除且至少有一位是5的两位数,打印出所有这样的数及其个数。请选择填空。

#include

int sub(int k,int h)

{int a1,a2;

a2= ;

a1=k - ;

if((k%3==0 && a2==5) || (k%3==0 && a1==5))

{printf("%5d",k);

h++;

return h;

}

else return -1;

}

int main()

{int n=0,k,m;

for(k=10;k<=99;k++)

{m=sub(k,n);

if(m!=-1) n=m;

}

printf("\nn=%d\n",n);

return 0;

}

A.k*10 B.k%10 C.k/10 D.k*10%10

A.a2*10 B.a2 C.a2/10 D.a2%10

7. 若用数组名作为函数调用的实参,则传递给形参的是。

A.数组的首地址

B.数组的第一个元素的值

C.数组中全部元素的值

D.数组元素的个数

8. 折半查找法的思路是:先确定待查元素的范围,将其分成两半,然后测试位于中间点元素的值。如果该待查元素的值大于中间点元素,就缩小待查范围,只测试中间点之后的元素;反之,测试中间点之前的元素,测试方法同前。函数binary的作用是应用折半查找法从存有10个有序整数的a数组中对关键字m进行查找,若找到,返回其下标值;反之,返回-1。请选择填空。

#include

int binary(int a[10],int m)

{int low=0,high=9,mid;

while(low<=high)

{mid=(low+high)/2;

if(m

else if(m>a[mid]) ;

else return (mid);

}

return -1;

}

int main()

{int a[10]={1,2,3,4,5,6,7,8,9,10};

int m,index;

scanf("%d",m);

index=binary(a,m);

printf("%d\n",index);

return 0;

}

A.high=mid-1 B.low=mid+1 C.high=mid+1 D.low=mid-1 A.high=mid-1 B.low=mid+1 C.high=mid+1 D.low=mid-1 9. 以下程序的运行结果是。

#include

void fun(int x)

{if(x/2>0) fun(x/2-2);

printf("%d",x);

}

int main()

{fun(20);

printf("\n");

return 0;

}

A.2082-1 B.2820 C.8 D.-12820

答案:

1. A

2. B

3. C

4. B

5. B C

6. C A

7. A

8. A B

9. D

二、填空题

1. 为使以下程序顺利进行,请填空补充完整程序。当输入的数值为5 7时,该程序的运行结果是。

#include

int main()

{double x,y;

scanf("%lf%lf",&x,&y);

printf("%lf\n",max(y,x));

return 0;

}

double max(double a,double b)

{return (a>b)?b-a:a-b;}

2. 以下函数fun的功能是:将输入的大写字母,先转换为与其对应的小写字母,然后再转换成该小写字母后的第3个字母,返回后输出。例如,若输入的字母为E,输出的字母则为h;若输入的字母为Y,输出的字母则为b。请填空。

#include

#include

char fun(char c)

{c= ;

if(c>='a' && c<='w') c=c+3;

else if(c>='x' && c<='z') c= ;

return c;

}

int main()

{char c;

c=getchar();

c=fun(c);

putchar(c);

return 0;

}

3. 若输入的值是-125,则以下程序的运行结果是。

#include

#include

void fun(int);

int main()

{int n;

scanf("%d",&n);

printf("%d=",n);

if(n<0) printf("-");

n=abs(n);

fun(n);

printf("\n");

return 0;

}

void fun(int n)

{int k,r;

for(k=2;k<=sqrt(n);k++)

{ r=n%k;

while(r= =0)

{printf("%d",k);

n=n/k;

if(n>1) printf("*");

r=n%k;

}

}

if(n!=1) printf("%d\n",n);

}

4. 下面add函数的功能是求两个参数的和,并将和值返回调用函数。函数中错误的部分是,改正后为。

void add(float a,float b)

{float c;

c=a+b;

return c;

}

5. 以下函数fun的功能是:统计一个数中位值为0的个数,以及位值为1的个数。若输入111001,则输出为值为零的个数是2,位置为1的个数是4。请填空。

#include

void fun(long n)

{int coun0=0,coun1=0,m;

do

{m= ;

if(m==0) coun0++;

if(m==1) coun1++;

n= ;

}while(n);

printf("coun0=%d,coun1=%d\n",coun0,coun1);

}

int main()

{long n;

printf("\ninput n:\n");

scanf("%ld",&n);

printf("n=%ld\n",n);

fun(n);

return 0;

}

6. 以下函数fun的功能是:将输入的一个偶数写成两个素数之和的形式。例如,若输入数值8,则输出8=3+5。请填空。

#include

#include

void fun(int a)

{int b,c,d;

for(b=3;b<=a/2;b= )

{for(c=2;c<=sqrt(b);c++) if(b%c==0) break;

if(c>sqrt(b)) d= ;

else break;

for(c=2;c<=sqrt(d);c++) if(d%c==0) break;

if(c>sqrt(d)) printf("%d=%d+%d\n",a,b,d);

}

}

int main()

{int a;

printf("\ninput a:\n");

scanf("%d",&a);

fun(a);

}

7. 以下程序的功能是根据输入的y(Y)与n(N),在屏幕上分别显示出This is YES. 与This is NO.。请填空。

#include

void YesNo(char ch)

{switch(ch)

{case 'y':

case 'Y': printf("\nThis is YES.\n"); ;

case 'n':

case 'N': printf("\nThis is NO.\n");

}

}

int main()

{char ch;

printf("\nEnter a char 'y','Y' or 'n','N':");

ch= ;

printf("ch:%c",ch);

YesNo(ch);

return 0;

}

8. 以下Check函数的功能是对value中的值进行四舍五入,若计算后的值与ponse 值相等,则显示WELL DONE!!,否则显示计算后的值。已有函数调用语句Check(ponse,value);请填空。

#include

void Check(int ponse,float value)

{int val;

val= ;

printf("计算后的值:%d",val);

if( ) printf("\nWELL DONE!!\n");

else printf("\nSorry the correct answer is %d\n",val);

}

9. 以下程序的运行结果是“output:153 370 371 407”,该程序的功能是。

#include

{int i,j,k;

i=n/100; j=n/10-i*10;k=n%10;

if(n==i*i*i+j*j*j+k*k*k) return n;

else return 0;

}

int main()

{int n,k;

printf("output: ");

for(n=100;n<1000;n++)

{k=f(n);

if(k!=0) printf("%5d",k);

}

printf("\n");

return 0;

}

10. 若输入一个整数10,则以下程序的运行结果是。#include

int sub(int a);

int main()

{int a,e[10],c,i=0;

printf("输入一个整数:");

scanf("%d",&a);

while(a!=0)

{c=sub(a);

a=a/2;

e[i]=c;

i++;

}

for(;i>0;i--) printf("%d",e[i-1]);

printf("\n");

return 0;

}

int sub(int a)

{int c;

return c;

}

11. 以下程序的功能是求3个数的最小公倍数。请填空。

#include

int max(int x,int y,int z)

{if(x>y && x>z) return x;

else if( ) return y;

else return z;

}

int main()

{int x1,x2,x3,i=1,j,x0;

printf("Input 3 numbers:");

scanf("%d%d%d",&x1,&x2,&x3);

x0=max(x1,x2,x3);

while(1)

{j=x0*i;

if( ) break;

i++;

}

printf("The zuixiaogongbei of three number %d,%d,%d is: %d\n",x1,x2,x3,j); return 0;

}

12. 函数gongyue的作用是求整数num1和num2的最大公约数,并返回该值。请填空。

#include

int gongyue(int num1,int num2)

{int temp,a,b;

if(num1 num2)

{temp=num1;num1=num2;num2=temp;}

a=num1;b=num2;

while( )

{temp=a%b; a=b; b=temp;}

return a;

}

{int n1,n2;

printf("请输入两个整数:");

scanf("%d%d",&n1,&n2);

printf("The zuidagongyue of two numbers %d and %d is: %d\n",n1,n2,gongyue(n1,n2));

return 0;

}

13. 以下程序的运行结果是。

#include

void add(int x,int y,int z);

int main()

{int x=2,y=3,z=0;

printf("(1)x=%d y=%d z=%d\n",x,y,z);

add(x,y,z);

printf("(3)x=%d y=%d z=%d\n",x,y,z);

return 0;

}

void add(int x,int y,int z)

{z=x+y;x=x*x;y=y*y;

printf("(2)x=%d y=%d z=%d\n",x,y,z);

}

17. 以下程序的运行结果是。

#include

#include

int fun(int y,int x)

{int z;

z=abs(x-y);

return z;

}

int main()

{int a=-1,b=-5,c;

c=fun(a,b);

printf("%d\n",c);

return 0;

}

20. 以下程序的运行结果是。

#include

int fact(int value);

int main()

{printf("FACT(5): %d\n",fact(5));

printf("FACT(1): %d\n",fact(1));

fact(-5);

return 0;

}

int fact(int value)

{if(value<0) {printf("FACT(-1): Error!\n");return -1;} else if(value= =1 || value==0) return 1;

else return(value*fact(value-1));

}

21. 下面程序的运行结果是。

#include

long fib(int g)

{switch(g)

{case 0: return 0;

case 1: case 2: return 1;

}

return(fib(g-1)+fib(g-2));

}

int main()

{long k;

k=fib(7);

printf("k=%d\n",k);

return 0;

}

22. 下面程序的运行结果是。

#include

int sub(int n);

int main()

{int i=5;

printf("%d\n",sub(i));

return 0;

}

int sub(int n)

{int a;

if(n= =1) return 1;

a=n+sub(n-1);

return a;

}

23. 以下程序是应用递归算法求某数a的平方根,请填空。求平方根的迭代公式为:x1=(x0+a/x0)/2。

#include

#include

double mysqrt(double a,double x0)

{double x1,y;

x1= ;

if(fabs(x1-x0)>0.00001) y=mysqrt( );

else y=x1;

return y;

}

int main()

{double x;

printf("Enter x:"); scanf("%lf",&x);

printf("The sqrt of %f=%f\n",x,mysqrt(x,1.0));

return 0;

}

24. 以下程序的运行结果是。

#include

void f(int a[ ])

{int i=0;

while(a[i]<=10)

{printf("%5d",a[i]);

i++;

}

printf("\n");

int main()

{int a[ ]={1,5,10,9,11,7};

f(a+1);

return 0;

}

25. 以下程序的运行结果是。

#include

int func(int a[ ][3]);

int main()

{int a[3][3]={1,3,5,7,9,11,13,15,17};

int sum;

sum=func(a);

printf("\nsum=%d\n",sum);

return 0;

}

int func(int a[ ][3])

{int i,j,sum=0;

for(i=0;i<3;i++)

for(j=0;j<3;j++)

{a[i][j]=i+j;

if(i= =j) sum=sum+a[i][j];

}

return sum;

}

26. 阅读下面程序,完成下列问题中的填空。

问题(1):此程序在调用函数f后的运行结果是。

问题(2):若将函数f中的for(j=i+1; j<4; j++) 改为for(j=0; j<3-i; j++),则程序的运行结果是。

#include

void f(int s[ ][4])

{int i,j,k;

for(i=0;i<3;i++)

for(j=i+1;j<4;j++)

{k=s[i][j]; s[i][j]=s[j][i]; s[j][i]=k;}

int main()

{int s[4][4],i,j;

for(i=0;i<4;i++)

for(j=0;j<4;j++) s[i][j]=i-j;

f(s);

for(i=0;i<4;i++)

{printf("\n");

for(j=0;j<4;j++)

printf("%4d",s[i][j]);

}

putchar('\n');

return 0;

}

27. 以下search函数的功能是利用顺序查找法从数组a的10个元素中对关键字m进行查找。顺序查找法的思路是:从第一个元素开始,从前向后依次与关键字比较,直到找到此元素或查找到数组尾部时结束。若找到,则返回此元素的下标;若未找到,则返回值-1。请填空。

#include

int search(int a[10],int m)

{int i;

for(i=0;i<=9;i++) if( ) return i;

return -1;

}

int main()

{int a[10],m,i,no;

printf("Please enter 10 numbers:\n");

for(i=0;i<10;i++)

scanf("%d",&a[i]);

printf("Please enter a number to search:");

scanf("%d",&m);

no=search( );

if( ) printf("\nOK FOUND! %d\n",no+1);

else printf("\nSorry Not Found!\n");

return 0;

28. 已定义一个含有30个元素的数组s,函数fav1的功能是按顺序分别赋予各元素从2开始的偶数,函数fav2则按顺序每5个元素求一个平均值,并将该值存放在数组w中。请填空。

#include

#define SIZE 30

void fav1(float s[])

{int i;

float k=2.0;

for(i=0;i

{ ;

k+=2;

}

}

void fav2(float s[],float w[])

{float sum;

int k,i;

sum=0.0;

for(k=0,i=0;i

{sum+=s[i];

if((i+1)%5= =0)

{w[k]=sum/5;

;

k++;

}

}

}

int main()

{ float s[SIZE],w[SIZE/5];int i;

fav1(s);

for(i=0;i

printf("\n");

fav2(s,w);for(i=0;i

printf("\n");

}

29. 以下程序的运行结果是,其算法是。#include

void sort(int a[]);

int main()

{int a[5]={5,10,-7,3,7},i,t,j;

sort(a);

for(i=0;i<=4;i++) printf("%3d",a[i]);

return 0;

}

void sort(int a[])

{int i,j,t;

for(i=0;i<4;i++)

for(j=0;j<4-i;j++)

if(a[j]>a[j+1]) {t=a[j];a[j]=a[j+1];a[j+1]=t;}

}

36. 函数yanghui能够按以下形式构成一个杨辉三角形。请填空。1

1 1

1 2 1

1 3 3 1

1 4 6 4 1

1 5 10 10 5 1

……

#include

#define N 11

void yanghui(int a[ ][N])

{int i,j;

for(i=1;i

for( ;i

for(j=2; ;j++) a[i][j]= +a[i-1][j];

}

39. 以下程序的运行结果是。

#include

void sub(int x,int y);

int x1=30,x2=40;

int main()

{int x3=10,x4=20;

sub(x3,x4);

sub(x2,x1);

printf("%d,%d,%d,%d\n",x3,x4,x1,x2); return 0;

}

void sub(int x,int y)

{x1=x;

x=y;

y=x1;

}

答案:

1. double max(double, double);

-2.000000

2. c+32

c-23 (c+3-26)

3. -125=-5*5*5

4. void add(float a, float b)

float add(float a, float b)

5. n%10

n/10

6. b+2

a-b

7. break

getchar( )

8. (int)((value*10+5)/10)

value==ponse

9. 打印出所有“水仙花数”

10. 1010

11. y>x && y>z

j%x1==0 && j%x2==0 && j%x3==0 12. <

b!=0

13. (1)x=2 y=3 z=0

(2)x=4 y=9 z=5

(3)x=2 y=3 z=0

14. 4

15. FACT(5): 120

FACT(1): 1

FACT(-1): Error!

16. k=13

17. 15

18. (x0+a/x0)/2.0

a, x1

19. 5 10 9

20. sum=6

21. 0 1 2 3

-1 0 1 2

-2 -1 0 1

-3 -2 -1 0

0 -1 -2 -3

1 0 -1 -2

2 1 0 -1

3 2 1 0 22. m==a[i]

a,m

no!=-1

23. s[i]=k

sum=0

24. -7 3 5 7 10

冒泡法排序

25. i=1

j<=i-1

a[i-1][j-1]

26. 10, 20, 40, 40

最新c语言函数练习题附答案

函数 一、选择题 1.在c语言中以下不正确的说法是:() A.实参可以是常量、变量、或表达式 B.形参可以是常量、变量或表达式 C.实参可以为任意类型 D.形参应与其对应的实参类型一致 2.以下程序有语法性错误,有关错误原因的正确说法是:() int main() { int G=5,k; void prt_char(); …… k=prt_char(G); …… } A.语句void prt_char();有错,它是函数调用语句,不能用void说明 B.变量名不能使用大写字母 C.函数说明和函数调用语句之间有矛盾 D.函数名不能使用下划线 3.以下正确的说法是:() A.函数的定义可以嵌套,但函数的调用不可以嵌套 B.函数的定义不可以嵌套,但函数的调用可嵌套 C.函数的定义和调用均不可以嵌套 D.函数的定义和调用均可以嵌套 4.若已定义的函数有返回值,则以下关于该函数调用的叙述中错误的是:() A)函数调用可以作为独立的语句存在 B)函数调用可以作为一个函数的实参 C)函数调用可以出现在表达式中 D)函数调用可以作为一个函数的形参 5.以下所列的各函数首部中,正确的是:() A、 void play(var :Integer,var b:Integer) B、 void play(int a,b) C、 void play(int a,int b) D、 Sub play(a as integer,b as integer) 6.在调用函数时,如果实参是简单变量,它与对应形参之间的数据传递方式是:() A、地址传递 B、单向值传递 C、由实参传给形参,再由形参传回实参 D、传递方式由用户指定 7.有以下程序 void fun (int a,int b,int c) { a=456; b=567; c=678;}

C语言函数练习题及答案

1 【单选题】 在下列关于C函数定义的叙述中,正确的是A、 函数可以嵌套定义,但不可以嵌套调用; B、 函数不可以嵌套定义,但可以嵌套调用; C、 函数不可以嵌套定义,也不可以嵌套调用; D、 函数可以嵌套定义,也可以嵌套调用; 我的答案:B得分:分

2 【单选题】 下面函数调用语句含有实参的个数为nc((exp1,exp2),(exp3,exp4,exp5)); A、 1 B、 2 C、 4 D、 5

我的答案:B得分:分 3 【单选题】 C语言中函数返回值的类型是由以下哪个选项决定的A、 函数定义时指定的类型; B、 return语句中的表达式类型; C、 调用该函数时的实参的数据类型; D、 形参的数据类型;

我的答案:A得分:分 4 【单选题】 以下关于函数叙述中,错误的是 A、 函数未被调用时,系统将不为形参分配内存单元; B、 实参与形参的个数必须相等,且实参与形参的类型必须对应一致; C、 当形参是变量时,实参可以是常量、变量或表达式; D、

如函数调用时,实参与形参都为变量,则这两个变量不可能共享同一内存空间; 我的答案:B得分:分 5 【单选题】 若函数调用时参数为基本数据类型的变量,以下叙述正确的是A、 实参与其对应的形参共享内存存储单元; B、 只有当实参与其对应的形参同名时才共享内存存储单元; C、 实参与对应的形参分别占用不同的内存存储单元;

D、 实参将数据传递给形参后,立即释放原先占用的内存存储单元; 我的答案:C得分:分 6 【单选题】 函数调用时,实参和形参都是简单变量,它们之间数据传递的过程描述正确的是 A、 实参将地址传递给形参,并释放原先占用的存储单元; B、 实参将地址传递给形参,调用结束时形参再将此地址回传给实参; C、 实参将值传递给形参,调用结束时形参再将其值回传给实参;

C语言函数练习题

/* 姓名:白银 日期:2007.6.11 描述:英尺,英寸,米,厘米之间的转换 */ #include float GetInch(float feet); float GetMeter(float inch); float GetCentiMeter(float meter); void main() { float inch; float meter; float centimeter; float feet; printf("请输入英尺的值\n"); scanf("%f",&feet); inch=GetInch(feet); printf("转换成英寸的结果是%.2f:",inch); printf("\n"); meter=GetMeter(GetInch(feet)); printf("转换成米的结果是%.2f:",meter); printf("\n"); centimeter=GetCentiMeter(GetMeter(GetInch(feet))); printf("转换成米的结果是%.2f:",centimeter); printf("\n");

float GetInch(float feet) { float inch; inch=feet*12; return inch; } float GetMeter(float inch) { float meter; meter=inch*2.54; return meter; } float GetCentiMeter(float meter) { float centimeter; centimeter=meter*100; return centimeter; } /* 姓名:白银 日期:2007.6.11 描述:底和高求三角形面积 */ #include float GetArea(float h,float l); void main() {

c语言练习题带答案)-绝对经典题目不看后悔

1单选题 1.(A)是构成C语言程序的基本单位。 A、函数 B、过程 C、子程序 D、子例程 2.C语言程序从C开始执行。 A) 程序中第一条可执行语句B) 程序中第一个函数 C) 程序中的main函数D) 包含文件中的第一个函数 3、以下说法中正确的是(C)。 A、C语言程序总是从第一个定义的函数开始执行 B、在C语言程序中,要调用的函数必须在main( )函数中定义 C、C语言程序总是从main( )函数开始执行 D、C语言程序中的main( )函数必须放在程序的开始部分 4.下列关于C语言的说法错误的是(B)。 A) C程序的工作过程是编辑、编译、连接、运行 B) C语言不区分大小写。 C) C程序的三种基本结构是顺序、选择、循环 D) C程序从main函数开始执行 5.下列正确的标识符是(C)。 A.-a1 B.a[i] C.a2_i D.int t 5~8题为相同类型题 考点:标识符的命名规则 (1)只能由字母、数字、下划线构成 (2)数字不能作为标识符的开头 (3)关键字不能作为标识符 选项A中的“-” ,选项B中“[”与“]”不满足(1);选项D中的int为关键字,不满足(3) 6.下列C语言用户标识符中合法的是(B)。 A)3ax B)x C)case D)-e2 E)union 选项A中的标识符以数字开头不满足(2);选项C,E均为为关键字,不满足(3);选项D中的“-”不满足(1); 7.下列四组选项中,正确的C语言标识符是(C)。 A)%x B)a+b C)a123 D)123 选项A中的“%” ,选项B中“+”不满足(1);选项D中的标识符以数字开头不满足(2) 8、下列四组字符串中都可以用作C语言程序中的标识符的是(A)。 A、print _3d db8 aBc B、I\am one_half start$it 3pai C、str_1 Cpp pow while D、Pxq My->book line# His.age 选项B中的“\”,”$” ,选项D中“>”,”#”,”.”,”-”不满足(1);选项C中的while为关键字,不满足(3) 9.C语言中的简单数据类型包括(D)。 A、整型、实型、逻辑型 B、整型、实型、逻辑型、字符型 C、整型、字符型、逻辑型 D、整型、实型、字符型 10.在C语言程序中,表达式5%2的结果是C。 A)2.5 B)2 C)1 D)3 详见教材P52~53.

C语言函数练习题及答案.doc

【单选题】 在下列关于C函数定义的叙述中,正确的是? A、 函数可以嵌套定义,但不可以嵌套调用; B、 函数不可以嵌套定义,但可以嵌套调用; C、 函数不可以嵌套定义,也不可以嵌套调用; D、 函数可以嵌套定义,也可以嵌套调用; 我的答案:B得分:2.5分 2 【单选题】 下面函数调用语句含有实参的个数为? n c((expl z exp2)z(exp3z exp4A exp5)); A、

B、

D、 5 我的答案:B得分:2.5分 3 【单选题】 c语言中函数返回值的类型是由以下哪个选项决定的? A、 函数定义时指定的类型; B、 return语句中的表达式类型; C、 调用该两数时的实参的数据类型; D、 形参的数据类型; 我的答案:A得分:2.5分

4 【单选题】

以下关于函数叙述屮,错误的是? A、 两数未被调用时,系统将不为形参分配内存单元; B、 实参与形参的个数必须相等,TL实参与形参的类型必须对应一致; C、 当形参是变量时,实参可以是常量、变量或表达式; D、 如两数调用时,实参与形参都为变:S,则这两个变量不可能共亨同一内存空间; 我的答案:B得分:2.5分 5 【单选题】 若函数调用时参数为基本数据类型的变量,以下叙述正确的是? A、 实参与菇对应的形参共享内存存储单元; B、 只有当实参与菇对应的形参同名时才共享内存存储单元;

C、 实参与对应的形参分别占用不同的内存存储单元; 实参将数据传递给形参后,立即释放原先占用的内存存储单元; 我的答案:C得分:2.5分 6 【单选题】 函数调用时,实参和形参都是简单变量,它们之间数据传递的过程描述正确的是? A、 实参将地址传递给形参,并释放原先占用的存储单元; B、 实参将地址传递给形参,调用结束时形参再将此地址回传给实参; C、 实参将值传递给形参,调用结束时形参再将其值回传给实参; D、 实参将值传递给形参,调用结束时形参并不将其值回传给实参; 我的答案:D得分:2.5分 7 【单选题】

(完整版)c语言函数练习题附答案

函数 一、选择题 1.在c 语言中以下不正确的说法是:() A.实参可以是常量、变量、或表达式 B.形参可以是常量、变量或表达式 C.实参可以为任意类型 D.形参应与其对应的实参类型一致 2.以下程序有语法性错误,有关错误原因的正确说法是:() int main() { int G=5,k; void prt_char(); …… k=prt_char(G); …… } A.语句 void prt_char();有错,它是函数调用语句,不能用 void 说明 B.变量名不能使用大写字母 C.函数说明和函数调用语句之间有矛盾 D.函数名不能使用下划线 3.以下正确的说法是:() A.函数的定义可以嵌套,但函数的调用不可以嵌套 B.函数的定义不可以嵌套,但函数的调用可嵌套 C.函数的定义和调用均不可以嵌套 D.函数的定义和调用均可以嵌套 4.若已定义的函数有返回值,则以下关于该函数调用的叙述中错误的是:() A)函数调用可以作为独立的语句存在 B)函数调用可以作为一个函数的实参 C)函数调用可以出现在表达式中D) 函数调用可以作为一个函数的形参 5.以下所列的各函数首部中,正确的是:() A、 void play(var :Integer,var b:Integer) B、 void play(int a,b) C、 void play(int a,int b) D、 Sub play(a as integer,b as integer) 6.在调用函数时,如果实参是简单变量,它与对应形参之间的数据传递方式是:( ) A、地址传递 B、单向值传递 C、由实参传给形参,再由形参传回实参 D、传递方式由用户指定 7.有以下程序 void fun (int a,int b,int c)

C语言函数部分练习题

本题序号:80 下面程序的输出结果是____。#include main( ) { int x=10; { int x=20; printf ("%d,", x); } printf("%d\n", x); } A 10,20 B 20,10 C 10,10 D 20,20 参考答案 B 本题序号:107 下面程序的输出结果是____。main() { int a=2,i; for(i=0;i<3;i++) printf("%4d",f(a)); } f(int a) { int b=0; static int c=3; b++; c++; return(a+b+c); } A 7 7 7 B 7 10 13 C 7 9 11 D 7 8 9 参考答案 D 本题序号:108 下面程序的输出结果是____。 #include try( ) { static int x=3; x++; return(x);

} main( ) { int i, x; for(i=0; i<=2; i++ ) x=try( ); printf("%d\n", x); } A 3 B 4 C 5 D 6 参考答案 D 本题序号:109 下面程序的输出结果是____。 #include main( ) { int x=1; void f1( ), f2( ); f1( ); f2(x); printf("%d\n", x); } void f1(void) { int x=3; printf("%d ", x); } void f2( x ) int x; { printf("%d ", ++x); } A 1 1 1 B 2 2 2 C 3 3 3 D 3 2 1 参考答案 D 本题序号:126 下列叙述中错误的是 A 主函数中定义的变量在整个程序中都是有效的。 B 在其它函数中定义的变量在主函数中也不能使用。

C语言函数练习习题及答案

欢迎阅读 【单选题】 在下列关于C函数定义的叙述中,正确的是? ?A、 函数可以嵌套定义,但不可以嵌套调用; ? ? ? ? ? ?C、 4 ?D、 5 我的答案:B得分:?2.5分 3

【单选题】 C语言中函数返回值的类型是由以下哪个选项决定的? ?A、 函数定义时指定的类型; ?B、 return语句中的表达式类型; ? ? ? ? ? ? 若函数调用时参数为基本数据类型的变量,以下叙述正确的是??A、 实参与其对应的形参共享内存存储单元;

只有当实参与其对应的形参同名时才共享内存存储单元;?C、 实参与对应的形参分别占用不同的内存存储单元; ?D、 ? ? ? ? ?A、 数组第一个元素的地址; ?B、 数组的第一个元素的值; ?C、 数组中所有元素的值;

数组元素的个数; 我的答案:A得分:?2.5分 8 【单选题】C语言规定了程序中各函数之间调用关系,以下说法正确的是??A、既允许直接递归调用也允许间接递归调用; ? ? ? ? ? ? ? 若函数的形参为一维数组,则下列说法中正确的是()。 ?A、 使用函数时的对应实参必为数组名。

形参数组可以不指定大小。 ?C、 形参数组的元素个数必须等于实参数组的元素个数。 ?D、 ? ? ? ? void?fun(int?n,double?x)??{……} 下选项中的变量都已正确定义并赋值,则对函数fun的正确调用语句是()。?A、 fun(int?y,double?m);?? ?B、 k=fun(10,12.5);

fun(x,n);??? ?D、 void?fun(n,x); 我的答案:C得分:?2.5分 13 【单选题】 ? ? ? ? float?fadd(float?a,?float?b) { return?a+b; } 并将其放在调用语句之后,则在调用之前应对该函数进行说明。以下说明中错误的是??A、

C语言函数练习题及答案修订稿

C语言函数练习题及答 案 集团档案编码:[YTTR-YTPT28-YTNTL98-UYTYNN08]

1 【单选题】 在下列关于C函数定义的叙述中,正确的是? A、 B、 C、 D、 我的答案:B得分:2.5分 2 【单选题】 下面函数调用语句含有实参的个数为? nc((exp1,exp2),(exp3,exp4,exp5)); A、 B、 C、 D、 我的答案:B得分:2.5分 3 【单选题】 C语言中函数返回值的类型是由以下哪个选项决定的? A、 B、 C、

D、 我的答案:A得分:2.5分 4 【单选题】 以下关于函数叙述中,错误的是? A、 B、 C、 D、 我的答案:B得分:2.5分 5 【单选题】 若函数调用时参数为基本数据类型的变量,以下叙述正确的是? A、 B、 C、 D、 我的答案:C得分:2.5分 6 【单选题】 函数调用时,实参和形参都是简单变量,它们之间数据传递的过程描述正确的是? A、 B、 C、 D、

我的答案:D得分:2.5分 7 【单选题】 若用数组名作为函数调用的实参,则传递给形参的是? A、 B、 C、 D、 我的答案:A得分:2.5分 8 【单选题】C语言规定了程序中各函数之间调用关系,以下说法正确的是? A、 B、 C、 D、 我的答案:A得分:2.5分 9 【单选题】 递归函数f(n)=f(n-1)+n(n>1)的递归体是 A、 B、 C、 D、 我的答案:C得分:2.5分 10

【单选题】 若函数的形参为一维数组,则下列说法中正确的是()。 A、 B、 C、 D、 我的答案:B得分:2.5分 11 【单选题】 在函数调用过程中,如果函数funA调用了函数funB,函数funB又调用了函数funA,则()。 A、 B、 C、 D、 我的答案:B得分:2.5分 12 【单选题】 有以下函数定义: voidfun(intn,doublex){……} 下选项中的变量都已正确定义并赋值,则对函数fun的正确调用语句是()。 A、 B、 C、 D、

c语言函数练习题

函数练习题 一、选择题(一题2分,共40分) 1.在c语言中以下不正确的说法是() A.实参可以是常量、变量、或表达式 B.形参可以是常量、变量或表达式 C.实参可以为任意类型 D.形参应与其对应的实参类型一致 2.以下程序有语法性错误,有关错误原因的正确说法是() int main() { int G=5,k; void prt_char(); …… k=prt_char(G); ……} A.语句void prt_char();有错,它是函数调用语句,不能用void说明 B.变量名不能使用大写字母 C.函数说明和函数调用语句之间有矛盾 D.函数名不能使用下划线 3.以下正确的说法是() A.函数的定义可以嵌套,但函数的调用不可以嵌套 B.函数的定义不可以嵌套,但函数的调用可嵌套 C.函数的定义和调用均不可以嵌套 D.函数的定义和调用均可以嵌套 4.若已定义的函数有返回值,则以下关于该函数调用的叙述中错误的是() A)函数调用可以作为独立的语句存在 B)函数调用可以作为一个函数的实参 C)函数调用可以出现在表达式中 D)函数调用可以作为一个函数的形参 5.以下所列的各函数首部中,正确的是() A、void play(var :Integer,var b:Integer) B、void play(int a,b) C、void play(int a,int b) D、Sub play(a as integer,b as integer) 6.在调用函数时,如果实参是简单变量,它与对应形参之间的数据传递方式是() A、地址传递 B、单向值传递 C、由实参传给形参,再由形参传回实参 D、传递方式由用户指定 7.有以下程序

C语言函数练习题2

/* 姓名:白银 日期: 描述:英尺,英寸,米,厘米之间的转换*/ #include <> float GetInch(float feet); float GetMeter(float inch); float GetCentiMeter(float meter); void main() { float inch; float meter; float centimeter;

printf("请输入英尺的值\n"); scanf("%f",&feet); inch=GetInch(feet); printf("转换成英寸的结果是%.2f:",inch); printf("\n"); meter=GetMeter(GetInch(feet)); printf("转换成米的结果是%.2f:",meter); printf("\n"); centimeter=GetCentiMeter(GetMeter(GetInch(feet))); printf("转换成米的结果是%.2f:",centimeter); printf("\n"); } float GetInch(float feet) {

inch=feet*12; return inch; } float GetMeter(float inch) { float meter; meter=inch*; return meter; } float GetCentiMeter(float meter) { float centimeter; centimeter=meter*100; return centimeter;

C语言程序设计练习题含程序及参考答案

C语言练习题 (所提供的源程序均采用自定义函数方式解决,如不采用函数 方式,也可直接在main函数中借鉴该思想编程,因时间有 限,所有程序未能一一验证,仅供参考使用) 1、定义一个函数int fun(int a,int b,int c),它的功能是:若a,b,c能构成等边三角形函数返回3,若能构成等腰三角形函数返回2,若能构成一般三角形函数返回1,若不能构成三角形函数返回0。 #include int fun(int a,int b,int c) { if(a+b>c && b+c>a && a+c>b) { if(a==b && b==c ) return 3; else if(a==b||b==c||a==c) return 2; else return 1; } else return 0; } void main() { int a,b,c,shape; printf(\ Input a,b,c: ); scanf(%d%d%d,&a,&b,&c); printf(\ a=%d, b=%d, c=%d\n,a,b,c); shape =fun(a,b,c); printf(\ \nThe shape : %d\n,shape);

} 2、编写一个程序,将两个变量的值交换, 例如变量a中的值原为 3,b中的值原为8,程序运行后 a 中的值为8,b中的值为3。 #include void fun(int *x,int *y) { int t; t=*x;*x=*y;*y=t } void main() { int a=3,b=8; printf(%d %d\n,a,b); fun(&a,b); printf(%d %d\n,a,b); } 3、从键盘输入3个数,将最大值放在变量a中,最小值放在变量c中。 例如,输入的数为:55 12 34, 输出结果应当是:a=55.0,b=34.0,c=12.0。 #include void fun(float *p,float *q,float *s) { float k; if (*p<*q) { k=*p;*p=*q;*q=k;} if (*q<*s) { k=*s;*s=*p;*p=k;} if (*p<*q) { k=*p;*p=*q;*q=k;} } void main() { float a,b,c; printf(Input a b c: ); scanf(%f%f%f,&a,&b,&c); printf(a=%4.1f,b=%4.1f,c=%4.1f\n\n,a,b,c); fun(&a,&b,&c); printf(a=%4.1f,b=%4.1f,c=%4.1f\n\n,a,b,c); } 4、编写函数fun(int n),它的功能是:计算正整数n的所有因子(1和n除外)之和作为函数值返回。例如:n=120时,函数值为239。 #include #include int fun(int n) { int i,s=0;

C语言程序设计函数练习题及参考答案

C语言程序设计练习题及参考答案 1、定义一个函数int fun(int a,int b,int c),它的功能是:若a,b,c能构成等边三角形函数返回3,若能构成等腰三角形函数返回2,若能构成一般三角形函数返回1,若不能构成三角形函数返回0。 #include int fun(int a,int b,int c) { if(a+b>c && b+c>a && a+c>b) { if(a==b && b==c ) return 3; else if(a==b||b==c||a==c) return 2; else return 1; } else return 0; } void main() { int a,b,c,shape; printf("\nInput a,b,c: "); scanf("%d%d%d",&a,&b,&c); printf("\na=%d, b=%d, c=%d\n",a,b,c); shape =fun(a,b,c); printf("\n\nThe shape : %d\n",shape); }

2、编写一个程序,将两个变量的值交换, 例如变量a中的值原为 3,b中的值原为8,程序运行后 a 中的值为8,b中的值为3。 #include void fun(int *x,int *y) { int t; t=*x;*x=*y;*y=t } void main() { int a=3,b=8; printf("%d %d\n",a,b); fun(&a,b); printf("%d %d\n",a,b); }

C语言练习题a

C语言练习题 一、单项选择题 1. 一个C程序的执行是从( )。 A. 本程序的main函数开始,到main函数结束 B. 本程序文件的第一个函数开始,到本程序文件的最后一个函数结束 C. 本程序的main函数开始,到本程序文件的最后一个函数结束 D. 本程序文件的第一个函数开始,到本程序main函数结束 2. 字符型数据使用( )括起来。 A. 单引号 B. 双引号 C. 圆括号 D. # 3. 下列符号中用来表示C语言中的回车换行的是( )。 A. \r B. \n C. \b D. \t 4. 以下不能定义为用户标识符的是( )。 A. MAIN B. _HJ C. 2ong D. LINE1 5. 被调函数通过( )语句,将值返回给主调函数。 A. if B. for C. while D. return 6. printf(“%d”,7%4); 执行之后,输出结果是( )。 A. 2 B. 3 C. 4 D. 1.75 7. C语言中形参的默认存储类别是( )。 A. 自动auto B. 静态static C. 寄存器register D. 外部extern 8. 表达式1&&2&&3&&4的值为( )。 A.1 B.2 C.3 D.4 9. 若x=0,y=3,z=3,以下表达式值为0的是( )。 A. !x B.x= 'a')||(c<= 'z') C. ('a'<=c)and ('z'>=c) D. (c>= 'a')&&(c<= 'z') 11. 设有数组定义:char ch[]=“student”,则数组ch 所占的空间为( )。 A. 5字节 B. 6字节 C. 7字节 D. 8个字节 12. 数学比较表达式:5>x≥2对应的C语言逻辑表达式是( )。 A.5>x>=2 B.5>x && x>2 && x=2 C.x<5 && x>=2 D.x<5 || (x>2) 13. 若有定义:int a[][3]={1,2,3,4,5,6},则a[1][0]的值是( )。 A. 4 B. 1 C. 2 D. 5 14. 以下函数调用语句中,含有实参的个数为( )。 fun(max(2,3),4); A. 1 B. 2 C.3 D.4 15. 在C语言中,若对函数类型未另显示说明,则函数的隐含类型是( )类型。 A.void B.double C.int D.char 16. 在C 语言中,每个语句必须以( )结束。 A. 回车符 B. 冒号 C. 逗号 D. 分号 17. 字符串的结束标志是( )。 A. 0 B. '0' C. '\0' D. "0" 18. printf("%c,%d",'b', 'b');的输出结果是( )。

C语言函数练习题及答案

C语言函数练习题及答 案 Company Document number:WTUT-WT88Y-W8BBGB-BWYTT-19998

1 【单选题】 在下列关于C函数定义的叙述中,正确的是?A、 函数可以嵌套定义,但不可以嵌套调用; ?B、 函数不可以嵌套定义,但可以嵌套调用; ?C、 函数不可以嵌套定义,也不可以嵌套调用;?D、 函数可以嵌套定义,也可以嵌套调用; 我的答案:B得分:分 2 【单选题】 下面函数调用语句含有实参的个数为 nc((exp1,exp2),(exp3,exp4,exp5)); ?A、 1 ?B、 2 ?C、 4 ?D、 5 我的答案:B得分:分 3

【单选题】 C语言中函数返回值的类型是由以下哪个选项决定的 ?A、 函数定义时指定的类型; ?B、 return语句中的表达式类型; ?C、 调用该函数时的实参的数据类型; ?D、 形参的数据类型; 我的答案:A得分:分 4 【单选题】 以下关于函数叙述中,错误的是 ?A、 函数未被调用时,系统将不为形参分配内存单元; ?B、 实参与形参的个数必须相等,且实参与形参的类型必须对应一致; ?C、 当形参是变量时,实参可以是常量、变量或表达式; ?D、 如函数调用时,实参与形参都为变量,则这两个变量不可能共享同一内存空间; 我的答案:B得分:分 5 【单选题】 若函数调用时参数为基本数据类型的变量,以下叙述正确的是?A、

实参与其对应的形参共享内存存储单元; ?B、 只有当实参与其对应的形参同名时才共享内存存储单元; ?C、 实参与对应的形参分别占用不同的内存存储单元; ?D、 实参将数据传递给形参后,立即释放原先占用的内存存储单元; 我的答案:C得分:分 6 【单选题】 函数调用时,实参和形参都是简单变量,它们之间数据传递的过程描述正确的是?A、 实参将地址传递给形参,并释放原先占用的存储单元; ?B、 实参将地址传递给形参,调用结束时形参再将此地址回传给实参; ?C、 实参将值传递给形参,调用结束时形参再将其值回传给实参; ?D、 实参将值传递给形参,调用结束时形参并不将其值回传给实参; 我的答案:D得分:分 7 【单选题】 若用数组名作为函数调用的实参,则传递给形参的是 ?A、 数组第一个元素的地址; ?B、 数组的第一个元素的值;

C语言综合习题及答案

C语言练习题 一、选择题 1. 一个完整的C源程序是【B 】。 A)要由一个主函数或一个以上的非主函数构成 B)由一个且仅由一个主函数和零个以上的非主函数构成 C)要由一个主函数和一个以上的非主函数构成 D)由一个且只有一个主函数或多个非主函数构成 2. 以下关于函数的叙述中正确的是【C】。 A)C语言程序将从源程序中第一个函数开始执行 B)可以在程序中由用户指定任意一个函数作为主函数,程序将从此开始执行 C)C语言规定必须用main作为主函数名,程序将从此开始执行,在此结束 D)main可作为用户标识符,用以定义任意一个函数 3. 以下关于函数的叙述中不正确的是【B】。 A)C程序是函数的集合,包括标准库函数和用户自定义函数 B)在C语言程序中,被调用的函数必须在main函数中定义 C)在C语言程序中,函数的定义不能嵌套 D)在C语言程序中,函数的调用可以嵌套 4. 在一个C程序中,【B 】。 A)main函数必须出现在所有函数之前 B)main函数可以在任何地方出现 C)main函数必须出现在所有函数之后 D)main函数必须出现在固定位置 5.C程序的执行是从【A 】开始的。 A)主函数 B)子函数 C)从程序第一行 D)printf()函数 6.以下选项中不合法的标识符是【C 】 A)print B)FOR C)&a D)_00 7.以下选项中可作为C语言合法常量的是【A】 A)-80 B)-080 C)-8e1.0 D)-80.0e 8.以下选项中不属于字符常量的是【B】 A)′C′ B)"C" C)′\xCC′ D) ′\072′ 9. 若在C语言中未说明函数的类型,则系统默认该函数的数据类型是【C】 A)float B)long C)int D)double 10. 以下关于函数叙述中,错误的是【D】。 A)函数未被调用时,系统将不为形参分配内存单元 B)实参与形参的个数应相等,且实参与形参的类型必须对应一致 C)当形参是变量时,实参可以是常量、变量或表达式 D)形参可以是常量、变量或表达式 11. C程序中各函数之间可以通过多种方式传递数据,下列不能用于实现数据传递的方式是

C语言程序设计练习题(含程序及参考答案)

1、定义一个函数int fun(int a,int b,int c),它的功能是:若a,b,c能构成等边三角形函数返回3,若能构成等腰返回2,一般三角形返回1,若不能构成三角形返回0。 #include int fun(int a,int b,int c) { if(a+b>c && b+c>a && a+c>b) { if(a==b && b==c ) return 3; else if(a==b||b==c||a==c) return 2; else return 1; } else return 0; } void main() { int a,b,c,shape; printf("\nInput a,b,c: "); scanf("%d%d%d",&a,&b,&c); printf("\na=%d, b=%d, c=%d\n",a,b,c); shape =fun(a,b,c); printf("\n\nThe shape : %d\n",shape); } 2、编写一个程序,将两个变量的值交换, 例如变量a中的值

原为 3,b中的值原为8,程序运行后 a 中的值为8,b中的值为3。 #include void fun(int *x,int *y) { int t; t=*x;*x=*y;*y=t } void main() { int a=3,b=8; printf("%d %d\n",a,b); fun(&a,b); printf("%d %d\n",a,b); } 3、从键盘输入3个数,将最大值放在变量a中,最小值放在变量c中。 例如,输入的数为:55 12 34, 输出结果应当是:a=55.0,b=34.0,c=12.0。 #include void fun(float *p,float *q,float *s) { float k; if (*p<*q) { k=*p;*p=*q;*q=k;} if (*q<*s) { k=*s;*s=*p;*p=k;}

C语言函数练习题

1、编写求圆的面积的函数,并调用该函数求出圆环的面积。 #define PI 3.14159 float area(float r) {float s; s=PI*r*r; return(s); } main() {float r1,r2,s; scanf("%d%d",&r1,&r2); s=area(r1)-area(r2); printf("s=%f\n",s); } 2A、编写求k!的函数,再调用该函数求10!并输出。 解法1: float jc(int k) {float p=1; int i; for(i=1;i<=k;i++) p=p*i; return(p); } main() {float p; p=jc(10); printf("p=%f\n",p); } 解法2: float jc(int k) {float p=1; while(k>0) {p=p*k; k--; } return(p); } main() {float p; p=jc(10); printf("p=%f\n",p); } 2、编写求k!的函数,再调用该函数求1!+3!+5!+ (19) 之和并输出。 float jc(int k) {float p=1; int i; for(i=1;i<=k;i++) p=p*i; return(p); } main() {float s=0; int i; for(i=1;i<=19;i+=2) s=s+jc(i); printf("s=%f\n",s); } 3、编写求k!的函数,再调用该函数求C(m,n)=m!/(n! *(m-n)!)并输出。 float jc(int k) {float p=1; int i; for(i=1;i<=k;i++) p=p*i; return(p); } main() {float c; int m,n; scanf("%d%d",&m,&n); c=jc(m)/jc(n)/jc(m-n); /*或 c=jc(m)/(jc(n)*jc(m-n));*/ printf("c=%f\n",c); } 4、编写判断素数的函数,再调用该函数判断1937是否是素数。 int isp(int m) {int i;

开发之C语言基础测试题-含答案

第1 题 设有语句“ char s[ ] = “ Program ”,*p = s;”, 则以下叙述正确的是 A.数组s 的内容与指针变量p 中内容相同 B.数组s 的长度与strlen ( p ) 的值相等 C.p[5]的值等于s[5] 的值 D.sizeof( s ) 等于sizeof( *p ) 第2 题 若fp是指向某文件的指针,且已读到此文件末尾,则库函数feof(fp)的返回值是 A.EOF B.0 C.非零值 D.NULL 第3 题 若有定义:int a[2][3];则对该数组的i行j列元素值的正确引用为 A.*(*(a+i)+j) B.(a+i)[j] C.*(a+i+j) D.*(a+i)+j 第4 题 若有以下的说明,则对初值中字符'a'的引用方式为 static struct st { char ch;double x;char a[];} struct st c[2][2]={{'a',3.5,'bc'},{'c',4.5,'de'},{'m',8.6,'abc'}}; A.c.ch B.c[0][0].ch C.c[1][1].ch D.a[0] 第5 题 对于用"r"方式打开文件下列说法正确的是 A.用"r"方式打开的文件只输入不能输出 B.用"r"方式打开的文件只能输出,不能输入 C.用"r"方式可以打开任何文件 D.以上均不对 第6 题 设p1和p2均为指向同一个int型一维数组的指针变量,k为int型变量,下列语句不正确的是 A.k=*p1+*p2 B.B. k=*p1*(*p2) C.p2=k D.p1=p2 第7 题 一个C程序由函数A、B、C和函数P构成,在函数A中分别调用了函数B和函数C,在函数B中调用了函数A,且在函数P中也调用了函数A,则可以说 A.函数B中调用的函数A是函数A的间接递归调用 B.函数A被函数B中调用的函数A间接递归调用 C.

相关主题
文本预览
相关文档 最新文档