端木老师 发表于 2017-10-16 18:49:01

《C程序设计》东师17秋在线作业12


C程序设计17秋在线作业1

一、单选题:【20道,总分:60分】

1.下程序运行后,main(    ) { char *s="abcde"; s+=2; printf("%ld\n",s); } 输出结果是(    )          (满分:3)
    A. cde
    B. 字符c的ASCII码值
    C. 字符c的地址
    D. 出错
2.以下程序: main(    ){char s1="country",s2="side";int i=0,j=0;   while(s1!='\0')i++;    while(s2!='\0')s1=s2;s1=0; printf("%s\n",s1); }的输出结果为(    )          (满分:3)
    A. side
    B. country
    C. sidetry
    D. countryside
3.C语言提供的合法的数据类型关键字是 (    )          (满分:3)
    A. Double
    B. short
    C. integer
    D. Char
4.有以下程序段: main(    ){int a=5,*b,**c;   c=&b; b=&a;……}程序在执行了c=&b;b=&a;语句后,表达式**c的值是(    )          (满分:3)
    A. 变量a的地址
    B. 变量b的地址
    C. 变量a的值
    D. 变量b的值
5.下面选项中正确的赋值语句是(设 char a,*p=a;) (    )          (满分:3)
    A. p="abcd";
    B. a="abcd";
    C. *p="abcd";
    D. *a="abcd";
6.有以下程序    main(    ) { int a={1,2,3,4,5,6,7,8,9,10}, *p=&a, *q=p+2; printf("%d\n", *p + *q); }   程序运行后的输出结果是(    )          (满分:3)
    A. 16
    B. 10
    C. 8
    D. 6
7.执行下面程序后:main(    ) {int a; printf("%d\n",(a=3*5,a*4,a+5));}a的值是(    )          (满分:3)
    A. 65
    B. 20
    C. 15
    D. 10
8.表达式:10!=9的值是(    )          (满分:3)
    A. true
    B. 非零值
    C. 0
    D. 1
9.设有如下定义 char x[]={“abcdefg”};char y[]={‘a’,’b’,’c’,’d’,’e’,’f’,’g’} ; 则正确的叙述为(    )          (满分:3)
    A. 数组x和y等价
    B. 数组x和y的长度相同
    C. 数组x的长度大于数组y的长度
    D. 数组x的长度小于数组y的长度
10.有如下定义,struct{int n;   char a;   float m;}x; 变量x占的字节数是(    )          (满分:3)
    A. 10
    B. 8
    C. 14
    D. 16
11.若有以下调用语句,                main(    )       { …         int a,n;          …         fun(n, &a);      }则不正确的fun函数的首部是(    )          (满分:3)
    A. void fun(int m, int x[])
    B. void fun(int s, int h)
    C. void fun(int p, int *s)
    D. void fun(int n, int a)
12.C语言的编译系统对宏命令的处理是(    )          (满分:3)
    A. 在程序运行时进行
    B. 在程序连接时进行的
    C. 和C程序中的其它语句同时进行编译
    D. 在对源程序正式编译之前进行的
13.以下叙述中不正确的是(    )          (满分:3)
    A. 在不同的函数中可以使用相同名字的变量
    B. 函数中的形式参数是局部变量
    C. 在一个函数内定义的变量只在本函数范围内有效
    D. 在一个函数内的复合语句中定义的变量在本函数范围内有效
14.在一个C程序中 (    )          (满分:3)
    A. main函数必须出现在所有函数之前
    B. main函数可以在任何地方出现
    C. main函数必须出现在所有函数之后
    D. main函数必须出现在固定位置
15.下列程序把数组元素中的最大值放入a中,main(    ){ int a={6,8,3,1,5,9,4,2,7,0};for(i=0;i<10;i++,p++)   if(    ) *a=*p;printf(“%d\n”,*a);} 则在if语句中的条件表达式应该是(    )          (满分:3)
    A. p>a
    B. *p>a
    C. *p>*a
    D. *p>*a
16.以下程序    main(    )   {char s1=“abc”,s2=“123”;      if(strcmp(s1,s2)>0)printf(“%s\n”,s1);elseprintf(“%s\n”,s2);}的输出结果是(    )          (满分:3)
    A. abc
    B. 123
    C. abc123
    D. 123abc
17.若有下面的变量定义,   int i,a,*p;以下语句中合法的是(    )          (满分:3)
    A. p=a+2;
    B. p=a;
    C. p=a+2;
    D. p=&(i+2);
18.C语言中用于结构化程序设计的三种基本结构是(    )          (满分:3)
    A. 顺序结构、选择结构、循环结构
    B. if、switch、break
    C. for、while、do-while
    D. if、for、continue
19.已知大写字母A的ASCII码值是65,小写字母a的ASCII码是97,则用八进制表示的字符常量‘\101’是(    )          (满分:3)
    A. 字符A
    B. 字符a
    C. 字符e
    D. 非法的常量
