2020 C语言程序设计(南京工业职业技术大学) 最新满分章节测试答案
本答案对应课程为:点我自动跳转查看
本课程起止时间为:2020-12-14到2023-10-02
本篇答案更新状态:已完结
第六章 用函数实现模块化程序设计 函数习题
1、 问题:(1)以下正确的函数定义是( )。A.double fun(int x, int y) B.double fun(int x,y) { { z=x+y ; int z ; return z ; return z ; } }C.fun (x,y) D.double fun (int x, int y) { { int x, y ; double z ; double z ; z=x+y ; z=x+y ; return z ; return z ; } }
选项:
A:double fun(int x, int y) { z=x+y ; return z ; }
B: double fun(int x,y) { int z ; return z ; }
C:fun (x,y) { int x, y ; double z ; z=x+y ; return z ; }
D: double fun (int x, int y) { double z ; z=x+y ; return z ; }
答案: 【 double fun (int x, int y) { double z ; z=x+y ; return z ; } 】
2、 问题:若调用一个非void函数,且此函数中没有return语句,则正确的说法是( )。
选项:
A:该函数没有返回值
B:该函数返回若干个系统默认值
C:能返回一个用户所希望的函数值
D:返回一个不确定的值
答案: 【返回一个不确定的值】
3、 问题:以下不正确的说法是( )。
选项:
A:实参可以是常量、变量或表达式
B:形参可以是常量、变量或表达式
C:实参可以为任意类型
D:如果形参和实参的类型不一致,以形参类型为准
答案: 【形参可以是常量、变量或表达式】
4、 问题:C语言规定,函数返回值的类型是由( )决定的。
选项:
A:return语句中的表达式类型
B:调用该函数时的主调函数类型
C:调用该函数时由系统临时
D:在定义函数时所指定的函数类型
答案: 【在定义函数时所指定的函数类型】
5、 问题:以下正确的描述是( )。
选项:
A:函数的定义可以嵌套,但函数的调用不可以嵌套
B:函数的定义不可以嵌套,但函数的调用可以嵌套
C:函数的定义和函数的调用均不可以嵌套
D:函数的定义和函数的调用均可以嵌套
答案: 【函数的定义不可以嵌套,但函数的调用可以嵌套】
6、 问题:如果在一个函数中的复合语句中定义了一个变量,则该变量( )。
选项:
A:只在该复合语句中有定义
B:在该函数中有定义
C:在本程序范围内有定义
D: 为非法变量
答案: 【只在该复合语句中有定义 】
7、 问题:已知一个函数的定义如下: double fun(int x, double y){…} 则该函数正确的函数原型声明为( )。
选项:
A:double fun (int x,double y)
B:fun (int x,double y)
C:double fun (int ,double );
D:fun(x,y) ;
答案: 【double fun (int ,double ); 】
8、 问题:以下只有在使用时才为该类型变量分配内存的存储类型说明是( )。
选项:
A:auto和static
B:auto和register
C:register和static
D:extern和register
答案: 【auto和register】
9、 问题:以下叙述中正确的是( )。
选项:
A:全局变量的作用域一定比局部变量的作用域范围大
B:静态类别变量的生存期贯穿于整个程序的运行期间
C:函数的形参都属于全局变量
D:未在定义语句中赋初值的auto变量和static变量的初值都是随机值
答案: 【静态类别变量的生存期贯穿于整个程序的运行期间】
10、 问题:以下不正确的说法是( )。
选项:
A:在不同函数中可以使用相同名字的变量
B:形式参数是局部变量
C:在函数内定义的变量只在本函数范围内有定义
D:在函数内的复合语句中定义的变量在本函数范围内有定义
答案: 【在函数内的复合语句中定义的变量在本函数范围内有定义】
11、 问题:(1)下面程序执行的结果是 。 #include<stdio.h>int f(int);int main(){ int z; z=f(4); printf("%d",z); return 0;}int f(int x){ if(x==0||x==1) return 3; else return x*x-f(x-2);}
答案: 【15】
12、 问题:(2)下面程序执行的结果是 。 #include<stdio.h>int f(int );int main(){ int z; z=f(5); printf("%d",z); return 0;}int f(int n){ if(n==1||n==2) return 1; else return f(n-1)+f(n-2);}
答案: 【5】
13、 问题:(3)下面程序的运行结果是 。 #include<stdio.h>int f1(int,int);int f2(int,int);int main(){ int a=4, b=3, c=5; int d, e, f; d=f1(a,b); d=f1(d,c); e=f2(a,b); e=f2(e,c); f=a+b+c-d-e; printf("%d,%d,%d",d ,f, e); return 0;} int f1(int x, int y){ return x>y?x:y;}int f2(int x, int y){ return x>y?y:x;}
答案: 【5,4,3】
14、 问题:下面程序的运行结果是 。 #include<stdio.h>int fun1(int);int fun2(int);int i=0;int main ( ){ int i = 5 ; fun2(i/2) ; printf("i=%d",i) ; fun2(i=i/2) ; printf("i=%d",i) ; fun2(i/2) ; printf("i=%d",i) ; fun1(i/2) ; printf("i=%d",i) ; return 0;}int fun1 (int i){ i = (i%i)(ii)/(2*i)+4 ; printf("i=%d",i); return (i) ;}int fun2(int i){ i = i<=2 ? 5 : 0 ; return (i) ;}
答案: 【i=5
i=2
i=2
i=4
i=2】
15、 问题:若输入253,则下面程序运行的结果是 。 #include <stdio.h>long fun(long);int main( ){ long x; scanf("%ld",&x); printf("%ld",fun(x)); return 0;}long fun (long data){ long k =1; do { k*=data % 10 ; data/=10 ; } while(data) ; return (k);}
答案: 【30】
16、 问题:#include <stdio.h>int fun(int);int main(){ int i,a=5; for(i=0;i<3;i++) printf("%d %d",i,fun(a)); printf(""); return 0;}int fun(int a){ int b=0; static int c=3; b++; c++; return(a+b+c);}
答案: 【0 10
1 11
2 12】
17、 问题:函数调用语句:fun((a,b),(c,d,e))实参个数为 。
答案: 【2】
18、 问题:C语言变量按其作用域分为 和 。按其生存期分为 和 。
答案: 【全局变量 , 局部变量 , 静态变量 , 动态变量】
【作业】第二章 最简单的C程序设计——顺序程序设计 3-1
1、 问题:1
评分规则: 【 2
】
第七章 善于利用指针 指针单元测试
1、 问题:变量的指针,其含义是指该变量的( )。
选项:
A:值
B:地址
C:名
D:一个标志
答案: 【地址】
2、 问题:已有定义int k=2;int ptr1,ptr2;且ptr1和ptr2均已指向变量k,下面不能正确执行的赋值语句是( )。
选项:
A:k=ptr1+ptr2
B:ptr2=k
C:ptr1=ptr2
D:k=ptr1(*ptr2)
答案: 【ptr2=k 】
3、 问题:若有说明:int p,m=5,n;以下程序段正确的是( )。
选项:
A:p=&n ; scanf("%d",&p);
B: p = &n ; scanf("%d",p);
C:scanf("%d",&n); p=n ;
D: p = &n ; p = m ;
答案: 【 p = &n ; *p = m ;】
4、 问题:下面能正确进行字符串赋值操作的是( )。
选项:
A:char s[5]={ "ABCDE"};
B:char s[5]={‘A’, ‘B’, ‘C’, ‘D’, ‘E’};
C:char s ; s="ABCDE" ;
D:char s; scanf("%s",s) ;
答案: 【char s[5]={‘A’, ‘B’, ‘C’, ‘D’, ‘E’};】
5、 问题:下面程序段的运行结果是( )。 char *s="abcde" ;s+=2 ; printf("%s",s);
选项:
A:cde
B:字符’c’
C:字符’c’的地址
D:不确定
答案: 【cde 】
6、 问题:设有定义:double x[10],p=x;,以下能给数组x下标为6的元素读入数据的正确语句是__。
选项:
A:scanf("%f",&x[6]);
B:scanf("%lf",(x+6));
C:scanf("%lf",p+6);
D:scanf("%lf",p[6]);
答案: 【scanf("%lf",p+6); 】
7、 问题: 若有声明int i = 4 , * point = &i;下面__组中的表达式均为指针类型。
选项:
A:i, point, &i
B: &i, &i, point
C:&point, point, &i
D:&i, &point, point
答案: 【&i, &*point, point 】
8、 问题:对于int a[10] = { 2 ,3 };下面__表达式有语法错误。
选项:
A:*(a+1)
B: a+1
C:a[1]
D:a-=2
答案: 【a-=2】
本文章不含期末不含主观题!!
本文章不含期末不含主观题!!
支付后可长期查看
有疑问请添加客服QQ 2356025045反馈
如遇卡顿看不了请换个浏览器即可打开
请看清楚了再购买哦,电子资源购买后不支持退款哦