吉大21春学期《C语言程序设计》在线作业一[答案]满分答案
吉大21春学期《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<n/2;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类型数组,不可以直接用数组名对数组进行整体输入或输出。
专业答案:----
18.switch语句中,各个case和default的出现次序不影响执行结果。( )
专业答案:----
19.putchar()函数可以输出一个字符串
20.使用getchar函数可以不添加#include <stdio.h>命令。( )
专业答案:----
21.‘ a’和“a”在内存中所占字节数相同。( )
正确答案:----
22.for(;;)语句相当于while(1)语句
23.模运算符要求两侧均应为整型数据。( )
24.宏定义就是用宏名代替一个字符串,也就是简单的置换,不作正确性检查。
25.数据结构指的是数据的组织形式,数组就是一种数据结构( )
吉大21春学期《C语言程序设计》在线作业一[答案]历年参考题目如下: