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

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


第1题

以下叙述正确的是( )。

共 1 分 

第2题

若int类型数据占两个字节,则下列语句的输出为( )。

1
2
int k=-1;
printf("%d,%u\n",k,k);
共 1 分 

第3题

下列程序段的输出结果为( )。

1
2
int x=3,y=2;
printf("%d",(x-=y,x*=y+8/5));
共 1 分 

第4题

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

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
void main()
{
    int i=2,p;
    p=f(i,i+1);
    printf("%d",p);
}
int f(int a,int b)
{
    int c;
    c=a;
    if(a>b)
        c=1;
    else if(a==b)
        c=0;
    else c=-1;
    return  c;
}
共 1 分 

第5题

以下程序段中,能够正确地执行循环的是( )。

共 1 分 

第6题

在C语言中,一维数组的定义方式为:类型说明符 数组名( )。

共 1 分 

第7题

以下正确的说法是( )。

共 1 分 

第8题

在#include命令中,文件名可用双引号或尖括号括起来,对于二者的下列说法中正确的是( )。

共 1 分 

第9题

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

1
2
3
4
5
void main()
{
    char str[]="ABCD",*p=str;
    printf("%d\n",*(p+4));
}
共 1 分 

第10题

C语言中,定义结构体的保留字是( )。

共 1 分 

第11题

一个C程序的执行是从本程序的main函数开始,到本程序文件的最后一个函数结束。

共 1 分 

第12题

#define和printf都不是C语句。

共 1 分 

第13题

char c[6]="abcde"; printf("%-3s", c)中的"-"表示输出的字符串是左对齐。

共 1 分 

第14题

char c[6]="abcde"; printf("%3s", c)表示输出的字段的宽度,如果被输出的数据的位数大于3,按实际位数输出。

共 1 分 

第15题

已知a=3,b=4,c=5,则逻辑表达式a+b>c && b==c值为0。

共 1 分 

第16题

求解表达式max=(a>b)?a:b的步骤是:先将表达式(a>b)赋给max,再处理表达式。

共 1 分 

第17题

continue能够终止当前进行的多层循环。

共 1 分 

第18题

for循环可以用于循环次数不确定而给出循环条件的情况下。

共 1 分 

第19题

定义int x[5],n;则x=x+n;或x++;都是不正确的。

共 1 分 

第20题

puts函数用来输出一个字符。

共 1 分 

第21题

若定义int array[5], *p;则赋值语句p=array;是正确的。

共 1 分 

第22题

在C语言中,函数可以嵌套定义,但不能嵌套调用。

共 1 分 

第23题

在C语言中,所有的函数均可相互调用。

共 1 分 

第24题

C语言的函数可以嵌套定义。

共 1 分 

第25题

C程序中有调用关系的所有函数必须放在同一个源程序文件中。

共 1 分 

第26题

C语言的三种基本结构是_____结构、选择结构、循环结构。

共 1 分 

第27题

设a、b、c为整型数,且a=2,b=3,c=4,则执行完以下语句:a*=16+(b++)-(++c);后a的值是_____。

共 1 分 

第28题

已知i=5.6,写出语句a=(int)i;执行后变量i的值是_____。

共 1 分 

第29题

已知x=3,y=2,则表达式x*=y+8的值为_____。

共 1 分 

第30题

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

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

第31题

假设变量a、b均为整型,表达式(a=5,b=2,a>b?a++:b++,a+b)的值是_____。

共 1 分 

第32题

C语言表达式!(3<6)||(4<9)的值是_____。

共 1 分 

第33题

设x=62,表达式x>=60&&x<70||x==1的值为_____。

共 1 分 

第34题

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

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

第35题

执行语句char str[81]="abcdef";后,字符串str结束标志存储在str[_____](在括号内填写下标值)中。

共 1 分 

第36题

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

共 1 分 

第37题

函数调用时的实参和形参之间的数据是单向的_____传递。

共 1 分 

第38题

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

共 1 分 

第39题

执行下列语句后,*(p+1)的值是_____。

1
2
char s[3]="ab",*p;
p=s;
共 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=sin(m)*10。

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

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
#include<stdio.h>
#include<math.h>
double fun(int m)
{
    double y;
    _____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题

功能:求给定正整数m以内的素数之和。

例如:当m=20时,函数值为77。

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>
int fun(int m)
{
    int i,k,s=0;
    for(_____1_____)
    {
        for(_____2_____)
            if(_____3_____)
                break;
        if(_____4_____)
            _____5_____
    }
    _____6_____
}
void main()
{
    int y;
    void TestFunc();
    y=fun(20);
    printf("y=%d\n",y);
    TestFunc();
}
void TestFunc()
{
    FILE *IN,*OUT;
    int iIN,iOUT,i;
    IN=fopen("in.dat","r");
    if(IN==NULL)
    {
        printf("Please Verify The Currernt Dir..It May Be Changed");
    }
    OUT=fopen("out.dat","w");
    if(OUT==NULL)
    {
        printf("Please Verify The Current Dir.. It May Be Changed");
    }
    for(i=0;i<5;i++)
    {
        fscanf(IN,"%d",&iIN);
        iOUT=fun(iIN);
        fprintf(OUT,"%d\n",iOUT);
    }
    fclose(IN);
    fclose(OUT);
}
共 30 分