2016计算机学科夏令营上机考试 A:分段函数 printf输出格式控制

总时间限制: 1000ms 内存限制: 65536kB 题目
描述
编写程序,计算下列分段函数y=f(x)的值。

y=-x+2.5; 0 <= x < 5

y=2-1.5(x-3)(x-3); 5 <= x < 10

y=x/2-1.5; 10 <= x < 20

输入
一个浮点数N,0 <= N < 20
输出
输出N对应的分段函数值:f(N)。结果保留到小数点后三位。
样例输入

1.0

样例输出

1.500

思路
主要考察printf输出格式控制
代码

#include<iostream>
#include<stdio.h>
using namespace std;
int main()
{
    double N,y;
    freopen("input.txt","r",stdin);
    while(cin>>N)
    {
        if(N>=0.&&N<5.)
    {
        y=2.5-N;
    }
    else if(N>=5.&&N<10.)
    {
        y=2.-1.5*(N-3.)*(N-3.);
    }
    else if(N>=10.&&N<20.)
    {
        y=N/2.-1.5;
    }
    printf("%.3f\n",y);
    }
    return 0;
}

常见格式使用样例:

[百练](http://noi.openjudge.cn/ch0101/07/)
#include<stdio.h> 
#include<string.h> 
int main() 
{ 
char c, s[20]; 
int a=1234;
float f=3.141592653589; 
double x=0.12345678912345678; 
strcpy(s, "Hello,World"); 
c='\x41'; 
printf("a=%d\n", a);//按照十进制整数格式输出,显示 a=1234
printf("a=%d%%\n", a);//输出%号 结果 a=1234%
printf("a=%6d\n", a);//输出6位十进制整数 左边补空格,显示 a= 1234
printf("a=%06d\n", a);//输出6位十进制整数 左边补0,显示 a=001234
printf("a=%2d\n", a);//a超过2位,按实际输出 a=1234
printf("a=%-6d\n", a);///输出6位十进制整数 右边补空格,显示 a=1234
printf("f=%f\n", f);//浮点数有效数字是7位,结果 f=3.141593
printf("f=6.4f\n", f);//输出6列,小数点后4位,结果 f=3.1416
printf("x=%lf\n", x);//输出长浮点数 x=0.123457
printf("x=%18.16lf\n", x);//输出18列,小数点后16位,x=0.1234567891234567
printf("c=%c\n", c);     //输出字符 c=A
printf("c=%x\n", c);//以十六进制输出字符的ASCII码 c=41
printf("s[]=%s\n", s);//输出数组字符串s[]=Hello,World
printf("s[]=%6.9s\n", s);//输出最多9个字符的字符串 s[]=Hello,Wor
如果输出十六进制则%x 如果输出八进制则%o
对于十六进制如果想要0x 则%#x 如果想要0X则%#X
对于八进制如果想要0 则%#o
return 0;
}

参考链接

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值