吉大21春《C语言程序设计》在线作业一题目[免费答案]满分答案
吉大17秋学期《C语言程序设计》在线作业一-0003
试卷总分:100 得分:100
一、单选题 (共 10 道试题,共 40 分)
1.有如下程序: long fib(int n) { if(n>2)return(fib(n-1)+fib(n-2)); else return(2); } main() { printf("%d\n",fib(3));} 该程序的输出结果是
专业答案:-----
A.2
B.4
C.6
D.8
专业答案:-----
2.以下程序有语法错误,有关错误原因的正确说法是 main() { int G=5,k; void prt_char(); ... k=prt_char(G); ... }
专业答案:-----
A.语句 void prt_char();有错,它是函数调用语句,不能用void说明
正确答案:-----
B.变量名不能使用大写字母
C.函数说明和函数调用语句之间有矛盾
D.函数名不能使用下划线
正确答案:-----
3.下面程序的运行结果是 #include main() { int y=10; do{y--;}while(--y); printf("%d\n",y--); }
专业答案:-----
A.1
B.1
C.8
D.0
专业答案:-----
4.下列程序的输出结果是 int b=2; int func(int *a) { b += *a; return(b);} main() { int a=2, res=2; res += func(&a); printf("%d\n",res); }
正确选项:-----
A.4
B.6
C.8
D.10
专业答案:-----
5.执行以下程序后,a,b的值分别为 main() { int a,b,k=4,m=6,*p1=&k,*p2=&m; a=p1==&m; b=(*p1)/(*p2)+7; printf("a=%d\n",a); printf("b=%d\n",b); }
正确选项:-----
A.-1,5
B.1,6
C.0,7
D.4,10
正确选项:-----
6.请选出以下语句的输出结果 printf("%d\n",strlen("\t\"\065\xff\n"));
专业答案:-----
A.5
B.14
C.8
D.输出项不合法,无正常输出
专业答案:-----
7.函数 rewind 的作用是
正确选项:-----
A.使文件位置指针重新返回文件的开始位置
B.将文件位置指针指向文件中所要求的特定位置
C.使文件位置指针指向文件的末尾
D.使文件位置指针自动移至下一个字符位置
正确选项:-----
8.以下程序的输出结果是
#include "stdio.h"
正确选项:-----
void reverse(int a[],int n)
专业答案:-----
{
int i,t;
for(i=0;i t=a[i]; a[i]=a[n-1-i]; a[n-1-i]=t; } } main(){ int b[10]={1,2,3,4,5,6,7,8,9,10}; int i,s=0; reverse(b,8); for(i=6;i<10;i++) s+=b[i]; printf("%d ",s); 正确答案:----- } A.22 B.10 C.34 D.30 专业答案:----- 9.若已定义: int a[]={0,1,2,3,4,5,6,7,8,9}, *p=a,i; 其中 0≤i≤9, 则对a数组元素不正确的引用是 A.a[p-a] B.*(&a[i]) C.p[i] D.a[10] 正确答案:----- 10.若有以下程序 #include int a[]={2,4,6,8}; main() { int i; int *p=a; for(i=0;i<4;i++)a[i]=*p; printf("%d\n",a[2]); } 上面程序输出结果是 正确选项:----- A.6 B.8 C.4 D.2 专业答案:----- 吉大21春《C语言程序设计》在线作业一题目[免费答案]多选题答案 二、多选题 (共 5 道试题,共 20 分) 11.内存中供用户使用的存储空间可分为:______。 A.程序区 B.静态存储区 C.动态存储区 D.数据存储区 正确选项:----- 12.函数调用可以______。 A.出现在一个表达式中 B.出现在执行语句中 C.作为一个函数的实参 D.作为一个函数的形参 正确选项:----- 13.对静态变量的正确描述 A.静态局部变量在静态存储区内分配单元 B.静态外部变量可以赋初值,也可以不赋初值 C.静态外部变量的作用与外部变量相同 D.静态局部变量在函数调用结束时,仍保存其值,不会随着消失。 专业答案:----- 14.下列描述正确的是 A.由main 函数及其参数argc和* argv[]可以实现命令行方式 B.使用fclose关闭文件时,先释放文件指针,再写缓冲区数据到文件中 C.字符数组并不要求它的最后一个字符是‘\0’ D.‘A’和“A”都是字符串常量 正确选项:----- 15.C提供的预处理功能主要有______。 A.宏定义 B.文件包含 C.条件编译 D.异常终止 正确答案:----- 三、判断题 (共 10 道试题,共 40 分) 16.共用体所占的内存空间大小取决于占空间最多的那个成员变量。 17.对于double类型数组,不可以直接用数组名对数组进行整体输入或输出。 正确答案:----- 21.switch语句中,各个case和default的出现次序不影响执行结果。( ) 正确答案:----- 19.putchar()函数可以输出一个字符串 20.使用getchar函数可以不添加#include 正确选项:----- 21.‘ a’和“a”在内存中所占字节数相同。( ) 正确选项:----- 22.for(;;)语句相当于while(1)语句 23.模运算符要求两侧均应为整型数据。( ) 24.宏定义就是用宏名代替一个字符串,也就是简单的置换,不作正确性检查。 25.数据结构指的是数据的组织形式,数组就是一种数据结构( ) 吉大21春《C语言程序设计》在线作业一题目[免费答案]历年参考题目如下: 地大《C语言程序设计(新)》在线作业二 -0008 试卷总分:100 得分:44 一、单选题 (共 15 道试题,共 60 分) 1.已知int x;float y;则下列表达式的值为1.5的是________。 A.x=3/2.0 B.x=3/2 C.y=3/2 D.y=3/2.0 2.假定p是具有double类型的指针变量,则表达式++p使p的值(以字节为单位)增加____ A.1 B.4 C.sizeof(double) D.sizeof(p) 3.以下叙述中不正确的是____. A.在一个函数中,可以有多条return语句 B.函数的定义不能嵌套,但函数的调用可以嵌套 C.函数必须有返回值 D.不同的函数中可以使用相同名字的变量 4.有以下程序片段 int n=0,p; do { scanf(%d",&p); n++; } while(p!=12345&&n<3); 此处 do-while 循环的结束条件是() A.p的值不等于12345并且n的值小于3 B.p的值等于12345并且n的值大于等于3 C.p的值不等于12345或且n的值小于3 D.p的值等于12345或且n的值大于等于3 5.若有说明语句:int w=2,x=3,y=3,z=4;则表达式w>x?w:z>y?z:x的值是 A.4 B.3 C.2 D.1 6.以下叙述中错误的是 A.对于double类型数组,不可以直接用数组名对数组进行整体输入或输出 B.数组名代表的是数组所占存储区的首地址,其值不可改变 C.当程序执行中,数组元素的下标超出所定义的下标范围时,系统将给出“下标越界”的出错信息 D.可以通过赋初值的方式确定数组元素的个数 7.设有如下定义:int (*ptr) ();则以下叙述中正确的是______。 A.ptr是指向一维数组的指针变量 B.ptr是指向int型数据的指针变量 C.ptr是指向函数的指针,该函数返回一个int型数据 D.ptr是一个函数名,该函数的返回值是指向int型数据的指针 8.下列数组定义正确的是________ A.int a[5],b[2,3] B.char no(30) C.char x[] D.int x[5]={1,2,3}; 9.用C语言编制的源程序要变为目标程序,必须经过 A.编辑 B.编译 C.解释 D.连接 10.若变量已正确说明为int类型,要给a,b,c输入数据,以下语句正确的是 A.read(a,b,c); B.scanf(“%d%d%d”,a,b,c); C.scanf(“%D%D%D”,&a,%b,%c); D.scanf(“%d%d%d”,&a,&b,&c); 11.当说明一个结构变量时,系统分配给它的内存是 A.各成员所需内存量的总和 B.结构中第一个成员所需内存量 C.成员中占内存量最大的成员所需的容量 D.结构中最后一个成员所需内存量 12.已知字符'b'的ASCII码为98,语句printf("%d,%c",'b','b'+1 );的输出为 A.98,b B.语句不合法 C.98,99 D.98,c 13.以下函数的返回结果是( ). int function(char *x) { char *p=x; while(*p++); return(p-x-1); } A.求字符串的长度 B.将字符串x连接到字符串p后面 C.将字符串x复制到字符串p D.将字符串x反向存放 14.设有定义:int a,*pa=&a;以下scanf语句中能正确为变量a读入数据的是 A.scanf(“%d”,pa) B.scanf(“%d”,a) C.scanf(“%d”,&pa) D.scanf(“%d”,*pa); 15.不合法的八进制数是() A.0 B.028 C.077 D.01 二、判断题 (共 10 道试题,共 40 分) 16.在C程序中,APH和aph是两个不同的变量。 17.C程序中的注释部分可有可无,通常可以省略。 18.数据结构指的是数据的组织形式,数组就是一种数据结构( ) 19.switch语句中,多个case可以共用一组执行语句。( ) 20.C语言规定必须用main作为主函数名 21.continue语句只能用于循环语句中。 22.使用printf和scanf函数时,必须添加#include 23.指针变量可以有空值,即该指针变量不指向任何变量 24.用一个标识符代表一个常量的称为符号常量,符号常量不同于变量,它的值在其作用域内不能改变,也不能再被赋值。( ) 25.所有函数都是平行的,函数间可以相互调用,但不能调用main函数。( )