}
5(选做).请用户输入20个字符,编程实现将其中的小写字母转换为大写字母后输出。
例如,若用户输入“VkQK0Ms]\Q,mb/;lGa;q”,则应输出“VKQK0MS]\Q,MB/;lGA;Q”。
提示:
每一个英文字母的大写和小写的ASCII码相差32。
即,若字符型变量ch中是一个小写英文字母,则char(ch-32)即其对应的大写英文字母。
#include
voidmain()
{
charch;
inti;
cout<<"请输入20个字符:
";
i=0;
while(i<20)
{
cin>>ch;
if(ch>='a'&&ch<='z')cout<elsecout<i++;
}
cout<}
6(选做).有20只猴子吃掉50个桃子,已知每只公猴能吃5个桃子、每只母猴能吃4个桃子、每只小猴能吃2个桃子,编程求出这20只猴子中可以有公猴、母猴、小猴各多少只。
(答案:
0515或2216)
#include
voidmain()
{
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)
cout<<"公侯"<}
实验五函数的概念及应用
1.编写一个函数doublef(doublex),求解如下分段函数。
提示:
求幂的数学函数是pow(x,y),求平方根的数学函数是sqrt(x)。
要使用这些数学函数,需要在文件开始添加预编译指令#include。
#include
#include
doublef(double);
voidmain()
{
doublex;
x=-28;
cout<<"x="<x=0;
cout<<"x="<x=1;
cout<<"x="<x=15;
cout<<"x="<x=75;
cout<<"x="<}
doublef(doublex)
{
doubley;
if(x<0)y=-62;
elseif(x<2)y=pow(x,5)-62;
elseif(x<38)y=x-32;
elsey=sqrt(x-2);
returny;
}
2.对任意给定的两个正整数m、n,求s=m!
+n!
。
要求先自定义一个C++函数,实现求一个正整数的阶乘,即doublejiecheng(intx),再在主函数中调用该自定义函数,根据用户输入的整数m和n,求出s的值。
#include
doublejiecheng(int);
voidmain()
{
intm,n;
cout<<"请输入两个正整数:
";
cin>>m>>n;
if(m>0&&n>0)
cout<+"<="<<(jiecheng(m)+jiecheng(n))<else
cout<<"您输入的不是两个正整数!
\n";
}
doublejiecheng(intn)
{
doubles=1;
for(inti=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。
#include
boolsxh(int);
voidmain()
{
cout<<"水仙花数:
\n";
for(inti=100;i<1000;i++)
if(sxh(i))cout<
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;
else
returnfalse;
}
4(选做).编程实现,在屏幕上输出如下所示由’X’组成的X形图案。
#include
voidmain()
{
constintLINE=9;
for(inti=1;i<=LINE;i++)
{
for(intj=1;j<=LINE;j++)
{
if(i==j||i==LINE+1-j)cout<<'X';
elsecout<<'';
}
cout<}
}
5(选做).编写一个函数,实现在屏幕上打印出九九乘法表。
基本效果如下图1,同学们可自己作进一步的美化,如下图2。
图2
提示:
两层循环嵌套使用。
图1
#include
#include
voidfirst();
voidsecond();
voidmain()
{
cout<<"基本九九表:
\n\n";
first();
cout<cout<<"改进后的九九表:
\n\n";
second();
cout<}
//基本(图1)