分类一
编写一程序P1-111.C实现以下功能
x(x只考虑整数int且必须定义为int、但F(x)完全可能超过int的表示范围)通过键盘输入(输入前 给出提示Please in put x:),然后计算并在屏幕上输出函数值。注意,图1中的括号不是 <>而是(),编
程可用素材:prin tf("Pleasein put x:")...。
厂-5x+27 (x<0)
F(x)=卜 7909(x=0)
L 2x-1(x>0)
程序的运行效果应类似地如图1所示,图1中的3是从键盘输入的内容。
口卜1
Please input
u
[
20
#i nclude < stdio.h >
int main(v oid)
{
int x;
double y;
prin tf("Please in put x:");
sca nf("%d", &x);
if (x > 0)
{
y = (double) 2 * x - 1;
}
else
{
if (x == 0)
{
y = (double) 7909;
}
else
{
y = (double) - 5 * x + 27;
}
}
prin tf("\nF(%d) = %.0lf\n", x, y);
return 0;
}
P1-113已知某银行整存整取存款不同期限的年息利率分别为:3.15%期限一年,3.63%期限二
年,4.02%期限三年,4.69%期限五年,5.36%期限八年。从键盘上输入存钱的本金(以元为单位,必须 定义为int且应考虑金额很大的情况)和存款期限(只考虑1,2,3,5,8),求到期时能从银行得到的利息 (以元为单位,应考虑有小数,不计复利)。编程可用素材:
prin tf("\nPleasein put benjin,cun qi:")...、prin tf("\nlixi= ...yua n"...。
程序的运行效果应类似地如图1所示,图1中的10000,8是从键盘输入的内容。
#in clude < stdio.h > int main(v oid)
{
int benjin, cun qi; double lixi; double mon ey;
prin tf("\nPlease in put benjin,cun qi:"); scanf("%d,%d", &benjin, &cunqi);
money = benjin;
if ( cunqi == 1 )
{
lixi = money * cunqi * 3.15 / 100;
}
else
{
if ( cunqi == 2 )
{
lixi = money * cunqi * 3.63 / 100;
}
else
{
if ( cunqi == 3 )
{
lixi = money * cunqi * 4.02 / 100;
}
else
{
if ( cunqi == 5 )
{
lixi = money * cunqi * 4.69 / 100;
}
else
{
if ( cunqi == 8 )
{
lixi = money * cunqi *5.36 / 100;
}
}
prin tf("\nlixi = %.2f yua n\n", lixi);
return 0;
}
P1-114编写一个简单计算器程序,输入格式为: datal op data2。其中datal和data2是参加 运算的两个数(data1、data2必须定义为int,但二者相加可能超出int能表示的范围),op为运算符, 它的取值只能是+、-、*、/、%
程序的运行效果应类似地如图1、图2、图3、图4所示,图1中的3000 + 2000、图2中的3000 %2000、 图3中的3000%0和图4中的3000/ 0是从键盘输入的内容。
#in elude < stdio.h > int main( void )
{
int datal, data2; double jieguo;
char op;
printf("\nPlease input data1 op data2:"); scanf("%d %c %d", &data1, &op, &data2);
switch ( op ) {
case '+':
jieguo = ( double ) data1 + data2; printf("\n%d%c%d=%.0f\n", data1, op, data2, jieguo); break;
case '-':
jieguo = ( double ) data1 - data2; printf("\n%d%c%d=%.0f\n", data1, op, data2, jieguo);