最新文章专题视频专题问答1问答10问答100问答1000问答2000关键字专题1关键字专题50关键字专题500关键字专题1500TAG最新视频文章推荐1 推荐3 推荐5 推荐7 推荐9 推荐11 推荐13 推荐15 推荐17 推荐19 推荐21 推荐23 推荐25 推荐27 推荐29 推荐31 推荐33 推荐35 推荐37视频文章20视频文章30视频文章40视频文章50视频文章60 视频文章70视频文章80视频文章90视频文章100视频文章120视频文章140 视频2关键字专题关键字专题tag2tag3文章专题文章专题2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章专题3
当前位置: 首页 - 正文

四川大学C语言期末试题(最新版)

来源:动视网 责编:小OO 时间:2025-09-26 00:08:58
文档

四川大学C语言期末试题(最新版)

一、单项选择题(在每小题的四个备选答案中,选出一个正确的答案,并将其号码填在题干后的括号内。每小题1分,共16分)1.对于一个正常运行的C程序,以下叙述中正确的是A。A)程序的执行总是从main函数开始,在main函数结束B)程序的执行是从程序的第一个函数开始,在main函数结束C)程序的执行是从main函数开始,在程序的最后一个函数中结束D)程序的执行是从程序的第一个函数开始,在程序的最后一个函数中结束2.按照C语言规定的用户标识符命名规则,不能出现在标识符中的是B。A)字母B)减号C)数字
推荐度:
导读一、单项选择题(在每小题的四个备选答案中,选出一个正确的答案,并将其号码填在题干后的括号内。每小题1分,共16分)1.对于一个正常运行的C程序,以下叙述中正确的是A。A)程序的执行总是从main函数开始,在main函数结束B)程序的执行是从程序的第一个函数开始,在main函数结束C)程序的执行是从main函数开始,在程序的最后一个函数中结束D)程序的执行是从程序的第一个函数开始,在程序的最后一个函数中结束2.按照C语言规定的用户标识符命名规则,不能出现在标识符中的是B。A)字母B)减号C)数字
一、单项选择题(在每小题的四个备选答案中,选出一个正确的答案,并将其号码填在题干后的括号内。每小题1分,共16分)

1.对于一个正常运行的C程序,以下叙述中正确的是A 。

A)程序的执行总是从main函数开始,在main函数结束

B)程序的执行是从程序的第一个函数开始,在main函数结束

C)程序的执行是从main函数开始,在程序的最后一个函数中结束

D)程序的执行是从程序的第一个函数开始,在程序的最后一个函数中结束

2.按照C语言规定的用户标识符命名规则,不能出现在标识符中的是B  。

A)字母     B)减号      C)数字字符     D)下划线

3.下列定义变量的语句中错误的是 C 。

A)int _if;         B)double If;        C)char forch     D)float x&;

4.以下选项中可作为C语言合法常量的是  A 。

A)-80         B)-0819            C)-1el.0             D)-168.0e

5.以下能正确定义且赋初值的语句是   。

A)int a=b=16;          B)char c=97;        

C)float x=x+1.8;         D)double x=1.23E2.0

6.设有定义:“int a=1,b=6,c=8;”,则以下选项中值为0的表达式是   。

A)(!a==1)&&(!b==0)        B)(a    C)a && b                 D)a || b

7.下列叙述正确的是 D  。

A)break语句只能用于switch语句

B)break语句只能用于循环语句

C)break语句必须与switch语句中的case配对

D)break语句可用于switch语句和循环语句中

8.在以下给出的表达式中,与while(E)中的“(E)”不等价的表达式是  C 。

A)(E!=0)         B)(E>0 || E<0)        C)(E==0)         D)(!E==0)

9.以下数组定义中错误的是 B  。

A)int x[][3]={0,1,2,3};

B)int x[2][3]={{1,2}, {3,4}, {5,6}};

C)int x[][3]={{1,2,3},{4,5,6}};    

D)int x[2][3]= {1,2,3,4,5,6};

10.在C语言中,函数返回值的类型最终取决于   。

A)函数定义时的函数首部所说明的函数类型

B)return语句中表达式值的类型

C)调用函数时的实参的类型

D)函数定义时形参的类型

11.设已有定义:“float a;”,则以下对指针变量p进行定义且赋初值的语句中正确的是   。

A)float *p = 1068;     B)int *p= (int)a;

C)float p=&a;         D)float *p=&a;

12.若有说明语句:“float *p,a;”,则能通过scanf语句正确给输入项读入数据的程序段是   。

A)*p=&a; scanf("%f",p);             B)*p=&a; scanf("%lf",p);

C)p=&a; scanf("%f",*p);             D)p=&a; scanf("%f",p);

13.若有以下说明和定义:

union dt

{

    short int a;

    char b;

    double c;

} data;

以下叙述中错误的是   。

A) data的每个成员起始地址都相同

B)变量data所占的内存字节数与成员c所占字节数相等

C)程序段“data.a=6;printf("%f\\n ",data.c);”输出结果为6.000000

D) data可以作为函数的实参

14.以下叙述中正确的是   。

A)在源文件的一行上可以有多条预处理命令

B)宏名必须用大写字母表示

