大学《C语言程序设计》试题八及答案.docx
《大学《C语言程序设计》试题八及答案.docx》由会员分享,可在线阅读,更多相关《大学《C语言程序设计》试题八及答案.docx(7页珍藏版)》请在冰豆网上搜索。
![大学《C语言程序设计》试题八及答案.docx](https://file1.bdocx.com/fileroot1/2023-3/19/0e765ec2-93ab-41fa-877f-2890d32b1a75/0e765ec2-93ab-41fa-877f-2890d32b1a751.gif)
大学《C语言程序设计》试题八及答案
20XX年复习资料
大
学
复
习
资
料
专业:
班级:
科目老师:
《C语言程序设计》试题八
一、选择题
1.一个C语言程序是由( )构成。
A.语句 B.行号 C.数据 D.函数
2.下面标识符中正确的是( )。
A.a#bc B.20XXXX3ABC C.sime D.Y·M·D
3.在C语言中,存储一个整型、字符型、双精度实型变量所需的字节数是( )。
)。
)。
)。
A.2、1、8 B.4、1、4
C.4、1、4 D.2、2、8
4.为了避免嵌套的条件分支语句if--else中的else总是与( )组成成对关系。
A.缩排位置相同的 B.在其之前未配对的
C.在其之前未配对的最近的if D.在同一行上的if
5.下列表达式的结果正确的是( )。
int a,b,c,d;
a=b=c=d=2;
d=a+1==3?
b=a+2:
a+3
A.2 B.4 C.3 D.5
二、填空题
1.在C语言中,正确的标识符是由______________________组成的,且由_______________开头的。
2.设x=3,那么表达式y=(++x)+(++x)的结果为_________,表达式执行后,变量x的结果为_________。
3.一个变量的指针是指_________________________________________________________________。
4.组成数组元素的特点是_______________________________________________;
组成结构体元素的特点是________________________________________________。
5.在C语言程序中,对文件进行操作首先要______________________________;然后对文件进行操作,最后要对文件实行__________________________________操作,防止文件中信息的丢失。
6.对字符串进行操作的函数有_______________________________________________________等。
7.C语言程序是由___________________构成的,而C语言的函数是由____________________构成的。
8.要想定义整型变量a,实型变量b,字符型的变量c,应该使用的正确语句为______________________________________________________________________________________。
9.写出下面表达式的值
3*5/7+7%3_______________________ x=2;y=4; (x++)+y _________________________
3+4>=7-20XXXX_______________________ 3>4?
3%2:
1 ______________________________
x=2,y=2;++x&&++y_________________ x=3; x+=x-=2 ______________________________
三、判断题
1.C语言的一个特点是可以对计算机硬件进行操作 ( )
2.在循环过程中,使用break语句和continue语句的作用是一样的 ( )
3.在函数的定义和调用过程中,形式参数和实在参数数目可以不一致 ( )
4.指针变量可以接收任何类型的值 ( )
5.在C语言程序设计中,字符数组和字符串不是完全一样的概念 ( )
6.文件指针是结构体类型,用符号file来表示 ( )
7.选择结构(if语句)和循环结构都可以使用嵌套形式 ( )
8.在定义二维数组时,可以将该数组的两个维数全部省略 ( )
9.逻辑运算符 && || !
的运算顺序是 !
优先于&&优先于|| ( )
20XXXX.任何数组都可以实现整体使用操作 ( )
四、程序填空题
1.下面是实现打印九九乘法表的程序,请在画线的位置填上适当的语句,使程序(段)完整。
main()
{ int i,j,k;
for(i=1;_____________;i++)
{ for(j=1;______________;j++)
printf(“%d*%d=%d”,_______________);
printf(________________);
}
}
2.自己设计一个自定义函数,实现求两个数的最大数的功能,自定义函数如下:
int max(x,y)
int x,y;
{
}
3.设有如下面的结构体,请用C语言的语句定义出正确的结构体形式:
学生信息:
包括(姓名,性别,年龄,分数),并且定义变量stud和数组stud1[30]
struct student
{
}
4.根据给出的程序段,请写出正确的结果
x=1; sum=1;
for(x=1;x<=5;x++)
sum=sum*x;
上面的程序段实现的功能是:
______________________________________________________;
其运行结果为______________________________________________________________________。
5.设有如下的语句。
int a=43,b,c;
b=23;
c=a++*--b;
(1)上面的语句段执行后a= b= c= ;
(2)简述a++和++a的相同点和不同点:
6.设有如下的程序:
main()
{inti=3,*p1;
inta[3]={20XXXX,30,45},*p2;
p1=&i;p2=a;
p1=p2+2;
printf(“%d,%d\n”,*p1,*p2);
}
程序运行结果是:
。
五、编程题(25分)
1.编程实现对20XXXX个整数进行冒泡排序(要求排成升序)。
2.编程实现求下面的式子的结果
3.编程实现将文本文件中的内容复制到文本文件中去
六、附加题
用C语言程序实现在已知链表中的第三个位置插入数值为a的程序
《C语言程序设计》试题八答案
一、选择题
1.D 2. C 3.A 4. C 5. B
二、填空题
1.字母、数字、下划线;以字母、下划线开头。
2.20XXXX;5。
3.该变量的地址。
4.一组数据类型相同的元素构成的;一组数据类型不同的元素构成的。
5. 打开;关闭。
6.字符串长度、取子字符串、字符串替换、字符串复制等。
7.函数;语句。
8.inta; floatb; charc;
9 9 9.3 6 1 1 1 2
三、判断题
1.对 2. 错 3.错 4.错 5.对 6.错 7.对 8.错 9.对 20XXXX.错
四、程序填空题
1. i<=9 j<=9
printf(“%d*%d=%d”,i,j,i*j);
printf(“\n”);i,j,k;
2. intz;
if(x>=y) z=x;
else z=y;
return z;
3. char name[20XX];
char sex;
int age;
float score;
4.实现功能:
计算连续数之积, 即sum=1*2*3*4*5 ;
运行结果:
sum=20XXXX0
5.44 22 946
a++:
先加1,后使用表达式的值;++a表示先加1,后使用表达式的值,它们最后的结果使a加1。
6.45,20XXXX
五、编程题
1.编程实现对20XXXX个整数进行冒泡排序(要求排成升序)。
Main()
{ int a[20XXXX]; int m,n,p;
for(m=0;m<=20XXXX;m++)(m=0;m<=20XXXX;m++)
scanf(“%d”,&a[m]);
for(m=0;m<=20XXXX;m++)
for(n=0;n<20XXXX-m;n++)
if(a[n]>a[n+1])
{ p=a[n]; a[n]=a[n+1]; a[n+1]=p; }
for(m=0;m<=20XXXX;m++)
printf(“%d”,a[m]); }
2.编程实现求下面的式子的结果
#include“math.h”
main()
{ floatx,y;
scanf(“%f”&x);
if(x>6) y=(x-3)/(2*x-20XXXX);
else y=-2*x*x+4*x-20XXXX;
printf(“y=%f”,y); }
3.编程实现将文本文件中的内容复制到文本文件中去
main()
{ charch;
FILE*fp1,*fp2;
Fp1=fopen(“”,“r”);
Fp2=fopen(“”,“w”);
Ch=fgetc(fp1);
While(ch!
=EOF)
{ fputc(ch,fp2);
Ch=fgetc(fp1); }
Fclose(fp1);
Fclose(fp2); }
六、附加题
p=H;K=0;
While(p!
=NULL&&k{ p=p->next;
k++; }
if(p==NULL && H!
=NULL) printf(“thisisinvilid”);
else
{ q=(StructLinklist*)malloc(sizeof(StructLinklist));
q->data=x;q->data=x;
q->next=p->next;
p->next=q; }