77范文网 - 专业文章范例文档资料分享平台

[新]C语言期末复习,经典练习题+知识点总结+模拟考题 三位一体,

来源:网络收集 时间:2020-03-26 下载这篇文档 手机版
说明:文章内容仅供预览,部分内容可能不全,需要完整文档或者需要复制内容,请下载word后使用。下载word有问题请添加微信号:或QQ: 处理(尽可能给您提供完整文档),感谢您的支持与谅解。点击这里给我发消息

C语言期末复习(平时练习答案)

[特别适用于千千万北航学子]

考试重点:(编程题)排序,选择与冒泡排序,,各种进制转换。。。。]

第二次大作业— 前驱、后继字符

1. 【问题描述】 从键盘输入一个字符,求出它的前驱和后继字符(按照ASCII码值排序),并按照从小到大的顺序输出这三个字符和对应的ASCII值。 【输入形式】 从键盘输入一个字符 【输出形式】 按两行输出: 第一行按照从小到大的顺序输出这三个字符,并以一个空格隔开; 第二行按照从小到大的顺序输出三个字符对应的ASCII值,并以一个空格隔开。 【输入样例】 b 【输出样例】 a b c 97 98 99 【样例说明】 输入字符b,b的前驱字符是a,后继字符是c,第一行按照从小到大的顺序输出a b c;第二行输出对应的ASCII值97 98 99 【评分标准】结果完全正确得20分,每个测试点4分。提交程序名为:c0103.c。

//*从键盘输入一个字符,求出它的前驱和后继字符(按照ASCII码值排序),并按照从小到大的顺序输出这三个字符和对应的ASCII值。*// #include int main() { char c=\

1 / 30

