《C程序设计》成考题.docx
- 文档编号:23932660
- 上传时间:2023-05-22
- 格式:DOCX
- 页数:12
- 大小:18.87KB
《C程序设计》成考题.docx
《《C程序设计》成考题.docx》由会员分享,可在线阅读,更多相关《《C程序设计》成考题.docx(12页珍藏版)》请在冰豆网上搜索。
《C程序设计》成考题
《C程序设计》复习
一、1.设a=4,则执行语句a-=3;后a的值为。
2.在C语言中,是以作为一个字符串的结束标记的。
3.任何一个数组的数组元素具有相同的名字和。
4.在C语言中,指针就是一个。
5.上机运行一个C程序必须经过编辑、编译、和执行四个步骤。
6.设a=3,b=4,c=5,则逻辑表达式!
(a>b)&&!
c||1的值为。
7.C语言中表达式5/3的结果为。
8.C语言中,在函数调用时使用的参数,称为实际参数,在函数定义时函数头中列出的参数,称为。
二、1.以下对字符数组的初始化不正确的是。
A)charc[]={”china”};B)charc[]={‘c’,‘h’,‘i’,‘n’,‘a’};
C)charc[]=”china”;D)charc[]=china;
2.C语言程序的基本单位是。
A)字符B)语句C)程序行D)函数
3.C语言中规定函数的返回值类型是由。
A)return语句中的表达式类型决定
B)调用该函数时的主调函数类型所决定
C)在定义该函数时所指定的函数类型所决定
D)调用该函数时系统临时决定
4.在下列关于C函数定义的叙述中,正确的是。
A)函数可以嵌套定义,但不可以嵌套调用
B)函数不可以嵌套定义,但可以嵌套调用
C)函数不可以嵌套定义,也不可嵌套调用
D)函数可以嵌套定义,也可以嵌套调用
三、1.修改以下程序,要求当score>100或score<0时必须提示重新输入,直到输入正确值为止。
请写出具体的修改方案。
#include
voidmain()
{floatscore;
printf("inputscore:
");
scanf("%f",&score);
switch((int)(score/10))
{
case10:
case9:
printf("grade:
A\n");break;
case8:
printf("grade:
B\n");break;
case7:
printf("grade:
C\n");break;
case6:
printf("grade:
D\n");break;
case5:
case4:
case3:
case2:
case1:
case0:
printf("grade:
E\n");
}
}
2.将下面程序改为用while语句实现。
#include
voidmain()
{
intcock,rabbit;
for(cock=0;cock<=100;cock++)
{rabbit=100-cock;
if(cock*2+rabbit*4==300)
printf("cock=%d,rabbit=%d\n",cock,rabbit);
}
}
3.从键盘输入一个小写字母,要求改用大写字母输出,将空缺的语句补充完整。
#include
voidmain()
{
charc;
c=getchar();
_________________;
printf("%c\n",c2);
}
4.要正确输出a的值,请将下面程序中空缺的语句补充完整。
#include
voidmain()
{
inta=10;
int*p;
;
printf("a=%d\n",*p);
}
四、1.假如你刚到某所中学参加工作,在新学期开学之初,该中学的校长委托你对刚入校的新生进行快速分班。
已知条件:
共有380名新生,新生入校成绩册已知。
分班要求:
依据"总分"由高到低进行"S"形分班(不考虑总分相同的情况,即总分相同的依据先后仍按原次序排序),共分6个班。
根据以上陈述,按以下要求编程实现。
(1)输入学生的任一名次,输出该学生的所在的班级。
(2)程序尽可能有一定的通用性,即分班的数目随机确定。
(3)程序能按“若要再次执行请按'Y'或'y',否则按其他任一键退出”提示信息循环执行。
2.随机输入某一年份,判断是否是闰年。
(表示闰年的条件:
①能被4整除,但不能被100整除。
②能被400整除)。
参考答案
一、1.12.’\0’3.数据类型4.地址
5.组建(或连接)6.17.18.形式参数
二、1.D2.D3.C4.B
三、1.×2.√3.×4.√5.√6.×7.×8.×
三、1.答:
可在scanf("%f",&score);语句之后插入以下语句:
while(score>100||score<0)
{
printf("输入的分数应介于0-100之间,请重新输入:
");
scanf("%f",&score);
}
2.答:
#include
voidmain()
{
intcock,rabbit;
cock=0;
while(cock<=100)
{rabbit=100-cock;
if(cock*2+rabbit*4==300)
printf("cock=%d,rabbit=%d\n",cock,rabbit);
cock++;
}
}
3.答:
c=c-32
4.答:
p=&a
四、1.答:
参考代码如下:
#include
#include
voidmain()
{
intm,n,k;
charc;
do
{
printf("请输入分班的数目:
");
scanf("%d",&n);
printf("输入学生的名次:
");
scanf("%d",&m);
k=m%(2*n);
if(k>n)printf("该生所在的班级为%d班\n",2*n+1-k);
elseif(k>=1)printf("该生所在的班级为%d班\n",k);
elseprintf("该生所在的班级为%d班\n",1);
printf("若要再次执行请按\'Y\'或\'y\',否则按其他任一键退出。
");
c=getche();
printf("\n");
}while(c=='y'||c=='Y');
}
2.答:
参考代码如下:
#include
voidmain()
{
intyear;
printf("请输入任一年份:
");
scanf("%d",&year);
if((year%4==0&&year%100!
=0)||year%400==0)
printf("%d是闰年!
\n",year);
else
printf("%d不是闰年!
\n",year);
}
一、1.设a=4,则执行语句a+=3;后a的值为。
2.C语言程序都是从名为的函数开始执行的。
3.若变量x、y、z都是int型的。
现有语句:
scanf(“%d,%d,%d”,&x,&y,&z);
为了使x里是12,y里是345,z里是678,应该在键盘上键入。
4.同一数组中,数组元素之间是通过来加以区分的
5.设a=3,b=4,c=5,则逻辑表达式a||b+c&&b-c的值为。
6.C语言中的浮点型变量分为单精度、和长双精度。
7.C语言中表达式7%4的结果为。
8.程序的三种基本结构是顺序、和循环。
二、1.所有的编译系统都规定一个字符变量在内在中占个字节。
A)1B)2C)3D)4
2.若charstr[10]={″Computer″},则printf(″%d″,strlen(str))输出的结果是。
A)7B)8C)9D)10
3.C程序进行编译的基本单位是。
A)源程序文件B)语句C)程序行D)函数
4.C语言可执行程序从开始执行。
A)程序中第一条可执行语句
B)程序中第一个函数
C)程序中的main函数
D)包含文件中的第一个函数
三、1.修改以下程序,要求当score>100或score<0时必须提示重新输入,直到输入正确值为止。
请写出具体的修改方案。
#include
voidmain()
{floatscore;
printf("inputscore:
");
scanf("%f",&score);
switch((int)(score/10))
{
case10:
case9:
printf("grade:
A\n");break;
case8:
printf("grade:
B\n");break;
case7:
printf("grade:
C\n");break;
case6:
printf("grade:
D\n");break;
case5:
case4:
case3:
case2:
case1:
case0:
printf("grade:
E\n");
}
}
2.将下面程序改为用while语句实现。
#include
voidmain()
{
intcock,rabbit;
for(cock=0;cock<=100;cock++)
{rabbit=100-cock;
if(cock*2+rabbit*4==300)
printf("cock=%d,rabbit=%d\n",cock,rabbit);
}
}
3.写出下面程序输出的结果。
#include
voidmain()
{
inti,j;
i=3;
j=++i;
printf("i=%d,j=%d\n",i,j);
}
4.输入一个字符,判别它是否大写字母,如果是,将它转换成小写字母;如果不是,不转换。
然后输出最后得到的字符。
请用条件表达式将空缺的语句补充完整。
#include
voidmain()
{charch;
scanf("%c",&ch);
;
printf("%c\n",ch);
}
四、1.假如你刚到某所中学参加工作,在新学期开学之初,该中学的校长委托你对刚入校的新生进行快速分班。
已知条件:
共有380名新生,新生入校成绩册已知。
分班要求:
依据"总分"由高到低进行"S"形分班(不考虑总分相同的情况,即总分相同的依据先后仍按原次序排序),共分6个班。
根据以上陈述,按以下要求编程实现。
(1)输入学生的任一名次,输出该学生的所在的班级。
(2)程序尽可能有一定的通用性,即分班的数目随机确定。
(3)程序能按“若要再次执行请按'Y'或'y',否则按其他任一键退出”提示信息循环执行。
2.输入一个华氏温度,要求输出摄氏温度。
公式为c=5/9(F-32),输出要求有文字说明,取2位小数。
参考答案
一、1.72.main3.12,345,678↙4.下标
5.16.双精度7.38.选择
二、1.A2.B3.A4.C
三、1.答:
可在canf("%f",&score);语句之后插入以下语句:
while(score>100||score<0)
{
printf("输入的分数应介于0-100之间,请重新输入:
");
scanf("%f",&score);
}
2.答:
#include
voidmain()
{
intcock,rabbit;
cock=0;
while(cock<=100)
{rabbit=100-cock;
if(cock*2+rabbit*4==300)
printf("cock=%d,rabbit=%d\n",cock,rabbit);
cock++;
}
}
3.答:
i=4,j=4
4.答:
ch=(ch>='A'&&ch<='Z')?
(ch+32):
ch
四、1.答:
参考代码如下:
#include
#include
voidmain()
{
intm,n,k;
charc;
do
{
printf("请输入分班的数目:
");
scanf("%d",&n);
printf("输入学生的名次:
");
scanf("%d",&m);
k=m%(2*n);
if(k>n)printf("该生所在的班级为%d班\n",2*n+1-k);
elseif(k>=1)printf("该生所在的班级为%d班\n",k);
elseprintf("该生所在的班级为%d班\n",1);
printf("若要再次执行请按\'Y\'或\'y\',否则按其他任一键退出。
");
c=getche();
printf("\n");
}while(c=='y'||c=='Y');
}
2.答:
参考代码如下:
#include
voidmain()
{floatc,f;
printf("请输入一个华氏温度:
");
scanf("%f",&f);
c=(5.0/9.0)*(f-32);/*注意5和9要用实型表示,否则5/9值为0*/
printf("摄氏温度为:
%5.2f\n",c);
}
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- C程序设计 程序设计 考题