c 基础练习题及解答细节全解Word文档下载推荐.docx
- 文档编号:18556754
- 上传时间:2022-12-27
- 格式:DOCX
- 页数:30
- 大小:43.52KB
c 基础练习题及解答细节全解Word文档下载推荐.docx
《c 基础练习题及解答细节全解Word文档下载推荐.docx》由会员分享,可在线阅读,更多相关《c 基础练习题及解答细节全解Word文档下载推荐.docx(30页珍藏版)》请在冰豆网上搜索。
//完成省略号处的语句,将变量b的值赋给变量a
//完成省略号处的语句,将变量temp的值赋给变量b
//完成省略号处的语句,再次输出变量的值,观察其值是否交换了
a=b;
b=temp;
//完成省略号处的语句,将变量temp的值赋给变量b
“\n”;
3.使用cout对象,在输出窗口上显示如下的图形:
提示:
在C++的字符常量中,一个反斜线字符是‘\\’。
#include<
\t/***\\"
/*"
/*\t\tX\tX"
|*\t\tX\tX"
|*\tXXXXXXXXXXXXXX"
\\*\t\tX\tX"
\\*"
\t\\***/"
}
4.根据注释补充下面的程序中省略号处的语句,运行程序,并理解其语句及输出的含义:
{……;
//定义一个整型变量a
……;
//定义一个字符型变量b
b=‘a’;
//给变量b赋值为字符‘a’
//将变量b的值赋给变量a
“a=”<
//输出变量a的值
//输出变量b的值
{inta;
charb;
b='
a'
//给变量b赋值
//将变量b的值赋给变量a
实验二C++数据类型、操作符、表达式和语句
每题建立一个C++源文件。
当完成一个题目后,使用菜单“文件”—〉“关闭工作区”,再新建C++源文件做下一个题目。
1.在程序中定义整型变量x_int、双精度实数型变量y_double、字符型变量m_char和布尔型变量n_bool,并请用户输入x_int、y_double和m_char三个变量的值,之后给变量n_bool赋值为(m_char>
x_int),输出并观察(x_int/y_double)、(y_double-m_char)以及n_bool的值,理解这些输出的含义。
例如:
输入111
intx_int;
doubley_double;
charm_char;
booln_bool;
请输入一个整数、一个实数和一个字符:
x_int>
y_double>
m_char;
n_bool=m_char>
x_int;
x_int<
'
/'
y_double<
='
x_int/y_double<
-'
m_char<
y_double-m_char<
n_bool="
n_bool<
2.输出一个字符(这个字符可以是在程序开始赋值,或由用户输入)的前驱字符(ASCII编码表上该字符前面的字符)、后继字符(ASCII编码表上该字符后面的字符)及其ASCII码值。
charqianqu,zifu,houji;
请输入一个字符:
zifu;
qianqu=zifu-1;
houji=zifu+1;
qianqu<
'
zifu<
houji<
int(qianqu)<
int(zifu)<
int(houji)<
3.编写程序:
根据用户输入的球的半径值,分别计算球的表面积、体积和质量,并输出计算结果。
[提示]假设用户输入的球的半径的单位是米,球的密度为7.8kg/m3,球的表面积的计算公式为
,球的体积的计算公式为
。
其中π的值使用3.14即可。
constdoublepi=3.14,midu=7.8;
doublebanjing,bmianji,tiji,zhiliang;
请输入球的半径值(米):
banjing;
bmianji=4*pi*banjing*banjing;
tiji=bmianji*banjing/3;
zhiliang=tiji*midu;
该球的表面积为"
bmianji
<
平方米,体积为"
tiji
立方米,质量为"
zhiliang<
千克。
\n"
4.让用户输入一个秒数,编程实现将它转换成小时、分钟、秒来表示。
例如输入7278秒,则输出:
2小时1分18秒。
intzongm,shi,fen,miao;
cout<
请输入一个秒数:
cin>
zongm;
if(zongm>
0)
{
shi=zongm/3600;
fen=zongm%3600/60;
miao=zongm%60;
cout<
shi<
小时,"
<
fen<
分,"
miao<
秒\n"
}
实验三分支选择语句的应用
当完成一个题目后,使用菜单“文件”—〉“关闭工作空间”,再新建C++源文件做下一个题目。
1.用户输入两个整数x和y,问:
y是否是x的倍数?
编程输出回答“是”或“不是”。
iostream.h>
intx,y;
pleaseinputxandy:
x>
y;
if(y%x==0)
y<
是"
x<
的倍数。
else
不是"
2.编写程序求解如下分段函数。
doublex,y;
请输入自变量x的值:
x;
if(x<
12)y=x*x-162;
elseif(x<
=70)y=x+30;
elsey=100;
y="
3.单位编排活动小组,30岁及以下的分在第一组,40岁的分在第二组,50岁以上的分在第三组,其余年龄的分在第四组。
假设王五输入了自己的年龄,保存在变量age中,那么他应该分在第几组?
编程求解并输出答案。
intage;
请输入年龄:
age;
if(age>
=20&
&
age<
70)
{
if(age<
=30)
应分至第一组。
elseif(age==40)
应分至第二组。
elseif(age>
50)
应分至第三组。
else
应分至第四组。
}
输入年龄不合理!
4.根据用户输入的整数(1~7代表星期一~星期日),编程输出星期这一天对应的英文或中文名称。
例如,用户输入3,则输出应显示为“Wednsday”或“星期三”。
inta;
请输入星期(1~7):
a;
switch(a){
case1:
Monday\n"
break;
case2:
Tuesday\n"
case3:
Wednesday\n"
case4:
Thursday\n"
case5:
Friday\n"
case6:
Saturday\n"
case7:
Sunday\n"
default:
error\n"
5.已知标准体重的计算方法如下:
男性:
标准体重(kg)=身高(cm)-100
女性:
标准体重(kg)=身高(cm)-105
试编写程序,由用户输入其性别(‘m’代表男性,‘f’代表女性)和身高,程序计算并输出其标准体重。
charxingbie;
intshengao,tizhong;
请输入性别('
m'
代表男性,'
f'
代表女性):
xingbie;
if((xingbie=='
)||(xingbie=='
))
请输入身高(厘米):
shengao;
if(xingbie=='
)tizhong=shengao-105;
elsetizhong=shengao-100;
标准体重为"
tizhong<
6(选做).编程实现如下算术功能:
用户输入两个数字(可带小数)及一个算术操作符(’+’、’-‘、’*’或’/’),若输入的算术操作符不对,则输出提示信息(例如“无效的算术操作符,无法计算”),否则,即输出相应的算式及结果。
注意:
计算除法时,除数不能为0。
doublea,b;
charc;
请输入两个数字(可带小数)和一个操作符('
+'
、'
*'
或'
):
b>
c;
switch(c)
case'
:
+"
="
a+b<
-"
a-b<
*"
a*b<
if(b!
=0)
/"
a/b<
除数不能为0!
break;
无效的算数操作符,无法计算!
实验四循环语句的应用
1.设某县2000年工业总产值为200亿元,如果该县预计平均年工业总产值增长率为4.5%,那么多少年后该县年工业总产值将超500亿元?
(参考答案:
21年)
doublechanzhi=200;
intnianshu=0;
while(chanzhi<
=500)
nianshu++;
chanzhi*=1.045;
经过"
nianshu<
年后该县年工业总产值将超过500亿元。
2.请在屏幕上显示N行如图所示的数值(即第i行为“i:
i2i3”),其中N是个常量,其值在程序运行之初确定。
(要求:
用for语句实现)
constintN=10;
for(inti=1;
i<
=N;
i++)
\t"
i*i<
\t'
i*i*i<
3.编写循环程序,判断用户输入的一个数是正数还是负数,当输入的数大于0时,输出“正数”;
输入的数小于0时,输出“负数”;
输入的数为0时结束程序。
最后输出这些数相加的总和。
用do-while语句实现)
doublex;
do{
请输入一个数:
if(x>
0)cout<
正数\n"
elseif(x<
负数\n"
}while(x!
=0);
4.编程求解使不等式12+32+52+……+n2<
limit成立的最大n值。
其中limit可以定义为常量或定义为变量。
(实验数据:
limit=10时n=1;
limit=100时n=7;
limit=65535时n=71)
intlimit;
请输入limit="
limit;
intn=1,s=0;
while(s<
limit)
s+=n*n;
n+=2;
使该不等式成立的最大n值为:
(n-4)<
5(选做).请用户输入20个字符,编程实现将其中的小写字母转换为大写字母后输出。
例如,若用户输入“VkQK0Ms]\Q,mb/;
lGa;
q”,则应输出“VKQK0MS]\Q,MB/;
lGA;
Q”。
每一个英文字母的大写和小写的ASCII码相差32。
即,若字符型变量ch中是一个小写英文字母,则char(ch-32)即其对应的大写英文字母。
charch;
inti;
请输入20个字符:
i=0;
while(i<
20)
ch;
if(ch>
ch<
z'
)cout<
char(ch-32);
elsecout<
i++;
6(选做).有20只猴子吃掉50个桃子,已知每只公猴能吃5个桃子、每只母猴能吃4个桃子、每只小猴能吃2个桃子,编程求出这20只猴子中可以有公猴、母猴、小猴各多少只。
(答案:
0515或2216)
intgong,mu,xiao;
for(gong=0;
gong<
=10;
gong++)
for(mu=0;
mu<
=12;
mu++)
xiao=20-gong-mu;
if(5*gong+4*mu+2*xiao==50)
公侯"
gong<
只,母猴"
mu<
只,小猴"
xiao<
只\n"
实验五函数的概念及应用
1.编写一个函数doublef(doublex),求解如下分段函数。
求幂的数学函数是pow(x,y),求平方根的数学函数是sqrt(x)。
要使用这些数学函数,需要在文件开始添加预编译指令#include<
math.h>
doublef(double);
x=-28;
x="
y="
f(x)<
x=0;
x=1;
x=15;
x=75;
doublef(doublex)
doubley;
0)y=-62;
2)y=pow(x,5)-62;
38)y=x-32;
elsey=sqrt(x-2);
returny;
2.对任意给定的两个正整数m、n,求s=m!
+n!
要求先自定义一个C++函数,实现求一个正整数的阶乘,即doublejiecheng(intx),再在主函数中调用该自定义函数,根据用户输入的整数m和n,求出s的值。
doublejiecheng(int);
intm,n;
请输入两个正整数:
m>
n;
if(m>
0&
n>
m<
!
n<
(jiecheng(m)+jiecheng(n))<
您输入的不是两个正整数!
doublejiecheng(intn)
doubles=1;
i<
=n;
i++)
s*=i;
returns;
3.编写一个函数boolsxh(intn),判断一个3位正整数是否是水仙花数,若是返回true,否则返回false。
并在主函数中使用该函数找出所有的水仙花数打印在屏幕上。
说明:
若一个3位正整数的各位数字的立方和等于这个整数,则称之为“水仙花数”。
153是水仙花数,因为153=1*1*1+5*5*5+3*3*3。
boolsxh(int);
cout<
水仙花数:
for(inti=100;
1000;
if(sxh(i))cout<
boolsxh(intn)
intge=n%10;
intshi=n/10%10;
intbai=n/100;
if(ge*ge*ge+shi*shi*shi+bai*bai*bai==n)
returntrue;
returnfalse;
4(选做).编程实现,在屏幕上输出如下所示由’X’组成的X形图案。
constintLINE=9;
=LINE;
for(intj=1;
j<
j++)
if(i==j||i==LINE+1-j)cout<
X'
elsecout<
5(选做).编写一个函数,实现在屏幕上打印出九九乘法表。
基本效果如下图1,同学们可自己作进一步的美化,如下图2。
图2
两层循环嵌套使用。
图1
iomanip.h>
voidfirst();
voidsecond();
基本九九表:
\n\n"
first();
改进后的九九表:
second();
//基本(图1)
v
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基础练习题及解答细节全解 基础 练习题 解答 细节