20.假定int类型变量占用两个字节,其有定义:int x={0,2,4};,则数组x在内存中所占字节数是(    )          (满分:3)
    A. 3
    B. 6
    C. 10
    D. 20
二、判断题:【20道,总分:40分】

1.C语言中有逻辑类型但没有集合类型。          (满分:2)
    A. 错误
    B. 正确
2.有以下程序段:int m=0;while(m==1)m++;while循环体执行的次数是无限次。          (满分:2)
    A. 错误
    B. 正确
3.switch语句通常用在分支较多的情况,if语句通常用于分支较少的情况。          (满分:2)
    A. 错误
    B. 正确
4.C语言中只包含一元运算符和二元运算符。          (满分:2)
    A. 错误
    B. 正确
5.C语言是函数式的语言。          (满分:2)
    A. 错误
    B. 正确
6.函数strcmp(“AShhjjj”,“ASHHJJJ”)的返回值是0。          (满分:2)
    A. 错误
    B. 正确
7.C语言中最简单的数据类型包括整型,实型和字符型。          (满分:2)
    A. 错误
    B. 正确
8.宏定义可分为带参数的宏定义和不带参数的宏定义两类。          (满分:2)
    A. 错误
    B. 正确
9.表达式y=(13>14?15:16)的值为15。          (满分:2)
    A. 错误
    B. 正确
10.函数strlen("ASDFG\n")的值是7。          (满分:2)
    A. 错误
    B. 正确
11.在C语言中对文件操作必须先关闭当前文件,然后再打开一个新文件。          (满分:2)
    A. 错误
    B. 正确
12.getchar(    )函数没有参数。          (满分:2)
    A. 错误
    B. 正确
