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

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


第1题

C语言源程序文件经过C编译程序编译后生成的目标文件的后缀为( )。

共 1 分 

第2题

若以下变量均是整型,且num=sum=7;则计算表达式sum=num++,sum++,++num后sum的值为( )。

共 1 分 

第3题

已知字符'A'的ASCⅡ代码值是65,字符变量c1的值是'A',c2的值是'D'。执行语句printf("%d,%d",c1,c2-2);后,输出结果是( )。

共 1 分 

第4题

1
2
3
4
5
6
7
8
9
10
11
void main()
{
    int x=1,a=0,b=0;
    switch (x)
    {
        case  0: b++;
        case  1: a++;
        case  2: a++;b++;
    }
    printf("a=%d,b=%d",a,b);
}

该程序的输出结果是( )

共 1 分 

第5题

下列程序的输出为( )。

1
2
3
4
5
6
void main()
{
    int y=10;
    while(y--);
    printf("y=%d\n",y);
}
共 1 分 

第6题

int a[10];合法的数组元素的最小下标值为( )。

共 1 分 

第7题

下述程序的输出结果是( )。

1
2
3
4
5
6
7
8
9
void prt(int *x)
{
    printf("%d",++*x);
}
main()
{
    int y=30;
    prt(&y);
}
共 1 分 

第8题

file1.c中有命令,#include <file2.c>,若file2.c中有全局静态变量a,则( )。

共 1 分 

第9题

设有如下函数定义:

1
2
3
4
5
6
int f(char *s)
{
    char *p=s;
    while(*p!='\0') p++;
    return (p-s);
}

如果在主程序中用下面的语句调用上述函数,则输出结果是( )。

1
printf("%d\n",f("goodbye!"));
共 1 分 

第10题

下面说法中错误的是( )。

共 1 分 

第11题

C语言本身没有输入输出语句。

共 1 分 

第12题

关系运算符 <= 与 == 的优先级相同。

共 1 分 

第13题

scanf函数的一般格式为:scanf(格式控制字符串,输入表列);。

共 1 分 

第14题

C语言本身不提供输入输出语句,输入和输出操作是由函数来实现的。


共 1 分 

第15题

条件表达式x?'a':'b'中,若x=0时,表达式的值为b。

共 1 分 

第16题

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

共 1 分 

第17题

引用数组元素时,下标可以是整型表达式或整型常量。

共 1 分 

第18题

do-while循环由do开始,while结束,在while(表达式)后面不能加分号。

共 1 分 

第19题

C语言数组的下标可以从-1开始。

共 1 分 

第20题

给数组赋初值时,初值的个数可以小于所定义的元素的个数。

共 1 分 

第21题

定义一维数组的形式为:类型说明数组名[表达式],其中表达式可以是正整型常量表达式、字符常量表达式。

共 1 分 

第22题

若在程序某处定义了某全局变量,但不是程序中的所有函数中都可使用它。

共 1 分 

第23题

C语言所有函数都是外部函数。

共 1 分 

第24题

在C语言中,程序总是从第一个函数开始执行,最后一个函数结束。

共 1 分 

第25题

在定义宏时,在宏名与带参数的括弧之间不应加空格。

共 1 分 

第26题

C语言中,_____是程序的基本组成部分。

共 1 分 

第27题

设(k=a=5,b=3,a*b),则表达式的值为_____。

共 1 分 

第28题

已知a=13,b=6,a%b的十进制数值为_____。

共 1 分 

第29题

若有以下定义,则计算表达式y+=y-=m*=y后的y值是_____。

1
int m=5,y=2;
共 1 分 

第30题

执行下面两个语句,输出的结果是_____。

1
2
char c1=97,c2=98;
printf("%d %c",c1,c2);
共 1 分 

第31题

当a=1,b=2,c=3时,执行以下程序段后a=_____。

1
2
3
4
5
6
if (a>c);
{
    b=a;
    a=c;
    c=b;
}
共 1 分 

第32题

当a=1,b=2,c=3时,执行以下程序段后b=_____。

1
2
3
4
5
6
if (a>c)
{
    b=a;
    a=c;
    c=b;
}
共 1 分 

第33题

1
int x=2,y=3,z=4;

则表达式x+(y>!z)的值为_____。

共 1 分 

第34题

设x和y均为int型变量,则以下for循环中的scanf语句最多可执行的次数是_____。

1
2
3
4
for (x=0,y=0;y!=123&&x<3;x++)
{
    scanf ("%d",&y);
}
共 1 分 

第35题

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

其中a[1][2]的值为_____。

共 1 分 

第36题

字符串比较的库函数是_____,只写函数名即可。

共 1 分 

第37题

函数不可以进行嵌套定义,但可以进行嵌套_____。

共 1 分 

第38题

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

共 1 分 

第39题

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

共 1 分 

第40题

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

1
2
3
4
5
6
7
union stud
{
    char num[6];
    float s[4];
    double ave;
}
a,*p;
共 1 分 

第41题

功能:用函数将第2个串连接到第1个串之后,不允许使用strcat函数。

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
#include<stdio.h>
void len_cat(char c1[],char c2[])
{
    int i,j;
    for(_____1_____);
    for(_____2_____)
    {
        _____3_____
    }
    _____4_____
}
void main()
{
    char s1[80],s2[40];
    void TestFunc();
    gets(s1);gets(s2);
    len_cat(s1,s2);
    printf("string is: %s\n",s1);
    TestFunc();
}
void TestFunc()
{
    FILE *IN,*OUT;
    int m,n;
    int i[2][200];
    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(n=0;n<2;n++)
        fscanf(IN,"%s",i[n]);
    len_cat(i[0],i[1]);
    fprintf(OUT,"%s\n",i[0]);
    fclose(IN);
    fclose(OUT);
}
共 30 分 

第42题

功能:编写函数fun其功能是:根据整型形参m,计算如下公式的值:y=1/2!+1/4!+...+1/m!(m是偶数)

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
#include<stdio.h>
double fun(int m)
{
    _____1_____
    int i,j;
    double s=1;
    for(_____2_____)
    {
        for(_____3_____)
            _____4_____
        _____5_____
    }
    _____6_____
}
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 t;
    double o;
    int c;
    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(c=1;c<=5;c++)
    {
        fscanf(IN,"%d",&t);
        o=fun(t);
        fprintf(OUT,"%lf\n",o);
    }
    fclose(IN);
    fclose(OUT);
}


共 30 分