C语言程序设计真题精选.docx
《C语言程序设计真题精选.docx》由会员分享,可在线阅读,更多相关《C语言程序设计真题精选.docx(13页珍藏版)》请在冰点文库上搜索。
C语言程序设计真题精选
[填空题]1编写程序,输入两个整数:
1500和350,求出它们的商数和余数并进行输出。
参考答案:
[单项选择题]
2、述关于枚举类型名的定义中,正确的是()
A.enuma={one,two,three};
B.enuma{one=9,two=-1,three};
C.enuma={"one","two","three"};
D.enuma{"one","two","three"}
参考答案:
B[填空题]
3下列程序的输出结果是()
参考答案:
6[填空题]4编写程序,读入三个整数给a,b,c,然后交换它们中的数,把a中原来的值给b,把b中原来的值给c,把c中的值给a。
参考答案:
[填空题]5设有三人的姓名和年龄存在结构体数组中,以下程序输出年龄居中者的姓名和年龄。
请填空。
参考答案:
(1)max=person[I].age
(2)min=person[I].age
(3)&&
[填空题]6已知学生的记录由学号和学习成绩构成,用函数实现输出学生的记录及平均成绩的输出。
参考答案:
参考答案:
[填空题]8下面程序的功能是从键盘上顺序输入整数,直到输入的整数小于0时才停止输入。
然后反序输出这些整数。
请填空。
参考答案:
(1)return
(2)
(structdata*)malloc(sizeof(structdata))
(3)input()
(4)p!
=NULL
(5)p=p->next[填空题]9编写一程序,要求输入x的值,输出y的值。
分别
(1)不嵌套的if语句
(2)嵌套的if语句
(3)if_else语句
(4)switch语句
参考答案:
[判断题]
10、如果想使一个数组中全部元素的值为0,可以写成inta[10]={0*10};
参考答案:
错
[填空题]11已知12个学生记录,要求求出成绩平均值,并把高于平均值的记录显示出来。
参考答案:
[填空题]12以下函数creatlist用来建立一个带头结点的单链表,新的结点总是插入在链表的末尾。
链表的头指针作为函数值返回,链表最后一个结点的next域放入NULL,作为链表结束标志。
data为字符型数据域,next为指针域。
读入时字符以#表示输入结束(#不存入链表)。
参考答案:
(1)structnode*
(2)ch
(3)NULL
[填空题]13编写程序,输出从公元1000年至2000年所有闰年的年号每输出3个年号换一行。
判断公元年是否闰年的条件是:
(1)公元年数如能被4整除,而不能被100整除,则是闰年。
(2)公元年数能被400整除也是闰年。
参考答案:
[填空题]14输入两个两位整数m,n,求出每位数字,并且m上低位成为新数字的高位,m上高位成为新数字的第三位,n上高位成为新数字的高位,n上低位成为新数字的最低位。
参考答案:
[填空题]15已知head指向单链表的第一个结点,以下程序段的功能是统计链表中所有
inf域值之和。
请填空。
参考答案:
(1)p!
=NULL
(2)p->inf[判断题]
16、inta[3]
[4]={{1},{5},{9}};它的作用是将数组各行第一列的元素赋初值,其余元素值为
0.
参考答案:
对[填空题]17当a>0时,请将以下语句改写成switch语句。
参考答案:
[填空题]18已知16个学生记录,要求求出最高成绩,并把最高成绩记录全部显示出来。
参考答案:
[填空题]19下列程序按学生的姓名查询其成绩排名和平均成绩。
查询时可连续进行,直到输入0时结束。
请填空
参考答案:
(1)structstudent
(2)strcmp(stu[k].name,str)==0
(3)break[判断题]
20、若有inti=10,j=0;则执行完语句if(j=0)i++;
elsei--;
i的值为
11.
参考答案:
错
[填空题]
21编写程序,求e的值,e=1+1/1!
+1/2!
+1/3!
+1/4!
+...+1/n!
(1)
用for循环,计算前50项
(2)用while循环,要求直至最后一项的值小于
1e-4。
参考答案:
更多内容请访问《睦霖题库》微信公众号
[填空题]22已知16个学生记录,输入学号,查找此学号对应成绩。
参考答案:
[填空题]23下面的程序将规定的明码转换为暗码,其它字符不变。
请填空。
参考答案:
(1)ch=*s++
(2)p=tab
(3)p->real!
=’/0’
(4)*t++=p->code
(5)*t++=’/0’[判断题]
24、若i=3,则printf("%d",-i++);输出的值为-4.
参考答案:
错[填空题]25请编写程序,输入一行字符(用回车结束),输出每个字符以及与之对应的ASCII代码值,每行输出三队.
参考答案:
[填空题]26已知8个学生记录,求平均成绩,并按链表形式显示。
参考答案:
[填空题]27已知head指向单向链表的第一个结点,以下函数完成往降序单向链表中插入一个结点,插入后链表仍有序。
请填空。
参考答案:
(1)p0->link=head
(2)p0->link=p1
(3)p0->link=NULL
[判断题]
28、C语言中,赋值表达式加上分号就构成了赋值语句.
参考答案:
对
[填空题]29请编写程序统计输入的行数,输入用EOF结束输入。
参考答案:
[填空题]30假设今天是星期三,编程求20天之后是星期几?
参考答案:
[填空题]31编写一个C程序,定义一个一周的枚举变量,根据键盘输入的一周中的星期几(整数值),输出其英文名称。
参考答案:
[判断题]
32、在C语言中,5种基本数据类型的存储空间长度的排列顺序为:
char 参考答案:
对
[填空题]33以下fun函数用以判断n是否是素数,fun函数中有逻辑错,请调试改正。
参考答案:
[填空题]34输入一个大写英文字母,将它转化为小写输出。
参考答案:
[填空题]35某班学生的记录由学号和成绩组成。
编写一个C程序,将学生记录按分数由高向低排列。
参考答案:
[填空题]36定义inta[2]
[3];表示数组a中的元素个数是()个.
参考答案:
6
[多项选择题]
37、下面的二维数组初始化语句中,正确的是:
()
A.inta[3]
[]={1};
B.inta[3]
[3]={1,2};
C.inta[]
[]={1,2};
D.inta[]
[4]={2,3};
参考答案:
B,D[填空题]38编写程序求:
1-1/2+1/3-1/4+1/5-1/6+1/7-...1/n
参考答案:
[填空题]39输入长方形的长和宽,编程求该长方形的周长和面积。
参考答案:
[填空题]40合并字符串的库函数是(),只写函数名即可.
参考答案:
strcat
[填空题]41编写一个程序求复数之积。
参考答案:
[填空题]42请编写函数,其功能是对传送过来的两个浮点数求出和值与差值,并通过形参传送回调用函数。
参考答案:
[填空题]43编写程序,输入两个实数,按代数值由大到小的顺序输出这两个实数。
参考答案:
[填空题]44若输入字符串:
abcde<回车>,则以下while循环体将执行()次.While((ch=getchar())==’e’)printf("*");
参考答案:
0
[多项选择题]
45、若有说明:
inta[]
[4]={0,0};,则下面正确的叙述是()
A.a[0]
[1]=0
B.只有元素a[0]
[0]和a[0]
[1]可得到初值0,其余元素均得不到初值
C.二维数组a的第一维大小为1
D.数组a的每个元素都可得到初值0
参考答案:
A,C,D
[单项选择题]
46、对于inta,要使表达式((1<>1)|a)==a的值为1;则a可以是()A.2B.6C.10D.2,6,10均可
参考答案:
D
[填空题]47输入一行数字字符,请用数组元素作为计数器来统计每个数字字符的个数.用下标为0元素统计字符"1"的个数,下标为1的元素统计字符"2"的个数,...
参考答案:
[填空题]48编写程序,输入一个不多于5位的正整数,输出该正整数是几位数。
参考答案:
[填空题]49设a,b,c,t为整型变量,初值为a=3,b=4,c=5,执行完语句t=!
(a+b)+c-1&&b+c/2后,t的值是()
参考答案:
1
[多项选择题]
50、下面针对排序描述项正确的是()
A.冒泡排序是排序的一种,除了冒泡排序还存在其它的排序方法
B.排序的思想就是按照整理文件中的记录或数据,使之按关键字递增(或递减)次序排列起来
C.排序是计算机内经常进行的一种操作,其目的是将一组"无序"的记录序列调整为"有序"的记录序列
D.排序的目的是对已排序的元素进行查找
参考答案:
A,B,C,D
[填空题]51编写程序,输入2015年的一个月份,输出该月有多少天。
(使用switch语句实现)
参考答案:
[单项选择题]
52、表达式-1|0377的值是()A.0177111B.0177711C.0177771D.0177777
参考答案:
D
[单项选择题]
53、有以下二维数组的定义inta[3]
[5];如想引用第五个元素,则正确的引用是()
A.a[4]
B.a[5]
C.a[0]
[4]
D.a[1]
[5]
参考答案:
C
[单项选择题]
54、定义二维数组intarr[3]
[3]则输出全部元素,共需要输出()个。
A.6B.9C.5
D.无法统计
参考答案:
B
[判断题]
55、在C语言中定义的auto变量,若没有对其进行显式初始化,则初值是一个不确定的值。
参考答案:
对
[填空题]56编写函数把数组中所有奇数放在另一个数组中返回.
参考答案:
[单项选择题]
57、下面程序执行后的结果是()A.27B.23C.24D.25
参考答案:
A
[单项选择题]
58、下列单词中,哪个有“打断、中断”的意思()。
A.break
B.continue
C.if
D.while
参考答案:
A
[填空题]59输出6~10000之间的亲密数对。
说明:
若(a,b)是亲密数对,则a的因子和等于b,b的因子和等于a,且a不等于b。
如(220,284)是一对亲密数对。
参考答案:
[单项选择题]
60、下面程序实现对二行三列二维数组元素的输入,空白处应填入()
A.scanf("%d",&arr[i]);
B.scanf("%d",&arr[i]
[j]);
C.scanf("%d",&arr[j]);D.scanf("%d",&arr[i]
[i]);
参考答案:
B