13.若有定义:int a;则scanf(“%d",a);可以给变量a赋值。          (满分:2)
    A. 错误
    B. 正确
14.设有字符数组字义char array[]=”China”;则数组所占的存贮空间为5个字节。          (满分:2)
    A. 错误
    B. 正确
15.在对某一函数进行多次调用时,系统会对相应的自动变量重新分配存储单元。          (满分:2)
    A. 错误
    B. 正确
16.switch选择结构中必须有default子句。          (满分:2)
    A. 错误
    B. 正确
17.C语言的常量在程序运行过程中不可以重新赋值。          (满分:2)
    A. 错误
    B. 正确
18.空类型是C语言的一种数据类型。          (满分:2)
    A. 错误
    B. 正确
19.C语言中的文件都是用ASCII码进行存贮的。          (满分:2)
    A. 错误
    B. 正确
20.设有变量定义char s[]=”hello”,则strlen(s)的返回值为6。          (满分:2)
    A. 错误
    B. 正确
C程序设计17秋在线作业2
一、单选题:【20道,总分:60分】

1.以下程序: #define ADD(x)x*x    main(    ) {int a=4,b=6,c=7,d=ADD(a+b)*c;   printf("d=%d",d); } 的输出结果为(    )          (满分:3)
    A. d=70
    B. d=80
    C. d=140
    D. d=700
2.有如下函数调用语句: func(rec1,rec2+rec3,(rec4,rec5));该函数调用语句中,含有的实参个数是(    )          (满分:3)
    A. 3
    B. 4
    C. 5
    D. 有语法错
3.设a为整型变量,初值为12,执行完语句 a+=a-=a*a后,a的值是(    )          (满分:3)
    A. 552
    B. 144
    C. 264
    D. -264
4.表达式:10!=9的值是(    )          (满分:3)
    A. true
    B. 非零值
    C. 0
    D. 1
5.若fp是指向某文件的指针,且已读到文件末尾,则库函数feof(fp)的返回值是(    )          (满分:3)
    A. EOF
    B. -1
    C. 非零值
    D. NULL
6.若有下面的变量定义,   int i,a,*p;以下语句中合法的是(    )          (满分:3)
    A. p=a+2;
    B. p=a;
    C. p=a+2;
    D. p=&(i+2);
7.以下程序#define P 3 #define F(x) P*x*x main(    ) { printf("%d\n",F(3+5)); }   的输出结果是(    )          (满分:3)
    A. 192
    B. 29
    C. 25
    D. 编译出错
8.已有定义:int x=3,y=4,z=5;,则表达式!(x+y)+z-1 && y+z/2的值是(    )          (满分:3)
    A. 6
    B. 0
    C. 2
    D. 1
9.有以下程序 main(    ) { char c1=’1’,c2=’2’; c1=getchar(    ); c2=getchar(    ); putchar(c1); putchar(c2); } 当运行时输入:a 后,以下叙述正确的是(    )          (满分:3)
    A. 变量c1被赋予字符a,c2被赋予回车符
    B. 程序将等待用户输入第2个字符
    C. 变量c1被赋予字符a,c2中仍是原有字符2
    D. 变量c1被赋予字符a,c2中将无确定值
10.已知int i=5; 执行语句i+=++i;后,i的值是(    )          (满分:3)
    A. 10
    B. 11
    C. 12
    D. 以上都不对
11.t为int类型,进人下面的循环之前,t的值为0 while( t=l ) { …… } 则以下叙述中正确的是 (    )          (满分:3)
    A. 循环控制表达式的值为0
    B. 循环控制表达式的值为1
    C. 循环控制表达式不合法
    D. 以上说法都不对
12.表达式0x13&0x17的值是(    )          (满分:3)
    A. 0x17
    B. 0x13
    C. 0xf8
    D. 0xec
13.以下程序: #define A 3#define B(a)(A+1)*amain(    ){ int x;x=3*A+B(7);printf("x=%d\n",x);}的输出结果为(    )          (满分:3)
    A. x=93
    B. x=37
    C. x=60
    D. x=90
14.设有如下定义 char x[]={“abcdefg”};char y[]={‘a’,’b’,’c’,’d’,’e’,’f’,’g’} ; 则正确的叙述为(    )          (满分:3)
    A. 数组x和y等价
    B. 数组x和y的长度相同
    C. 数组x的长度大于数组y的长度
    D. 数组x的长度小于数组y的长度
15.已知字母A的ASCⅡ码为十进制的65,下面程序:main(    ) { char ch1,ch2; ch1='A'+'5'-'3'; ch2='A'+'6'-'3'; printf("%d,%c\n",ch1,ch2);}的输出是(    )          (满分:3)
    A. 67,D
    B. B,C
    C. C,D
    D. 不确定的值
16.若要打开A盘上user子目录下名为abc.txt的文本文件进行读、写操作,下面符合此要求的函数调用是(    )          (满分:3)
    A. fopen("A:\user\abc.txt","r")
    B. fopen("A:\\user\\abc.txt","r+")
    C. fopen("A:\user\abc.txt","rb")
    D. fopen("A:\\user\\abc.txt","w")
17.下列不能实现赋值操作的是(    )          (满分:3)
    A. a++
    B. a== b
    C. a+=b
    D. a=1
18.设有定义:long x=-123456L; 则以下能够正确输出变量x值的语句是(    )          (满分:3)
    A. printf(“x=%d\n”,x)
    B. printf(“x=%ld\n”,x)
    C. printf(“x=%8dl\n”,x)
    D. printf(“x=%LD\n”,x);
19.用C语言编写的代码程序(    )          (满分:3)
    A. 可立即执行
    B. 是一个源程序
    C. 经过编译即可执行
    D. 经过编译解释才能执行
20.设有如下定义: int x=10,y=3,z;则语句printf("%d\n",z=(x%y,x/y)); 的输出结果是(    )          (满分:3)
    A. 1
    B. 0
    C. 4
    D. 3
二、判断题:【20道,总分:40分】

1.C程序中,一行上可以写多个语句。          (满分:2)
    A. 错误
    B. 正确
2.在一个函数内定义的变量称为局部变量。          (满分:2)
    A. 错误
    B. 正确
3.C语言是一种低级语言。          (满分:2)
    A. 错误
    B. 正确
4.若有形参定义:int a;则a++是合法的表达式。          (满分:2)
    A. 错误
    B. 正确
5.数组名可以作为参数进行传递。          (满分:2)
    A. 错误
    B. 正确
6.C函数间可以相互调用,但不能调用main(    )函数。          (满分:2)
    A. 错误
    B. 正确
7.二维数组中元素排列的顺序是:按行存放,即在内存中先顺序存放第一行的元素,再存放第二行的元素。          (满分:2)
    A. 错误
    B. 正确
8.C语言中最简单的数据类型包括整型,实型和字符型。          (满分:2)
    A. 错误
    B. 正确
9.执行语句x=(a=3,b=a--);后,x,a,b的值依次是3,2,3。          (满分:2)
    A. 错误
    B. 正确
10.关系运算符= =和!=的优先级相同。          (满分:2)
    A. 错误
    B. 正确
11.C语言中数据类型只有整型、实型和字符型。          (满分:2)
    A. 错误
    B. 正确
12.语言中,预处理总是以?@符号开头。          (满分:2)
    A. 错误
    B. 正确
13.#define和printf都是C语句。          (满分:2)
    A. 错误
    B. 正确
14.结构体类型只有一种。          (满分:2)
    A. 错误
    B. 正确
15.数组名作为实参调用函数,实际传给形参的是数组中全部的元素值。          (满分:2)
    A. 错误
    B. 正确
16.C语言中的文件都是用ASCII码进行存贮的。          (满分:2)
    A. 错误
    B. 正确
17.a==b;的功能是将b的值赋给a。          (满分:2)
    A. 错误
    B. 正确
18.一个函数的函数体包括声明部分和语句部分。          (满分:2)
    A. 错误
    B. 正确
19.构成数组的各个元素可以有不同的数据类型。          (满分:2)
    A. 错误
    B. 正确
20.用C语言编写的源程序需要编译、链接以后才可以运行。          (满分:2)
    A. 错误
    B. 正确

页: [1]
查看完整版本: 《C程序设计》东师17秋在线作业12