中南大学C程序设计实践思考题答案
- 格式:doc
- 大小:32.72 KB
- 文档页数:19
实验1 C++基础
6.编写程序,输入某大写字母的ASCII码值,输出该字母的对应小写字母。
#include
using namespace std;
int main()
{
int i;
cin>>i;
if(i>=65 && 1<=90 )
cout<
else
潣瑵?输入有误<
return 0;
}
实验2
三、实验思考
1.输入直角三角形的两条直角边长,调用平方根库函数sqrt来求斜边的长度
#include
#include
using namespace std;
int main()
{ float a,b,c;
潣瑵?请输入直角三角形的两条边长:;
cin>>a>>b;
c=sqrt(a*a+b*b);
潣瑵?直角三角形的斜边=<
return 0;
}
2.从键盘输入一个字符,如果输入的是英文大写字母,则将它转换成小写字母后输出,否则输出原来输入的字符。
#include
using namespace std;
int main()
{
char c;
潣瑵?请输入一个字符:;
cin>>c;
if(c>='A'&& c<='Z')
c+='a'-'A';
cout<
return 0; }
3.输入一个学生的成绩,如高于60分,则输出“pass”;否则,输出“failed”。
#include
using namespace std;
int main()
{
float grade;
潣瑵?请输入成绩:;
cin>>grade;
if(grade>=60)
cout<
else
cout<
return 0;
}
4. 计算分段函数
#include
#include
using namespace std;
int main()
{
double x,y;
潣瑵?请输入一个数x:;
cin>>x;
if(!x)
y=cos(x)-pow(x,2)+3*x;
else
y=sin(x)+sqrt(pow(x,2)+1)+3*x;
cout<
return 0;
}
5. 从键盘上输入1~7之间的一个数字,输出其对应星期几的英文表示。
#include
using namespace std;
int main()
{
char c;
cout<
cin>>c;
switch(c)
{
case '1':cout<
case '2':cout<
case '3':cout<
case '4':cout<
case '5':cout<
case '6':cout<
case '7':cout<
default: cout<< wrong number;
}
cout<
return 0;
}
6. 设计一个简单的计算器程序,能够进行加、减、乘、除简单运算并显示结果。
#include using namespace std;
int main()
{
潣瑵?输入简单的算术表达式:(数 操作符 数);
int leftOperand,rightOperand;
char Operator;
cin>>leftOperand>>Operator>>rightOperand;
int result;
switch(Operator)
{
case '+':
result=leftOperand+rightOperand;break;
case '-':
result=leftOperand-rightOperand;break;
case '*':
result=leftOperand*rightOperand;break;
case '/':
if(rightOperand!=0)
result=leftOperand/rightOperand;
else
{
潣瑵?除数为0,除法不能进行<
return 0;
}
break;
default:
潣瑵?灏牥瑡牯?是本程序不支持的操作。<
return 0;
}
cout<
return 0;
}
实验3
三、思考题参考程序
n12k n.编程计算表达式 的值。11k
#include
using namespace std;
int main()
{
int n,k=1,sum=0,mean;
潣瑵?请输入n的值: ;
cin>>n;
while(k<=n) {
sum+= k*k;
k++;
}
if (n>0)
mean=sum/n;
else
mean=0;
cout<<~n个整数平方和的均值=<
return 0;
}
2.输入两个正整数,判别它们是否互为互质数。所谓互质数,就是最大公约数是1。
#include
using namespace std;
int main()
{
int m,n,r;
潣瑵?请输入两个正整数:;
cin>>m>>n;
cout<
if(m
{ r=m;m=n;n=r;}
while(r=m%n)
{
m=n;
n=r;
}
if(n==1)
潣瑵?是互质数 <
else
cout<<”不是互质数”<
return 0;
}
3.编写程序,输出从公元2000年至3000年间所有闰年的年号。
#include
using namespace std;
int main()
{
int year;
潣瑵?公元2000年至3000年间闰年的年号:\n;
for(year=2000;year<=3000;year++)
if((year%4==0 && year_x0010_0 !=0)||(year@0==0))
cout<
cout<
}
4.编写程序模拟猴子吃桃子问题:猴子第1天摘下若干桃子,当即吃了一半,还不过瘾,又多吃了一个。第2天将剩下的桃子又吃了一半,又多吃一个。以后每天都吃了前一天剩下的一半零1个。到了第10天,只剩下了一个桃子。请问猴子第一天共摘了多少个桃子?
方法1:
#include
using namespace std;
int main()
{
int day,qian,hou=1;
for(day=9;day>=1;day--)
{
qian=(hou+1)*2;
hou=qian;
}
cout<
return 0;
}
运行结果:1534
方法2:
#include
using namespace std;
int main()
{
int day,number=1;
for(day=9;day>=1;day--)
number=(number+1)*2;
cout<
return 0;
}
方法3:
#include
using namespace std;
int peach(int);
int main()
{
潣瑵?第1天共摘了?瀼慥档ㄨ?尼个<
return 0;
}
int peach(int day)
{
int number;
if(day==10)