printf(\ scanf(\ //*从键盘输入一个字符*// printf(\%c %c %c\\n\第一行按照从小到大的顺序输出这三个字符,并以一个空格隔开*// printf(\第二行按照从小到大的顺序输出三个字符对应的ASCII值,并以一个空格隔开。*// return 0; }

当前编程题:第二次大作业---数值变换 2. 【问题描述】编写一程序,从键盘输入输入一个三位正整数,然后反向输出对应的数,如果输入的数不是三位正整数,则输出-1。【输入形式】从键盘输入三位的正整数。【输出形式】输出交换后的正整数值。【输入样例】 356 【输出样例】 653 【样例说明】从键盘输入的正整数值为356,将该数的个位与百位互换,所得结果为653.如果输入的正整数为300,则输出为3。【评分标准】结果完全正确得20分,每个测试点4分。提交程序名为:c0102.c。

//*编写一程序,从键盘输入输入一个三位正整数,然后反向输出对应的数,如果输入的数不是三位正整数,则输出-1。 *// #include void main() { int a,d,e,f,sum; //*定义变量*// printf(\请输入一个三位正整数,\\n\ scanf(\ //* 输入一个数*//

if(a>0) //*对输入的值的正负做判断*// { d=a/100; e=(a-d*100)/10; f=a; sum=100*f+10*e+d; printf(\ //*输出交换后的正整数值。*//

} 当前编程题:第二次大作业---正整数的打印 else 4. 【问题描述】给出一个不多于5位的正 printf(\ 整数,要求: 1.求出它是几位数。 //*如果输入的数不是三位正整数,则输出2.分别打印出每一位数字。 3.按照逆序-1*// 打印出每一位数字。【输入形式】控制台输} 入该正整数。【输出形式】控制台分行输出 输出结果。【样例输入】1234 【样例输出】 当前编程题:第二次大作业---计算平均值 4 1234 4321 【样例说明】1234位数为4,3. 【问题描述】从键盘输入三个整数,分别存入x,y,z三个整型变量中,计算并输出三个数的和以及平均值。【输入形式】从键盘输入三个整数,整数之间以空格隔开。【输出形式】在屏幕上分两行显示结果:第一行为三个数的和,整数形式输出;第二行为三个

数的平均值,浮点数形式输出,小数点后保留两位小数。【输入样例】 3 2 3 【输出样例】 8 2.67 【样例说明】 3、2、3的和为8,所以第一行输出8;第二行输出3、2、3

的平均值2.67(保留两位小数)。【评分标准】

结果完全正确得20分,每个测试点4分。

提交程序名为:c0101.c。

//*从键盘输入三个整数,分别存入x,y,z

三个整型变量中,计算并输出三个数的和以

及平均值*// #include int main() { int x,y,z,sum; //*定义变量*//

float average; scanf(\ //*从键盘输入三个整数,整数之间以空格

隔开*//

sum=x+y+z; average = (float)sum/3; //*第一行为三个数的和,整数形式输出;

*// printf(\ printf(\ //* 第二行为三个数的平均值,浮点数形式

输出,小数点后保留两位小数*//

return 0; } 2 / 30

分别为1,2,3,4,逆序为4321 【评分标准】该题共有三个输出整数,完全正确得10分,每答错一个扣掉4分,直至得分为0。本题要求上传程序的源文件。所采用语言可以是C(.c)。主文件名设定为intprint.c

//*给出一个不多于5位的正整数,要求: 1.求出它是几位数。 2.分别打印出每一位数字。 3.按照逆序打印出每一位数字。

*// #include void main() { long int a; int n,b,c,d,e,f; printf(\请输入一个整数(0~99999):\ scanf(\ if(a>9999) n=5; else

if(a>999) n=4; else

if(a>99) n=3; else if(a>9)

n=2; else n=1; printf(\这个数的位数

=%d\\n\ f=a/10000; e=a000/1000;

d=a00000/100;

c=a000000/10;

b=a000000; switch(n) { case 5:

printf(\

printf(\

k; case 4: printf(\ printf(\ case 3: printf(\

printf(\;

case 2:

printf(\ printf(\ case 1: printf(\ printf(\ } }

当前编程题:第二次大作业---简易计算器5. 【问题描述】编程实现简易的计算器:读入两个整数运算数(data1和data2)及一个运算符(op),计算表达式data1 op data2的值,其中op可以是+,-,*,/。【输入形式】控制台输入运算数和运算符: 1.首先输入以空格分隔的两个整数,分别是data1和data2;2.

3 / 30

输入一个字符作为运算符op,op可以是’+’,’-’,’*’,’/’。输入时,data1、data2、op之间各留有一个空格。具体格式见样例输入。【输出形式】控制台输出运算结果。作除法运算时,若能够整除,则输出为整数,否则输出结果小数点后应保留两位有效数字。【样例输入】 23 5 * 【样例输出】 115 【样例说明】输入中先后输入第一个运算数23,第二个运算数5,运算符’*’,要求对23和5进行乘法运算。计算结果为115。【评分标准】该题共20分,每个测试点4分。本题要求上传程序的源文件。所采用语言可以是C(.c).即所上传的文件名为calculator.c //*编程实现简易的计算器:读入两个整数运算数(data1和data2)及一个运算符(op),计算表达式data1 op data2的值,其中op可以是+,-,*,/。 *// #include int main() { int data1,data2,c; //定义变量// double d; char op; scanf(\%c\ //输入运算数和运算符// if(op=='+') //进行判断// { c=data1+data2; printf(\ } else

if(op=='-') { c=data1-data2; printf(\ } else if(op=='*') {

c=data1*data2; printf(\

}

else if(op=='/') { d=(double)data1/data2; printf(\ } return 0; }

找最大最小整数

1. 【问题描述】编写一个程序,用户输入若干整数,试找出其中的最大数和最小数。 【输入形式】用户在第一行待输入数据个数,在第二行输入数据。

【输出形式】程序在下一行输出数据的最大值和最小值 【样例输入】 5

89 62 96 74 52 【样例输出】96 52

【样例说明】用户第一次输入的为数据个数,在下一行依次输入数据。输出为5个数中的最大值和最小值,输出时候两个数之间用空格分隔。

【评分标准】结果完全正确得20分,每个测试点4分。提交程序名为:getmaxandmin.c 矩形相交 2.

【问题描述】

4 / 30

平面上有两个矩形A和B,其位置是任意的。

编程求出其相交部分(如图中阴影部分)的面积。(0≤a,b≤1000)

【输

入形式】

从标准输入读取两行以空格分隔的整数,格式如下: Ax1 Ay1 Ax2 Ay2 Bx1 By1 Bx2 By2

其中(x1,y1)和(x2,y2)为矩形对角线上端点的坐标。各坐标值均为整数,取值在0至1000之间。

【输出形式】

向标准输出打印一个整数,是两矩形相交部分的面积(可能为0)。在输出末尾要有一个回车符。 【输入样例】 0 0 2 2 1 1 3 4

【输出样例】 1

【评分标准】

结果完全正确得20分,每个测试点4分,提交程序文件名为area.c。

[红色为采用答案

#include #include

struct point { int x;

int y; }A1,A2,B1,B2;

struct rect { struct point p1; struct point p2; }R1,R2;

struct point makepoint(int x,int y);

struct rect makerect(struct point p1,struct point p2);

struct rect guifanrect(struct rect R);

#define max(A,B) ((A)>(B)?(A):(B)) #define min(A,B) ((A)>(B)?(B):(A)) main() {

5 / 30

int i,num1[4],num2[4],area;

for(i=0;i<4;i++) scanf(\ for(i=0;i<4;i++) scanf(\

R1 = makerect(A1 =

makepoint(num1[0],num1[1]), A2 = makepoint(num1[2],num1[3]));

R2 = makerect(B1 =

makepoint(num2[0],num2[1]), B2 = makepoint(num2[2],num2[3]));

R1 = guifanrect(R1); R2 = guifanrect(R2);

if( R1.p2.x <= R2.p1.x || R1.p2.y <= R2.p1.y ||

R1.p1.x >= R2.p2.x || R1.p1.y >= R2.p2.y) area = 0; else

area = abs(max(R1.p1.x, R2.p1.x) - min(R1.p2.x, R2.p2.x)) *

abs(max(R1.p1.y, R2.p1.y) - min(R1.p2.y, R2.p2.y));

printf(\}

百度搜索“77cn”或“免费范文网”即可找到本站免费阅读全部范文。收藏本站方便下次阅读,免费范文网,提供经典小说教育文库[新]C语言期末复习,经典练习题+知识点总结+模拟考题 三位一体,在线全文阅读。

[新]C语言期末复习,经典练习题+知识点总结+模拟考题 三位一体,.doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印 下载失败或者文档不完整,请联系客服人员解决!
本文链接:https://www.77cn.com.cn/wenku/jiaoyu/875296.html(转载请注明文章来源)
Copyright © 2008-2022 免费范文网 版权所有
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ: 邮箱:tiandhx2@hotmail.com
苏ICP备16052595号-18
× 注册会员免费下载(下载后可以自由复制和排版)
注册会员下载
全站内容免费自由复制
注册会员下载
全站内容免费自由复制
注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: