gpt4 book ai didi

c - C语言输入

转载 作者:行者123 更新时间:2023-11-30 21:45:47 25 4
gpt4 key购买 nike

我希望代码从用户处接收 float ,但仅存储小数点后两位数字

例如,如果用户输入

a=123.123456789

值等于 123.12

#include <stdio.h>

int func(int x,int digit,int con,char* s)
{
int v;
v=x/digit;
v=v*digit;
x-=v;
if(con==1){
printf("%d %s(s) de R$ %.2f\n",(v/digit),s,(float)digit/100);
return x;
}
printf("%d %s(s) de R$ %.2f\n",(v/digit),s,(float)digit);
return x;
}
int main() {
int x=0;
float y;//if change to double the result will be true
scanf("%f",&y);
//y = ((int)(100.0 * y)) / 100.0;
x=(int)y;
y=y-x;

printf("NOTAS:\n");

char* arr="nota";
x=func(x,100,0,arr);
x=func(x,50,0,arr);
x=func(x,20,0,arr);
x=func(x,10,0,arr);
x=func(x,5,0,arr);
x=func(x,2,0,arr);
printf("MOEDAS:\n");
arr="moeda";
x=func(x,1,0,arr);
//mod
x=y*100;
x=func(x,50,1,arr);
x=func(x,25,1,arr);
x=func(x,10,1,arr);
x=func(x,5,1,arr);
x=func(x,1,1,arr);

return 0;
}

问题将出现在: https://www.urionlinejudge.com.br/judge/en/problems/view/1021

最佳答案

如果您只想四舍五入到小数点后两位,您可以尝试以下操作:

a = ((int) (a*100))/100.0;

关于c - C语言输入,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29549631/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com