c语言习题及答案-爱课程mooc

更新时间:2023-03-11 08:32:01 阅读量: 教育文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

第一章

1.1

题目内容:

使用printf()在屏幕上输出 hello world!

提示:

#include int main() { }

printf(\ return 0;

输入格式:

输出格式:

输出提示信息:\

输入样例:

输出样例:

hello world!

#include int main() { printf(\ return 0; }

1.2

在屏幕上输出多行信息(3分)

题目内容:

使用printf()函数在屏幕上输出以下多行信息: hello world! hello hit!

hello everyone! 提示:

在printf()函数中转义字符?\\n?表示换行。

输入格式:

输出格式: 输出提示信息: \\\输入样例:

输出样例: hello world! hello hit! hello everyone!

#include int main() {

printf(\ printf(\

printf(\ return 0; }

1.3

计算半圆弧的周长及半圆面积(3分)

题目内容:

编程并输出半径r=5.3的半圆弧的周长及该半圆的面积,

输入格式: 无

输出格式:

半圆的面积输出格式: \

半圆弧的周长输出格式: \输入样例:

输出样例: Area=44.123632

的取值为3.14159。要求半径r和

必须利用宏常量表示。

circumference=16.650427

#include #define PI 3.14159 #define R 5.3 int main() {

printf(\

printf(\ return 0; }

1.4

计算长方体体积(3分)

题目内容:

编程并输出长1.2、宽4.3、高6.4的长方体的体积。要求长方体的长、宽、高必须利用const常量表示。

输入格式: 无

输出格式:

长方体的体积输出格式:\

输入样例:

输出样例:

#include int main() {

const float l=1.2; const float x=4.3; const float y=6.4;

printf(\ return 0; }

第三章

3.1

计算两个数的平方和(3分)

题目内容:

从键盘读入两个实数,编程计算并输出它们的平方和,要求使用数学函数pow(x,y)计算平方值,输出结果保留2位小数。 提示:使用数学函数需要在程序中加入编译预处理命令 #include

以下为程序的输出示例: please input x and y: 1.2,3.4↙ result=13.00

输入格式: \

输出格式:

输入提示信息:\输出格式:\

输入样例:

输出样例:

#include #include int main() {

printf(\ float x, y;

scanf(\

printf(\ return 0; }

3.2

逆序数的拆分计算(3分)

题目内容:

从键盘输入一个4位数的整数,编程计算并输出它的逆序数(忽略整数前的正负号)。例如,输入-1234,忽略负号,由1234分离出其千位1、百位2、十位3、个位4,然后计算4*1000+3*100+2*10+1 = 4321,并输出4321。再将得到的逆序数4321拆分为两个2位数的正整数43和21,计算并输出拆分后的两个数的平方和的结果。

以下是程序的输出示例:

Input x: -1234↙ y=4321 a=43,b=21 result=2290

输入格式: \

输出格式:

输入提示信息:\逆序数输出格式:\

逆序数拆分后的输出格式:\平方和的输出格式:\

输入样例:

输出样例:

#include int main() {

printf(\ int x;

scanf(\ if(x<=0) {

x=-x; }

int a, b, c, d; a=x/1000; b=x/100; c=x/10; d=x;

printf(\ printf(\

printf(\ return 0; }

3.3

拆分英文名(3分)

题目内容:

从键盘输入某同学的英文名(小写输入,假设学生的英文名只包含3个字母。如: tom),编写程序在屏幕上输出该同学的英文名,且首字母大写(如: Tom)。同时输出组成该英文名的所有英文字符在26个英文字母中的序号。 以下为程序的输出示例: input your English name: tom↙ Tom t:20 o:15 m:13

输入格式: \

输出格式:

输入提示信息:\首字母大写的英文姓名的输出格式:\

姓名中每个字母在26个英文字母中的序号的输出格式:\

输入样例:

输出样例:

#include int main() {

printf(\ char a, b, c;

scanf(\ printf(\ printf(\ printf(\ printf(\ return 0; }

3.4

计算体指数(3分)

题目内容:

从键盘输入某人的身高(以厘米为单位,如174cm)和体重(以公斤为单位,如70公斤),将身高(以米为单位,如1.74m)和体重(以斤为单位,如140斤)输出在屏幕上,并按照以下公式计算并输出体指数,要求结果保留到小数点后2位。 假设体重为w公斤,身高为h米,则体指数的计算公式为:

以下是程序的输出示例:

input weight, height: 70,174↙ weight=140 height=1.74 t=23.12

输入格式: \

输出格式:

输入提示信息:\ (注意:在height和逗号之间有一个空格) 体重输出格式:\身高输出格式:\体指数输出格式:\

输入样例:

输出样例:

#include int main() {

int x, y;

printf(\ scanf(\ printf(\

printf(\

printf(\ return 0; }

第四章

4.1

数位拆分v2.0(4分)

题目内容:

从键盘上输入一个4位数的整数n,编写程序将其拆分为两个2位数的整数a和b,计算并输出拆分后的两个数的加、减、乘、除和求余运算的结果。例如n=-4321,设拆分后的两个整数为a,b,则a=-43,b=-21。除法运算结果要求精确到小数点后2位。求余和除法运算需要考虑除数为0的情况,即如果拆分后b=0,则输出提示信息\

程序的运行结果示例1: please input n: 1200↙ 12,0

sum=12,sub=12,multi=0 the second operater is zero!

程序的运行结果示例2: please input n: -2304↙ -23,-4

sum=-27,sub=-19,multi=92 dev=5.75,mod=-3

输入格式: \

输出格式:

输入提示信息:\拆分后的两个整数的输出格式:\

加法、减法、乘法的输出格式:\除法和求余的输出格式:\除数为0的提示信息:\

输入样例:

输出样例:

#include main() {

int m,x,y;

printf(\ scanf(\ x=m/100; y=m0;

printf(\

printf(\ if (y!=0){

printf(\

} else{

printf(\

} }

4.2

快递费用计算(4分) 题目内容: 上海市的某快递公司根据投送目的地距离公司的远近,将全国划分成5个区域: 0区 同城 2区 1500公里(含)以临近两省 内 北京,天津,河北,辽宁,河南,安微,江苏,浙陕西,湖北,江西,江 湖南,福建,广东,山西。 1区 3区 4区 1500——2500公里 2500公里以上 吉林,辽宁,甘肃,四川,重庆,青海,广西,云南,海南,新疆,西藏。 内蒙古,黑龙江,贵州。 上海 快递费按邮件重量计算,由起重费用、续重费用两部分构成: (1) 起重(首重)1公斤按起重资费计算(不足1公斤,按1公斤计算),超过首重的重量,按公斤(不足1公斤,按1公斤计算)收取续重费; (2) (3) (4) 同城起重资费10元,续重3元/公斤; 寄往1区(江浙两省)的邮件,起重资费10元,续重4元; 寄往其他地区的邮件,起重资费统一为15元。而续重部分,不同区域价格不同:2区的续重5元/公斤,3区的续重6.5元/公斤,4区的续重10元/公斤。 编写程序,从键盘输入邮件的目的区域编码和重量,计算并输出运费,计算结果保留2位小数。 提示:续重部分不足一公斤,按1公斤计算。因此,如包裹重量2.3公斤:1公斤算起重,剩余的1.3公斤算续重,不足1公斤按1公斤计算,1.3公斤折合续重为2公斤。如果重量应大于0、区域编号不能超出0-4的范围。 程序运行结果示例1: 4,4.5↙ Price: 55.00 程序运行结果示例2: 5,3.2↙ Error in Area Price: 0.00 输入格式: 用逗号分隔的两个数字,第一个表示区域、第二个是重量:\ 输出格式: 价格的输出格式:\区域错误的提示信息:\

输入样例:

输出样例:

#include #include int main() {

int area;

float weight,price,x1,x2;

scanf(\ if (weight<=1){ x1=1.0; } else{

x1=1.0;

x2=ceil(weight-1);

}

if (area>0&&area<=4){ switch(area){

case(0):price=x1*10+x2*3;break; case(1):price=x1*10+x2*4;break; case(2):price=x1*15+x2*5;break; case(3):price=x1*15+x2*6.5;break; case(4):price=x1*15+x2*10;break; }

printf(\ } else {

printf(\ printf(\ 0.00\\n\ }

return 0; }

4.3

数据区间判断(5分)

题目内容:

从键盘输入一个int型的正整数n(已知:0

程序运行结果示例1:

本文来源:https://www.bwwdw.com/article/7qww.html

Top