东北大学C语言程序答案
第一大题
13.根据下面的函数关系,对输入的每个x值,计算出相应的y值并输出结果。
(1)当x小于1时,y等于2+cos(x)
(2)当x大于等于1且x小于2时,y等于x的平方加上sin(x)
(3)当x大于等于2时,y等于(x-2)的平方根;
要求:按格式输出x和y的值,要求小数点后保留2位。
#include
#include
main()
{
float x,y;
printf("请输入x:");
scanf("%f",&x);
if(x<1)
y=cos(x)+2;
else if(x<2)
y=x*x+sin(x);
else
y=sqrt(x-2);
printf("%.2f",y);
}
14. 从键盘读入一个实数,对其进行四舍五入处理,要求精确到到小数点后两位。例如输入12.345,其结果为12.35;输入12.341,其结果为12.34。
#include
main()
{
float x;
printf("请输入一个小数:");
scanf("%f",&x);
x=x*100;
x=int(x+0.5);
x=x/100.0;
printf("%.2f\n",x);
}
15.从键盘输入任意一个字母,如果其为大写字母,则转为小写字母;如果其为小写字母,请转换为大写字母;其他情况保持不变,计算并输出。
#include
main()
{
char x;
printf("请输入一个字母: ");
scanf("%c",&x);
if(x>='a'&&x<='z')
printf("%c ",x-32);
else if(x>='A'&&x<='Z')
printf("%c ",x+32);
else
printf("%c ",x);
}
16. 从键盘输入三个整数a、b、c,输出其中最大的数。
#include
main()
{
int a,b,c;
printf("请输入三个整数:");
scanf("%d%d%d",&a,&b,&c);
if(a
a=b;
if(a
a=c;
printf("最大的数是%d\n",a);
}
17. 输入用单个字母表示的成绩信息,转换为百分制分数。说明:输入A,输出95;输入B,输出85;输入C,输出75;输入D,输出65;输入E,输出65.
#include
main()
{
printf("请输入一个字母: ");
char x;
scanf("%c",&x);
if(x=='A')
printf("95 ");
else if(x=='B')
printf("85 ");
else if(x=='C')
printf("75 ");
else if(x=='D')
printf("65 ");
else if(x=='E')
printf("65 ");
else
printf("错误 ");
}
18. 输入一个3位的正整数,判定该正整数是否为一个回文数。(所谓回文数是指正读和反读都相同的数,例如131)。
#include
main()
{
printf("请输入一个三位数:");
int x,a,b;
scanf("%d",&x);
a=x/100;
b=x%10;
if(a==b)
printf("%d是一个回文数",x);
else
printf("%d不是一个回文数",x);
}
19. 从键盘输入国际货币表示的商品价格,请转换为人民币。要求:仅仅考虑美元($)和欧元€,汇率分别6和8。例如输入$100,输出600,输入E100,输出800
#include
main()
{
printf("请输入商品价格:");
float x,y;
char a;
scanf("%c%f",&a,&x);
if(a=='$')
{
y=x*6;
printf("人民币为%f\n",y);
}
else if(a=='E')
{
y=x*8;
printf("人民币为%f\n",y);
}
else
{
printf("错误\n");
}
}
20. 从键盘输入三个整数,找处其最大和最小的数,并输出。
#include
main()
{
printf("请输入三个整数: ");
int a,b,c,x,t;
scanf("%d%d%d",&a,&b,&c);
x=a;
i