2017计算机二级c语言考试试题大全
“C语言程序设计”是计算机专业和非计算机专业的一门技术基础课程,也是程序设计的启蒙语言课程。下面是小编整理的关于计算机二级c语言考试试题,欢迎参考!
一、单选题
1.当一个函数没有返回值时,该函数类型应说明为( A )。
A.void B.int
C.无 D.任意
2.下列关于设置函数默认的参数值的描述中,错误的是( C )。
A.可对函数的部分参数或全部参数设置默认值
B.在有函数说明时,默认值应设置在函数说明时,而不是定义时
C.设置函数默认参数值时,只可用常量不可用含有变量的表达式
D.设置函数参数默认值应从右向左设置
3.下列关于被调用函数中return语句的描述中,错误的是( D )。
A.一个函数中可以有多条return语句
B.return语句具有返回程序控制权的作用
C.函数通过return语句返回值时仅有一个
D.一个函数中有且仅有一条return语句
4.函数返回值的类型是由( B )决定的。
A.调用该函数的调用函数的类型
B.定义该函数时所指定的类型
C.return语句中表达式的类型
D.接收函数返回值的变量或对象的类型
5.下列设置函数参数默认值的说明语句中,错误的是( C )。
A.int fun(int x , int y=10); B.int fun(int x=5, int =10);
C.int fun(int x=5, int y); D.int fun(int x , int y=a+b);
(其中,a和b是已定义过具有有效值的变量)
6.下列选择重载函数的不同实现的判断条件中,错误的是( D )。
A.参数类型不同 B.参数个数不同
C.参数顺序不同 D.函数返回值不同
7.已知:int fun (int &a),m=10;下列调用fum()函数的语句中,正确的是( C )。
A.fun(&m); B.fun (m*2);
C.fun (m); D.fun (m++);
8.在函数的引用调用中,函数的实参和形参分别应是( C )。
A.变量值和变量 B.地址值和指针
C.变量名和引用 D.地址值和引用
9.在函数的传址调用中,函数的实参和形参分别应是( B )。
A.变量值和变量 B.地址值和指针
C.变量名和引用 D.地址值和引用
10.说明一个内联函数时,应加关键字是( A )。
A.inline B.static
C.void D.extern
二、程序填空
/*-------------------------------------------------------
【程序填空】
---------------------------------------------------------
功能:计算并输出500以内最大的10个能被13或17整除的自然数之和。
-------------------------------------------------------*/
#include "stdio.h"
/***********FILL***********/
int fun(__int k___ )
{
int m=0, mc=0, j, n;
/***********FILL***********/
while (k >= 2 && __mc < 10___)
{
/***********FILL***********/
if (k == 0 || _k == 0____)
{
m=m+k;
mc++;
}
k--;
}
/***********FILL***********/
__return (m)___;
}
main ( )
{
printf("%d\n", fun (500));
}
/*-------------------------------------------------------
【程序填空】
---------------------------------------------------------
功能:以下程序中,函数fun的功能是计算x^2-2x+6,主函数中将调用fun函数计算:
y1=(x+8)^2-2(x+8)+6
y2=(sin(x))^2-2sin(x)+6
请填空。
---------------------------------------------------------------*/
#include
#include
double fun(double x)
{
return(x*x-2*x+6);
}
main()
{
/***********FILL***********/
double x, ____ y1,y2______;
printf("Enter x:");
scanf("%lf",&x);
/***********FILL***********/
y1=fun( ___(8+x)______);
/***********FILL***********/
y2=fun( ___sin(x)______);
printf("y1=%lf,y2=%lf\n", y1, y2);
}
三、程序改错
功能:一个5位数,判断它是不是回文数。即12321是回文数,个
位与万位相同,十位与千位相同。
------------------------------------------------------*/
#include "stdio.h"
main( )
{
/**********ERROR**********/
long ge,shi,qian;wan,x;
scanf("%ld",&x);
/**********ERROR**********/
wan=x000;
qian=x000/1000;
shi=x0/10;
ge=x;
/**********ERROR**********/
if (ge==wan||shi==qian)
printf("this number is a huiwen\n");
else
printf("this number is not a huiwen\n");
}
改:long ge,shi,qian,wan,x;
wan=x/10000;
if (ge==wan&&shi==qian)
/*------------------------------------------------------
【程序改错】
--------------------------------------------------------
功能:用下面的和式求圆周率的近似值。直到最后一项的绝对值
小于等于0.0001。
π/4= 1- 1/3 + 1/5 - 1/7 ....
------------------------------------------------------*/
#include "stdio.h"
/**********ERROR**********/
#include "math"
void fun()
{
float s=0,t=1,i=1;
/**********ERROR**********/
int p=1;
/**********ERROR**********/
while(fabs(t)<=1e-4)
{
s=s+t;
p=-p;
i=i+2;
t=p/i;
}
/**********ERROR**********/
printf("pi=%d\n",s*4);
}
main()
{
fun();
改:#include "math.h"
float p=1;
while(fabs(t)>1e-4)
while(0.0001
while(1e-4
while(fabs(t)>0.0001)
版权声明:此文自动收集于网络,若有来源错误或者侵犯您的合法权益,您可通过邮箱与我们取得联系,我们将及时进行处理。
本文地址:https://www.gunzhua.com/fanwen/gongzuojihua/846952.html