题干 | 以下关于函数的叙述中正确的是( d )。 A.函数调用必须传递实参 B.函数必须要有形參 C.函数必须要有返回值 D.函数形参的类型与返回值的类型无关 |
题干 | 以下程序实现,打印任意奇数行菱形星塔,请填空。 void fun(int n){ int i,j; for(i=1;i<=n/2+1;i++){ for(j=1;j<=n/2+1-i;j++) printf(" "); for(j=1;j<=2*i-1;j++) printf("*"); ( c ); } for(i=1;i<=( d );i++){ for(j=1;j<=i;j++) ( a ); for(j=1;j<=n-2*i;j++) ( b ); printf("\n"); } } void main(){ fun(17); } A.printf(" ") B.printf("*") C.printf("\n") D.n/2 |
题干 | 若函数调用时的实参为变量,以下关于函数形参和实参的叙述正确的是( d )。 A.函数的实参和其对应的形参共占同一存储单元 B.形参只是形式上的存在,不占用具体存储单元 C.同名实参和形参占同一存储单元 D.函数的形参和实参分别占用不同的存储单元 |
题干 | 以下函数实现,根据传入序号显示第n个斐波那数,请填空。 int fun(int n){ if(n>=3){ int a=1,b=1,c; while(( b )>=3){ ( d ); ( c ); b=c; n--; } return c; } else return ( a ); } void main(){ printf("%d\n",fun(9)); } A.1 B.n C.a=b D.c=a+b |
题干 | 以下程序实现,显示100以内的所有姊妹素数,请填空。 int pss(int n){//判素数,是素数返回1,否则返回0 int i; for(i=( c );i<=n-1;i++) if(n%i==0) return ( a ); return ( b ); } void fun(int m,int n){ int a; for(a=m;a<=n-2;a=a+2){ if(pss(( d ))&&pss(a+2)) printf("%d,%d\n",a,a+2); } } void main(){ fun(3,99); } A.0 B.1 C.2 D.a |
题干 | 以下程序的输出结果为( d )。 int f(int x,int y) { return((y-x)*x); } void main() { int a=3,b=4,c=5,d; d=f(f(a,b),f(a,c)); printf("%d",d); } A.6 B.7 C.8 D.9 |
题干 | 以下函数返回大于等于n的最小斐波那数,请填空。 int fun(int n){ int a=1,b=1,c; do{ ( d ); a=b; ( c ); }while(( b )>c); return ( a ); } void main(){ printf("%d\n",fun(17)); } A.c B.n C.b=c D.c=a+b |
题干 | 以下fun函数将正长整型数中各位数字,按相反的顺序构成一个新数,作为函数值返回,若函数参数为12345则54321,请填空。 long fun(long n){ int ( a ); while(( d )){ s=s*10+( c ); n=( b ); } return s; } void main(){ printf("%d",fun(12345)); } A.s=0 B.n/10 C.n%10 D.n!=0 |
题干 | 设函数fun的定义形式为 void fun(char ch, float x ){ … },则以下对函数fun的调用语句中,正确的是( d )。 A.fun("abc",3.0); B.t=fun(‘D’,16.5); C.fun(‘65’,2.8); D.fun(32,32); |
题干 | 以下程序的输出数值结果为( c )。 int fun(int x, int y){ return(x+y); } void main(){ int a=2,b=5,c=8; printf("%d\n", fun(fun(a+c,b),a-c)); } A.7 B.8 C.9 D.10 |
题干 | 以下程序运行后的输出结果是( b )。 void f(int x){ x=x*2; } void main( ){ int x=6; f(x); printf("%d",x); } A.5 B.6 C.7 D.8 |
题干 | 以下程序运行后的输出结果是( d )。 int fun(int x,int y){ if(x!=y) return((x+y)/2); else return (x); } void main(){ int a=4,b=5,c=6; printf("%d\n",fun(2*a,fun(b,c)); } A.3 B.4 C.5 D.6 |
题干 | 以下程序运行后的输出结果是( b )。 int f(int x){ return x*2; } void main(){ print("%d\n",f(f(f(1)))); } A.4 B.8 C.16 D.32 |
题干 | 在C程序中,函数既可以嵌套定义,也可以嵌套调用。错 | ||||||
答案 |
|
题干 | 以下程序运行后的输出结果是( a )。 char f(char x){ return x*x%10+‘0’; } void main( ){ char a; int b=0; for(a=0;a<5;a+=1){ b=f(a); putchar(b); } } A.01496 B.01469 C.0146 D.0149 |
题干 | 以下关于return语句的叙述中正确的是( b )。 A.一个自定义函数中必须有一条return语句 B.一个自定义函数中可以根据不同情况设置多条return语句 C.定义成void类型的函数中可以有带返回值的return语句 D.没有return语句的自定义函数在执行结束时不能返回到调用处 |
题干 | int new_div(double a,double b){ return a/b+0.5; } void main(){//b printf("%d",new_div(7.8,3.1)); } A.2 B.3 C.3.016129 D.2.516129 |
题干 | 以下程序运行后的输出结果是( b )。 char f(char x){ return x*x+‘a’; } void main(){ for(a=0;a<4;a+=1){ b=f(a); putchar(b); } } A.abcd B.abej C.jeba D.abcde |
题干 | 关于以下代码叙述正确的是( a )。 void main(){ int findmax(int,int.int),m; m=findmax(a,b,c); ...... } int findmax(int x,int y,int z){ ...... } A.在main函数中声明了findmax函数 B.在main函数中定义了findmax函数 C.在main函数中两次调用了findmax函数 D.在main函数内、外重复定义了findmax函数 |
题干 | 以下程序运行的输出结果为( b )。 double fun(double a){ return a-(int)a; } void main(){ printf("%.2f",fun(3.1415)); } A.3 B.0.14 C.3.14 D.1.14 |
题干 | 以下叙述中错误的是( a )。 A.形参可以是常量、变量或表达式 B.实参可以是常量、变量或表达式 C.实参的类型应与形参的类型赋值兼容 D.实参的个数应与形参的个数一致 |
题干 | 以下关于C语言函数参数传递方式的叙述正确的是( a )。 A.数据只能从实参单向传递给形参 B.数据可以在实参和形参之间双向传递 C.数据只能从形参单向传递给实参 D.C语言的函数参数既可以从实参单向传递给形参,也可以在实参和形参之间双向传递,可视情况选择使用 |
题干 | 以下程序实现,显示所有三位回文素数(回文素数,是指高低位对称的素数,如101,191,919),请填空。 int pss(int n){//判素数,是素数返回1否则返回0 int i; for(i=2;i<=n-1;i++) if(n%i==0) return 0; return 1; } int hwf(int t){//判回文数,是返回1否则返回0 int s=0,n=( c ); while(n!=0){ s=s*10+n%10; n=( d ); } if(s==( c )) return 1; else return ( a ); } void main(){ int i; for(i=101;i<=999;i=i+2) if(pss(i)&&hwf(i)) printf("%d ",i); } A.0 B.1 C.t D.n/10 |
题干 | 以下程序的输出结果为:( d )。 void fun(char ch){ if(ch<‘3’) fun(ch+1); putchar(ch); } void main(){ fun(‘0’); } A.0 B.3 C.0123 D.3210 |
题干 | 若已定义的函数有返回值,则以下关于该函数调用的叙述中错误的是( d )。 A.函数调用可以作为独立的语句存在 B.函数调用可以作为一个函数的实参 C.函数调用可以出现在表达式中 D.函数调用可以作为一个函数的形参 |
题干 | 以下程序输出如下图形,请填空。 * ** *** * ** *** **** #include "stdio.h" void main(){ void fun(int); //函数的( b ) ( c ) //函数的调用,打印3行 ( d ) //函数的调用,打印4行 } void fun(int n){ //函数的( a ) int i,j; for(i=1;i<=n;i++) { for(j=1;j<=i;j++) printf("*"); printf("\n"); } } A.定义 B.声明 C.fun(3); D.fun(4); |
题干 | 以下叙述中错误的是( b )。 A.用户定义的函数中可以没有return语句 B.用户定义的函数中可以有多个return语句,以便可以调用一次返回多个函数值 C.用户定义的函数中若没有return语句,则应当定义函数为void类型 D.函数的return语句中可以没有表达式 |
题干 | 下面的函数调用语句中func函数的实参个数是( a )。 func(f2(v1,v2),(v3,v4,v5),(v6,max(v7,v8))); A.3 B.4 C.5 D.8 |
题干 | 以下叙述中错误的是( d )。 A.一个完整的C程序必须有一个main主函数,自定义函数可以有一个或多个,也可以没有 B.函数调用可以作为一个独立的语句存在 C.若函数有返回值,必须通过returm语句返回 D.函数形参的值也可以传回给对应的实参 |