Dotcpp  >  试卷列表  >  大连交通大学五年制C语言试卷九

大连交通大学五年制C语言试卷九


第1题

以下叙述中正确的是( )。

共 1 分 

第2题

设以下变量均为int类型,则值不等于7的表达式是( )。

共 1 分 

第3题

关于%-m.nf格式符,下列描述中正确的是( )。

共 1 分 

第4题

假定有以下变量定义:

1
int k=7,x=12;

则能使值为3的表达式是( )。

共 1 分 

第5题

以下不是无限循环的语句为( )。

共 1 分 

第6题

以下不能对二维数组a进行正确初始化的语句是( )。

共 1 分 

第7题

下述函数的功能是( )。

1
2
3
4
5
6
int fun(char *x)
{
    char *y=x;
    while(*y++);
    return y-x-1;
}
共 1 分 

第8题

关于带参数的宏,下列说法正确的是( )。

共 1 分 

第9题

下面程序的输出结果应该是( )。

1
2
3
4
5
6
7
8
9
void prtv(int *x)
{
    printf("%d\n",++*x);
}
void main()
{
    int a=25;
    prtv(&a);
}
共 1 分 

第10题

设有如下定义:

1
2
3
4
5
6
struct sk
{
    int a;
    float b;
}
data,*p;

若要使p指向data中的a域,正确的赋值语句是( )。

共 1 分 

第11题

一个C源程序必须包含一个main函数。

共 1 分 

第12题

在C程序中,逗号运算符的优先级最低。

共 1 分 

第13题

scanf函数的一般格式为:scanf(格式控制,地址表列)。

共 1 分 

第14题

若有定义和语句:

1
2
3
4
int a;
char c;
float f;
scanf("%d,%c,%f",&a,&c,&f);

若通过键盘输入:10,A,12.5,则a=10,c='A',f=12.5。

共 1 分 

第15题

运算符的级别由高向低依次为赋值运算符->关系运算符->算术运算符->逻辑运算符->!。

共 1 分 

第16题

已知a=3,b=4,c=5,则逻辑表达式!(x=a) && (y=b) && 0的值为0。

共 1 分 

第17题

数组整体可以参加各种数学运算,数组元素也可以参加各种数学运算。

共 1 分 

第18题

for循环的三个表达式中间用分号相分隔,并且不能省略。

共 1 分 

第19题

数组的首地址不一定是第一个数组元素的地址。

共 1 分 

第20题

C语言中引用数组元素的方括号可以用花括号代替。

共 1 分 

第21题

数组整体不参加数据处理(即不参加各种运算),参加数据处理的只能是数组的元素。

共 1 分 

第22题

在主调函数中,必须要对被调用函数进行类型说明,否则在编译时会出现错误。

共 1 分 

第23题

如果被调用函数的定义出现在主调函数之前,可以不必加以声明。

共 1 分 

第24题

当全局变量与局部变量同名时,局部变量起作用。

共 1 分 

第25题

宏命令#define无论在文件中何处定义,其有效范围在源文件中都有效。

共 1 分 

第26题

C语言源程序文件的后缀是.c,经过编译之后,生成后缀为.obj的_____文件,经连接生成后缀.exe的可执行文件。

共 1 分 

第27题

设有int x=11,则表达式(x++ * 1/3)的值是_____。

共 1 分 

第28题

变量的本质是代表内存中的一个存储单元的_____。

共 1 分 

第29题

表达式a+=b相当于表达式_____。

共 1 分 

第30题

执行下列语句的结果是_____。

1
2
3
a=3;
printf("%d,",++a);
printf("%d",a++);
共 1 分 

第31题

设a,b,t为整型变量,初值为a=7,b=9,执行完语句t=(a>b)?a:b后,t的值是_____。

共 1 分 

第32题

执行下列语句后,b的十进制值是_____。

1
2
3
int x=240,y=15,b;
char z='A';
b=((x && y) && (z<'a'));
共 1 分 

第33题

已知a=10,b=15,c=1,d=2,e=0,则表达式a*b&&c的值为_____。

共 1 分 

第34题

程序段:

1
2
3
int k=10;
while(k=0)
    k=k-1;

循环体语句执行_____次。

共 1 分 

第35题

C语言中,数组名是一个不可变的_____量,不能对它进行加减和赋值运算。

共 1 分 

第36题

若有以下数组a,数组元素:a[0]~a[9],其值为9 4 12 8 2 10 7 5 1 3数组元素a[3]的值是_____。

共 1 分 

第37题

若在程序中用到"strlen()"函数时,应在程序开头写上包含命令#include "_____"。

共 1 分 

第38题

预处理命令行都必须以_____号开始。

共 1 分 

第39题

将函数funl的入口地址赋给指针变量p的语句是_____。

共 1 分 

第40题

设有以下共用体类型说明和变量定义,则变量d在内存所占字节数是_____。

1
2
3
4
5
6
7
8
union stud
{
    short int num;
    char name[8];
    float score[3];
    double ave;
}
d,stu[3];
共 1 分 

第41题

功能:根据整型形参m,计算如下公式的值:y=1/2+1/4+1/6+...+1/2m。

例如:若m=9,则应输出:1.414484。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
#include<stdio.h>
double fun(int m)
{
    double y=0;
    int i;
    for(_____1_____)
    {
        _____2_____
    }
    _____3_____
}
void main()
{
    int n;
    void TestFunc();
    printf("Enter n:");
    scanf("%d",&n);
    printf("\nThe result is %1f\n",fun(n));
    TestFunc();
}
void TestFunc()
{
    FILE *IN,*OUT;
    int s,i;
    int t;
    double o;
    IN=fopen("in.dat","r");
    if(IN==NULL)
    {
        printf("Read File Error");
    }
    OUT=fopen("out.dat","w");
    if(OUT==NULL)
    {
        printf("Write File Error");
    }
    for(i=0;i<5;i++)
    {
        fscanf(IN,"%d",&t);
        o=fun(t);
        fprintf(OUT,"%lf\n",o);
    }
    fclose(IN);
    fclose(OUT);
}
共 30 分 

第42题

功能:请编一个函数void fun(int tt[M][N],int pp[N]),tt指向一个M行N列的二维数组,求出二维数组每列中最大元素,并依次放入pp所指一维数组中,二维数组中的数已在主函数中赋予。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
#include<conio.h>
#include<stdio.h>
#define M 3
#define N 4
void fun(int tt[M][N],int pp[N])
{
    int i,j;
    for(_____1_____)
    {
        _____2_____
        for(_____3_____)
            if(_____4_____)
                _____5_____
    }
}
void main()
{
    int t[M][N]={{22,45,56,30},
    {19,33,45,38},
    {20,22,66,40}};
    void NONO();
    int p[N],i,j,k;
    printf("The original data is:\n");
    for(i=0;i<M;i++)
    {
        for(j=0;j<N;j++)
            printf("%6d",t[i][j]);
        printf("\n");
    }
    fun(t,p);
    printf("\nThe result is:\n");
    for(k=0;k<N;k++)
        printf("%4d",p[k]);
    printf("\n");
    NONO();
}
void NONO()
{
    int i,j, array[3][4],p[4];
    FILE *rf,*wf;
    rf = fopen("in.dat","r");
    wf = fopen("out.dat","w");
    for(i=0;i<3;i++)
        for(j=0;j<4;j++)
            fscanf(rf,"%d",&array[i][j]);
    fun(array,p);
    for(j=0;j<4;j++)
    {
        fprintf(wf,"%7d",p[j]);
        fprintf(wf,"\n");
    }
    fclose(rf);
    fclose(wf);
}
共 30 分