C)宏替换不占用程序的运行时间

D)前面都是错语的

15.设fp为指向某二进制文件的指针,且已读到此文件末尾,则函数feof(fp)的返回值为   。

A)EOF         B)1        C)0         D)NULL

16.以下叙述中错误的是   。

A)改变函数形参的值,不会改变对应实参的值

B)函数可以返回地址值

C)可以给指针变量赋一个整数作为地址值

D)函数的形参可为指针类型

二、填空题(第小题2分,共14分)

1.已定义“char ch=6;int i=6,j;”,执行“j=ch || i++”以后,i的值为   。

2.设有定义语句:“int a[][8]={{0},{1},{2}};”,则数组元素a[1][2]的值为   。

3.已知int a=3,a的地址为1008,则&a=     。

4.设有定义:“FILE *fp;”,请将以下打开文件的语句补充完整,以便可以向文本文件readme.txt的最后续写内容。

fp = fopen)("readme.txt", "   ");

5.已有定义:“int *p;”,请写出完整的语句,利用malloc函数使p指向一个整型的动态存储单元            。

6.声明外部变量的关键字是  extrun     。

7.  int    类型的变量的值只能是所指定的若干名字之一。

三、阅读下面各程序,写出运行结果(每小题5分,共30分)

1.有以下程序:

#include

int main(void)

{

    char al = 'M', a2 = 'm', a3 = 'u';

    printf("%c\\n", (al, a2, a3));

    return 0;

}

运行结果是:

2.有以下程序:

#include

int main(void)

{

    int k = 6;

    while (--k) printf("%d", k -= 4);

    return 0;

}

运行结果是:

3.有以下程序:

#include

int main(void)

{

    int i = -1;

    do printf("%d", i); while (++i);

    printf("%d\\n", i);

    return 0;

}

运行结果是:

4.有以下程序:

#include

double fun1(double a) { return a * a; }

int fun2(double x, double y)

{

    double a = fun1(x), b = fun1(y);

    return a + b;

}

int main(void)

{

    int w = fun2(1.3, 2.0);

    printf("%d\\n", w);

    return 0;

}

运行结果是:

5.有以下程序:

#include

int f(int n)

{

    if (n == 1) return 1;

    else return n + f(n - 1);

}

int main(void)

{

    printf("%d\\n", f(5));

    return 0;

}

运行结果是:

6.有以下程序:

#include

void point(char *p){ p += 5; }

int main(void)

{

    char b[] = {'a', 'b', 'c', 'd', 'f', 'g'}, *p = b;

    point(p);

    printf("%c\\n", *p);

    return 0;

}

运行结果是:

四、程序填空题(每空2分,共12分)

1.以下程序的功能是:输出a、b、c三个变量中的最小值。将程序补充完整。

#include

int main(void)

{

    int a, b, c, t1, t;

    scanf("%d%d%d", &a, &b, &c);

    t = a < b ?  [1]  ;

    t = c < t ?  [2]  ;

    printf("%d\\n", t);

    return 0;

}

2.以下程序调用invert函数按逆序重新放置a数组中元素的值。a数组中元素的值在main函数中读入。将程序补充完整。

#include

#define N 10

void invert(int s[], int i, int j)

{

if (i < j)

    {

        int t= s[i];

        s[i] = s[j];

        s[j] = t;

        invert(s,  [3]  , j-1);

    }

}

int main(void)

{

    int a[N], i;

for (i = 0; i < N; i++)

        scanf("%d",   [4]  );        /* 输入a[i] *//

    invert(a, 0, N - 1);

for (i = 0; i < N; i++)

        printf("%d ", a[i]);

    printf("\\n");

    return 0;

}

3.下面的程序通过函数average计算数组中各元素的平均值,将程序补充完整。

#include

float average(int a[], int n)

{

    int i;

    float s = 0;

for (i = 0; i < n; i++)

        s = s +   [5]  ;

    return s /   [6]  ;

}

int main(void)

{

    int i, a[5] = {2, 4, 6, 8, 10};

    float mean;

    mean = average(a, 5);

    printf("mean=%f\\n", mean);

    return 0;

}

五、编程题(每小题14分,共28分)

1.输入一行字符,统计其中有多少个单词,单词之间用空格分隔开。

2.编程实现从键盘上输入一个字符串,把此字符串中的小写字母转换成大写字母,输出到文件test.txt中,然后从该文件读出字符串并显示出来。

文档

四川大学C语言期末试题(最新版)

一、单项选择题(在每小题的四个备选答案中,选出一个正确的答案,并将其号码填在题干后的括号内。每小题1分,共16分)1.对于一个正常运行的C程序,以下叙述中正确的是A。A)程序的执行总是从main函数开始,在main函数结束B)程序的执行是从程序的第一个函数开始,在main函数结束C)程序的执行是从main函数开始,在程序的最后一个函数中结束D)程序的执行是从程序的第一个函数开始,在程序的最后一个函数中结束2.按照C语言规定的用户标识符命名规则,不能出现在标识符中的是B。A)字母B)减号C)数字
推荐度:
  • 热门焦点

最新推荐

猜你喜欢

热门推荐

专题
Top