北外期末课程在线考试模拟题《程序设计基础》(内含答案)

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

程序设计基础(C语言程序设计)01
(知识要点)
模拟试卷
一、单选题(每题2分,共60分。


1. C语言程序的基本单位是()。

A、程序行
B、语句
C、函数
D、字符
2. 以下关于简单程序设计的步骤和顺序的说法中正确的是()。

A、确定算法后,整理并写出文档,最后进行编码和上机调试
B、首先确定数据结构,然后确定算法,再编码,并上机调试,最后整理文档
C、先编码和上机调试,在编码过程中确定算法和数据结构,最后整理文档
D、先写好文档,再根据文档进行编码和上机调试,最后确定算法和数据结构
3. C语言中,文件组成的基本单位为()。

A、记录
B、数据行
C、数据块
D、字符序列
4. 能正确表示“当x的取值在[1,10]和[200,210]范围内为真,否则为假”的表达式是()。

A、(x>=1)&&(x<=10)&&(x>=200)&&(x<=210)
<!--=10&&(x-->
B、(x>=1)||(x<=10)||(x>=200)||(x<=210)
<!--=10)||(x-->
C、(x>=1)&&(x<=10)||(x>=200)&&(x<=210)
<!--=10)||(x-->
D、(x>=1)||(x<=10)&&(x>=200)||(x<=210)
<!--=10)&&(x-->
5. 要求通过while循环不断读入字符,当读入字母N时结束循环。

若变量已正确定义,以下正确的程序段是()。

A、while((ch=getchar())!='N ') printf("%c",ch);
B、while(ch=getchar()!='N ') printf("%c",ch);
C、while(ch=getchar()=='N ') printf("%c",ch);
D、while((ch=getchar())=='N ') printf("%c",ch);
6. 以下程序段中,与语句:k=a>b?(b>c?1:0):0;功能相同的是()。

A、if((a>b)&&(b>c)) k=1;
B、if((a>b)||(b>c) k=1;
C、if(a<=b) k=0;
D、if(a>b) k=1;
7. 若a是数值类型,则逻辑表达式(a==1)||(a!=1)的值是()。

A、1
B、0
C、2
D、不知道a的值,不能确定
8. 关于C语言的数据类型,下列说法不正确的是()。

A、C语言包含基本数据类型
B、C语言包含指针类型
C、C语言包含字符串类型
D、C语言包含结构体类型
9. 下面合法的C语言字符常量是()。

A、'\t'
B、"A"
C、65
D、A
10. 下列关于复合语句和空语句的说法错误的是()。

A、复合语句是由“{”开头,由“}”结尾的
B、复合语句在语法上视为一条语句
C、复合语句内,可以有执行语句,不可以有定义语句部分
D、C程序中的所有语句都必须由一个分号作为结束
11. 下面不是C语言合法标识符的是()。

A、abc
B、5n
C、_4m
D、x3
12. 以下描述中正确的是()。

A、由于do-while循环中循环体语句只能是一条可执行语句,所以循环体内不能使用复合语句
B、do-while循环由do开始,用while结束,在while(表达式) 后面不能写分号
C、在do-while循环体中,是先执行一次循环,再进行判断
D、do-while循环中,根据情况可以省略while
13. C语言中的标识符只能由字母,数字和下划线三种字符组成,且第一个字符()。

A、必须为字母
B、必须为下划线
C、必须为字母或下划线
D、可以是字母,数字和下划线中任一字符
14. 以下选项中,能用作数据常量的是()。

A、o115
B、0118
C、1.5e1.5
D、115L
15. 若要打开C盘上my子目录下名为text.txt的文本文件进行只读操作,下面符合此要求的函数调用是()。

A、fopen("C:\\my\\text.txt","r");
B、fopen("C:\\my\\text.txt","rt+");
C、fopen("C:\\my\\text.txt","rb");
D、fopen("C:\\my\\text.txt","w");
16. 若有定义语句:int a[3][6]; ,按在内存中的存放顺序,a数组的第10个元素是()。

A、a[0][4]
B、a[1][3]
C、a[0][3]
D、a[1][4]
17. 下列关于枚举类型的描述不正确的是()。

A、可以在定义枚举类型时对枚举元素进行初始化
B、在赋值时,不可以将一个整数赋值给枚举变量
C、枚举变量不可以进行关系运算
D、枚举变量只能取对应枚举类型的枚举元素表中的元素值
18. 以下叙述中正确的是()。

A、在不同的函数中不可以使用相同的名字的变量。

B、函数中的形式参数是局部变量。

C、在一个函数内定义的变量可以在另一函数中使用。

D、在main函数中,变量一经定义,系统将自动赋予初始值。

19. 若有说明:
int a[][3]={1,2,3,4,5,6,7};
则a数组第一维的大小是()。

A、2
B、3
C、4
D、无确定值
20. 设有数组定义:
char array1 [ ]="abcd"; char
array2[]={'a','b','c'};
则数组array1所占的空间比array2多()。

A、1个字节
B、2个字节
C、3个字节
D、4个字节
21. 以下程序有语法性错误,有关错误原因的正确说法是()。

int main()
{
int G=5,k;
void prt_char();
……
k=prt_char(G);
……
}
A、语句void prt_char();有错,它是函数调用语句,不能用void说明
B、变量名不能使用大写字母
C、函数说明和函数调用语句之间有矛盾
D、函数名不能使用下划线
22. 若有说明:inta[3][4];,则对a数组元素的正确引用是()。

A、a[2][4]
B、a[1,3]
C、a[1+1][0]
D、a(2)(1)
23. 给出以下定义:
char x[ ]="good";
char y[ ]={'g','o','o','d'};
两者之所以不等价是因为()。

A、x中元素的存储是连续的,y是不连续的
B、两者存储的元素数据类型不同
C、x是字符串数组,最后一个元素为’\0’
D、数组名称不同
24. 若有以下说明和定义
union dt
{int a; char b; double c;} data;
以下叙述中错误的是()。

A、data的每个成员起始地址都相同
B、变量data所占内存字节数与成员c所占字节数相等
C、程序段: data.a=5;printf("%f\n",data.c); 输出结果为5.000000
D、data可以作为函数的实参
25. 若有以下说明语句:
struct student
{
int name;
int number;
int sex;
}stu;
则下面的叙述不正确的是()。

A、struct是声明结构体类型时用的关键字
B、struct student是用户定义的结构体类型名
C、stu是用户定义的结构体类型名
D、name,sex都是结构体成员名
26. 若有定义:int w[3][5]; ,则以下不能正确表示该数组元素的表达式是()。

A、*(*w+3)
B、*(w+1)[4]
C、*(*(w+1))
D、*(&w[0][0]+1)
27. 若有定义:int a[2][3];则对a数组的第i行第j列元素地址的正确引用是()。

A、*(a[i]+j)
B、(a+i)
C、*(a+j)
D、a[i]+j
28. 若有语句:char *line[5];,以下叙述中正确的是()。

A、定义line是一个数组,每个数组元素是一个基类型为char的指针变量
B、定义line是一个指针变量,该变量可以指向一个长度为5的字符型数组
C、定义line是一个指针数组,语句中的*号称为间址运算符
D、定义line是一个指向字符型函数的指针
29. 变量的指针,其含义是指该变量的()。

A、值
B、地址
C、名
D、以上都是
30. 已定义以下函数
fun(char *p2, char *p1)
{ while((*p2=*p1)!='\0'){ p1++;p2++; } }
函数的功能是()。

A、将p1所指字符串复制到p2所指内存空间
B、将p1所指字符串的地址赋给指针p2
C、对p1和p2两个指针所指字符串进行比较
D、检查p1和p2两个指针所指字符串中是否有'\0'
二、是非题(正确的填写“T”,错误的填写“F”。

每题1分,共10分。


1. 如果满足if条件所要执行的语句为复合语句,则应该把这些语句使用{}括起来。

()
2. 一维数组在定义时进行初始化,也必须指名数组大小。

()
3. 一维数组的引用其下标从0开始。

()
4. 算法只能用C语言来描述。

()
5. 有参的宏,其参数参与运算,宏替换要先完成参数的计算,然后再执行替换。

()
6. 二维数组的初始化,必须写第一维的长度。

()
7. 数据类型构造类型有枚举型、共用型和结构型()
8. 一个好的算法是一个好的程序的必要组成部分。

()
9. 为了提高读写效率,在进行读写操作后应关闭文件以便下次再进行读写。

()
10. 在switch语句中必须使用default。

()
三、问答题(每题15分,共30分。


1. 修改以下程序,将功能表示为自定义函数,并说明在输入asd af aa z67后的输出为什么?main()
{
char str[81];
int n,i,j=0;
clrscr();
printf("Input a string : ");
gets(str);
puts(str);
for(i=0;str[i]!=‘\0’;i++)
if(str[i]!=‘ ’) str[j++]=str[i];
str[j]= ’\0’;
printf("%s\n",str);
}
2. 以下程序可以实现求解数组元素的和,请将数组改写成指针形式。

main()
{
int x[5] = {5, 1, 2, 3, 4};
int sum = 0, i = 0;
while (i < 5)
{
sum += x[i];
i++;
}
printf ("Sum=%d\n", sum);
}
程序设计基础(C语言程序设计)02
(知识要点)
模拟试卷
一、单选题(每题2分,共60分。


1. C语言源程序扩展名是()。

A、c
B、obj
C、exe
D、h
2. 求解一个问题而采用的方法和解题步骤称为()。

A、数据结构
B、程序
C、算法
D、伪代码
3. main()函数的参数正确的说明形式是()。

A、main(int argc, char *argv);
B、main(int abc, char **abv);
C、main(int argc, char argv);
D、main(int c, char v[]);
4. 若有语句:w=1,x=2,y=3,z=4;,则条件表达式w<x?w:y<z?y:z的值是()。

A、1
B、2
C、3
D、4
5. 若输入字符串:abcde<回车>,则以下while循环体将执行()次。

while((ch=getchar())==’e’) printf("*");
A、4次
B、5次
C、语法错误,不能执行
D、一次也不执行
6. C语言中,最基本的数据类型是()。

A、整型、实型、逻辑型
B、整型、实型、字符型
C、整型、字符型、逻辑型
D、整型、实型、逻辑型、字符型
7. 下列四组选项中,正确的C语言标识符是()。

A、%x
B、a+b
C、a123
D、123
8. 若有表达式(w)?(--x):(++y),则其中与w 等价的表达式是()。

A、w==l
B、w==0
C、w!=l
D、w!=0
9. 字符(char)型数据在微机内存中的存储形式是()。

A、反码
B、补码
C、EBCDIC码
D、ASCII码
10. 以下叙述中正确的是()。

A、C语言程序将从源程序中第一个函数开始执行
B、可以在程序中由用户指定任意一个函数作为主函数,程序将从此开始执行
C、C语言规定必须用main作为主函数名,程序将从此开始执行,在此结束
D、main可作为用户标识符,用以命名任意一个函数作为主函数
11. 系统的标准输入文件是指()。

A、显示器
B、硬盘
C、键盘
D、软盘
12. 表达式:(int)((double)9/2)-(9)%2的值是()。

A、0
B、3
C、4
D、5
13. 以下正确的字符串常量是()。

A、"\\\"
B、'abc'
C、OlympicGames
D、""
14. C语言的语句结束符是()。

A、;
B、.
C、,
D、}
15. C程序全部由一个一个的()构成。

A、主程序
B、子程序
C、函数
D、过程
16. 已定义int a[][3]={1,2,3,4,5,6,7,8,9};,则a[1][2]为()。

A、2
B、4
C、6
D、8
17. 以下结构体类型说明及结构体变量a,b的定义中,正确的是()。

A、struct ss?
{?
char flag;?
float x;?
};?
ss a,b;
B、struct ss?
{?
char flag;?
float x;?
};?
struct ss a,b;
C、struct?
{?
char flag;?
float x;?
}ss;?
ss a,b;
D、struct?
{?
char flag;?
float x;?
}ss;?
struct ss a,b;
18. 当用户要求输入的字符串中含有空格时,应使用的输入函数是()。

A、scanf()
B、getchar()
C、gets()
D、getc()
19. 若有以下语句
typedef struct S
{int g ; char h;} T;
以下叙述中正确的是()。

A、可用S 定义结构体变量
B、可用T 定义结构体变量
C、S 是struct 类型的变量
D、T 是struct S 类型的变量
20. 以下正确的函数首部是()。

A、void fun(int x,int y)
B、void fun(int x;int y)
C、void fun(int x,y)
D、void fun(x,y)
21. 若有以下数组说明,则数值最大的和最小的元素下标分别是()。

int a[12]={1,2,3,4,5,6,7,8,9,10,11,12};
A、1,12
B、0,11
C、1,11
D、0,12
22. 有
enum DAY
{
MON=1, TUE, WED, THU, FRI, SAT, SUN
};
则不正确的是()。

A、DAY是一个标识符,是可有可无的项。

B、因为第一个枚举成员的默认值为整型的0,所以TUE的值为2
C、SUN为7
D、若MON=2,则SUN为8
23. 若函数中有定义语句:int k;,则()。

A、系统将自动给k赋初值0
B、这时k中值无定义
C、系统将自动给k赋初值-1
D、这时k中无任何值
24. 设有以下说明语句:
typedef struct
{
int n;
char ch[8];
} PER;
则下面叙述中正确的是()。

A、PER 是结构体变量名
B、PER是结构体类型名
C、typedef struct 是结构体类型
D、struct 是结构体类型名
25. 下面的函数调用语句中func 函数的实参个数是()。

func (f2(v1, v2), (v3, v4, v5), (v6, max(v7, v8)));
A、3
B、4
C、5
D、8
26. 下列选项中正确的语句组是()。

A、char s[8]; s={"Beijing"};
B、char *s; s={"Beijing"};
C、char s[8]; s="Beijing";
D、char *s; s="Beijing";
27. 若有定义:int a[5], *p=a;,则对a数组元素的正确引用是()。

A、*&a[5]
B、a + 2
C、*(p + 5)
D、*(a +2)
28. 若有以下函数首部
int fun(double x[10], int *n)
则下面针对此函数的函数声明语句中正确的是()。

A、int fun(double x, int *n);
B、int fun(double , int );
C、int fun(double *x, int n);
D、int fun(double *, int *);
29. 已有定义int k=2; int *p1, *p2; 且p1和p2均已指向变量k,下面不能正确执行的赋值语句是()。

A、k = *p1 + *p2;
B、p2 = k;
C、p1 = p2;
D、k = *p1*(*p2);
30. 若有定义:int x,*pb; 则以下正确的赋值表达式是()。

A、pb=&x
B、pb=x
C、*pb=&x
D、*pb=*x
二、是非题(正确的填写“T”,错误的填写“F”。

每题1分,共10分。


1. 字符数组中的字符串可以直接进行比较。

()
2. &作用是取地址。

()
3. 在C程序中,数据只能用二进制的形式进行存放。

()
4. 若已定义的函数有返回值,则函数调用可以作为一个函数的形参()
5. 指针变量的类型是它所指向的变量的类型。

()
6. break语句必须与switch语句中的case配对使用。

()
7. C语言的运算符很少,只有最基本的加减乘除等基本运算,因此容易掌握。

()
8. 一个共用体变量可以有多个数据成员,这些数据成员共享同一个存储空间,但如果空间不够用可以临时由系统分配。

()
9. 在定义了枚举变量后,系统才为该变量分配内存空间。

()
10. C语言中的自增、自减运算符只能作用于常量。

()
三、问答题(每题15分,共30分。


1. 输出一行字符,分别统计出其中英文字母,空格,数字和其他字符的个数。

画出流程图。

2. 对文件的操作过程及相应的文件操作函数为:
第一步:(),相应的函数为()。

并说明r: w: a: rb: wb: ab:的含义。

第二步:(),相应的函数为()。

第三步:(),相应的函数为()。

程序设计基础(C语言程序设计)03
(知识要点)
模拟试卷
一、单选题(每题2分,共60分。


1. 下面有关C程序书写风格的说法中,错误的是()。

A、每一对{}上下对齐
B、每一行的C语句尽可能长度一致
C、每一对{}内的语句左对齐
D、不同语句段采用缩进格式以示区别
2. 算法的空间复杂度是指()。

A、算法在执行过程中所需要的计算机存储空间
B、算法所处理的数据量
C、算法程序中的语句或指令条数
D、算法在执行过程中所需要的临时工作单元数
3. 若执行fopen()函数时发生错误,则函数的返回值是()。

A、地址值
B、0
C、1
D、EOF
4. 设有:int a=1,b=2,c=3,d=4,m=2,n=2;执行(m=a>b)&&(n=c>d)后,n的值为()。

A、1
B、2
C、3
D、4
5. 对for(表达式1;;表达式3),可理解为()。

A、for(表达式1;0;表达式3)
B、for(表达式1;1;表达式3)
C、语法错误
D、仅执行循环一次
6. 有以下程序段
int k=0,a=1,b=2,c=3; k=a<b ? b:a; k=k>c ? c:k;
执行该程序段后,k的值是()。

A、3
B、2
C、1
D、0
7. C源程序中不能表示的数制是()。

A、二进制
B、八进制
C、十进制
D、十六进制
8. 下列叙述中正确的是()。

A、程序执行的效率与数据的存储结构密切相关
B、程序执行的效率只取决于程序的控制结构
C、程序执行的效率只取决于所处理的数据量
D、以上三种说法都不对
9. C语言提供的合法的数据类型关键字是()。

A、Double
B、short
C、integer
D、Char
10. fwrite函数的一般调用形式是()。

A、fwrite(buffer,count,size,fp) ;
B、fwrite(fp,size,count,buffer) ;
C、fwrite(fp,count,size,buffer) ;
D、fwrite(buffer,size,count,fp) ;
11. 以下基本数据类型中,所占字节数为不是4个字节的数据类型是()。

A、long int
B、unsigned long
C、float
D、double
12. 以下选项中不能作为C 语言合法常量的是()。

A、'cd'
B、100000
C、"\a"
D、'\011'
13. 以下关于C语言中的相关规则描述不正确的是()。

A、C语言区分大小写
B、标识符的长度一般不超过8个字符
C、变量必须先定义,后使用,不能在定义前就使用
D、变量必须先定义后赋初值,不能写在一条语句中
14. 下列运算符中属于逻辑运算符的是()。

A、%
B、!=
C、!
D、&
15. 利用fseek函数可以实现的操作是()。

A、改变文件的位置指针
B、文件的顺序读/写
C、文件的随机读/写
D、以上答案均正确
16. 执行下面的程序段后,变量k中的值为()。

int k=3, s[2];
s[0]=k;
k=s[0]*10;
A、不定值
B、33
C、30
D、10
17. 以下叙述正确的是()。

A、可以在结构类型说明直接存放数据。

B、对于不同类型的数据,若想形成一个有机的整体,可以使用结构类型。

C、可以使用“==”或“!=”对同一个结构类型的两个变量进行整体比较。

D、同一结构类型中的成员变量名称可以相同。

18. 下列选项中,能够满足“若字符串s1 等于字符串s2, 则执行ST”要求的是()。

A、if(strcmp(s2,s1) ==0) ST;
B、if(s1==s2) ST;
C、if(strcpy(s1,s2) ==1) ST;
D、if(s1-s2==0) ST;
19. 关于使用函数的目的,以下不正确的说法是()。

A、提高程序的执行效率。

B、提高程序的开发效率。

C、减少程序文件所占内存。

D、提高程序可读性。

20. 以下关于宏的叙述中正确的是()。

A、宏名必须用大写字母表示
B、宏定义必须位于源程序中所有语句之前
C、宏替换没有数据类型限制
D、宏调用比函数调用耗费时间
21. 设有以下说明语句:
struct stu
{ int a;
float b;
}stutype;
则下面的叙述不正确的是()。

A、struct是结构体类型的关键字
B、struct stu是用户定义的结构体类型名
C、stutype是用户定义的结构体类型名
D、a和b都是结构体成员名
22. 若有定义语句:char s[10]="1234567\0\0";,则strlen(s)的值是()。

A、7
B、8
C、9
D、10
23. 若函数调用时的实参为变量时,以下关于函数形参和实参的叙述中正确的是()。

A、函数的实参和其对应的形参共占同一存储单元
B、形参只是形式上的存在,不占用具体存储单元
C、同名的实参和形参占同一存储单元
D、函数的形参和实参分别占用不同的存储单元
24. 若要求定义具有10个int型元素的一维数组a,则以下定义语句中错误的是()。

A、#define N 10?
int a[N];
B、#define n 5?
int a [2*n];
C、int a[5+5];
D、int n=10,a[n];
25. C语言规定,简单变量作为实参时,它和对应形参之间的数据传递方式是()。

A、地址传递
B、单向值传递
C、由实参传给形参
D、由用户指定传递方式
26. 下列函数的功能是()。

fun(char *a,char *b)
{ while((*b=*a)!= '\0') {a++,b++;} }
A、将a所指字符串赋给b所指空间
B、使指针b指向a所指字符串
C、将a所指字符串和b所指字符串进行比较
D、检查a和b所指字符串中是否有'\0'
27. 若有定义:char s[10];,则在下面表达式中不表示s[1]的地址的是()。

A、s + 1
B、s++
C、&s[0]+1
D、&s[1]
28. 若有定义语句:double x,y,*px,*py,执行了px=&x, py=&y;之后,正确的输入语句是
()。

A、scanf("%f%f",x,y);
B、scanf("%f%f",&x,&y);
C、scanf("%lf%le",px,py);
D、scanf("%lf%lf",x,y);
29. 有以下函数
int aaa(char *s)
{
char *t=s;
while(*t++);
t - -;
return(t-s);
}
以下关于aaa函数的功能叙述正确的是()。

A、求字符串s的长度
B、比较两个串的大小
C、将串s复制到串t
D、求字符串s所占字节数
30. 程序段char *s="abcde"; s+=2; printf("%d",s);的运行结果是()。

A、cde
B、字符'c'
C、字符'c'的地址
D、无确定的输出结果
二、是非题(正确的填写“T”,错误的填写“F”。

每题1分,共10分。


1. break;语句执行时退出到包含该break;语句的所有循环外。

()
2. C语言中运算符的优先级规则是,算术运算符高于赋值运算符,赋值运算符高于关系运算符。

()
3. 枚举类型中各成员共享同一个内存单元。

()
4. 文件由数据序列组成。

()
5. C语言中的字符常量可以像整数一样在程序中参与运算。

()
6. C语言中关系表达式的值或者为0或者为1,不能是其它的值。

()
7. for循环的条件表达式只能是关系表达式。

()
8. C语言的特点是简洁,编译程序小、效率高。

()
9. 已有定于语句:int x=3,y=-4,z=5;,则表达式(x&&y)==(x||z)的值是1。

()
10. 指针变量与整数进行加减操作时,就是指针所指的值上加上这个整数。

()
三、问答题(每题15分,共30分。


1. 以下程序段的功能是:对输入的大写字母循环移动6个位置后输出,如’A’变
为’G’,’W’变为’C’。

请将程序段补充完整。

char ch;
ch= ;
if(ch>=’A’&& )
else if( )
putchar(ch);
2. 以下函数可以实现将字符串a的内容复制到字符串b中,请将数组改写成指针形式。

main()
{
char a[]="i am a boy.", b[20];
int i;
for(i=0;*(a+i)!='\0';i++)
*(b+i)=*(a+i);
*(b+i)=′\0′;
}
程序设计基础(C语言程序设计)01答案
}
输入asd af aa z67,则输出为asdafaaz67 (3分)
2. 以下程序可以实现求解数组元素的和,请将数组改写成指针形式。

main()
{
int x[5] = {5, 1, 2, 3, 4};
int sum = 0, i = 0;
while (i < 5)
{
sum += x[i];
i++;
}
printf ("Sum=%d\n", sum);
}
答案:
main()
{
int x[5] = {5, 1, 2, 3, 4};
int *p, sum = 0; (3分)
p = x; (3分)
while (p - x <= 4) (3分)
{
sum += *p; (3分)
p++; (3分)
}
printf ("Sum=%d\n", sum);
}
程序设计基础(C语言程序设计)02答案
总分15分。

每个环节正确得1分,每个N或Y正确得0.5分。

2. 对文件的操作过程及相应的文件操作函数为:
第一步:(),相应的函数为()。

并说明r: w: a: rb: wb: ab:的含义。

第二步:(),相应的函数为()。

第三步:(),相应的函数为()。

答案:
对文件的操作过程及相应的文件操作函数为:
第一步:打开文件,相应的函数为fopen() 。

(1分)
r:打开一个文本文件只读(1分)
w:打开一个文本文件只写(1分)
a:对一个文本文件添加(2分)
rb:打开一个二进制文件只读(2分)
wb:打开一个二进制文件只写(2分)
ab:对一个二进制文件添加(2分)
第二步:读写文件,相应的函数为fputc()/fgetc()等。

(2分)
第三步:关闭文件,相应的函数为fclose() 。

(2分)
程序设计基础(C语言程序设计)03答案
char ch;
ch= ;
if(ch>=’A’&& )
else if( )
putchar(ch);
答案:
2. 以下函数可以实现将字符串a的内容复制到字符串b中,请将数组改写成指针形式。

main()
{
char a[]="i am a boy.", b[20];
int i;
for(i=0;*(a+i)!='\0';i++)
*(b+i)=*(a+i);
*(b+i)=′\0′;
}
答案:
main()
{
char a[]="I am a Boy.", b[20], *p1, *p2; (3分)
int i;
p1=a; p2=b; (3分)
while(*p1) (3分)
*p2++ = *p1++; (3分)
*p2='\0'; (3分)
}。

相关文档
最新文档