⑴ c语言编程用一元人民币换成1分,2分,5分的兑换方案
#include<stdio.h>
main()
{
float x=1.0;
float a=0.01,b=0.02,c=0.05;
int i,j,k;
int count=0;//记录方案个数
for(i=0;i<100;i++)
for(j=0;j<50;j++)
for(k=0;k<20;k++)
if((i*a+j*b+k*c)==1)
printf("方案%d: %d张1分 %d张2分 %d张5分 \n",count++,i,j,k);
getch();
}
//用最方便的方法,穷取法
//可能我和你的编译器不同,所以有误
⑵ C语言中, 从键盘输入国际货币表示的商品价格,请转换为人民币.要求:仅仅考虑美元($)和欧元
float x,y; //x美元,y人民币
scanf("%f",&x);
y=x*汇率
printf("%f",y);
⑶ 用C语言编写汇率计算器
#include<stdio.h>
#include<windows.h>
#include<math.h>
#define p 3.1415926
#define r p/180 //r=p/180,p=3.14....,p/180是求的1弧度,下面sin(里面要求的是弧度),sin(30弧度)=0.5。 void main()
{
float i,j,k;
int l,m,n,a[10];
char cmd;
LOOP:
system("cls");
printf("***********************\n");
printf("*******小寒计算器******\n");
printf("***********************\n");
printf("\n\n本计算器提供+、-、*、/四种运算。\n");
printf("p-代表圆周率pai。\n");
printf("a-代表十进制转换为二进制。\n");
printf("b-代表十进制转换为八进制。\n");
printf("c-代表十进制转换为十六进制。\n");
printf("d-代表该数值开方。\n");
printf("e-代表该数值开立方。\n");
printf("f-代表求几次方。\n");
printf("S-代表sin。\n");
printf("C-代表cos。\n");
printf("T-代表tan。\n");
printf("\n\n请输入要计算的数字和运算符号,输入逗#地时,结束;输入逗!地时复位。\n");
scanf("%f",&k);
while((cmd=getchar())!='#')
{
if(i!=0)
switch(cmd)
{
case '+': scanf("%f",&i);
k=k+i;
printf("=%5.2f",k);
break; case '-': scanf("%f",&i);
k=k-i;
printf("=%5.2f",k);
break; case '*': scanf("%f",&i);
k=k*i;
printf("=%5.2f",k);
break; case '/': scanf("%f",&i);
k=k/i;
printf("=%5.2f",k);
break;
case 'p': k=k*p;
printf("%6.4f",k);
break; case 'f': printf("请输入要求该数字的几次方:");
scanf("%d",&n);
i=k;
for(m=0;m<n-1;m++)
k=k*i;
printf("%5.2f",k);
break; case 'a': printf("转换成二进制\n");
m=0;
while((int)k>0)
{
l=k;
k=k/2;
l=l%2;
a[m]=l;
m++;
}
for(n=m-1;n>=0;n--)
printf("%d",a[n]);
break; case 'b': printf("转换成八进制\n");
m=0;
while((int)k>0)
{
l=k;
k=k/8;
l=l%8;
a[m]=l;
m++;
}
for(n=m-1;n>=0;n--)
printf("%d",a[n]);
break;
case 'c': printf("转换成十六进制\n");
m=0;
while((int)k>0)
{
l=k;
k=k/16;
l=l%16;
a[m]=l;
m++;
}
for(n=m-1;n>=0;n--)
{
if(a[n]==10)
{ printf("A");continue;}
else if(a[n]==11)
{ printf("B");continue;}
else if(a[n]==12)
{ printf("C");continue;}
else if(a[n]==13)
{ printf("D");continue;}
else if(a[n]==14)
{ printf("E");continue;}
else if(a[n]==15)
{ printf("F");continue;} printf("%d",a[n]);
}
break;
case 'e': printf("该数值开立方得\n");
i=pow(k,1.0/3);
printf("%5.2f",i );
break;
case 'd': printf("该数值开方得\n");
i=k/2;
j=sqrt(k);
printf("%5.2f",j);
break; case 'S': k=k*r;
i=sin(k);
printf("%5.2f",i);
break;
case 'C': k=k*r;
i=cos(k);
printf("%5.2f",i);
break; case 'T': k=k*r;
i=tan(k);
printf("%5.2f",i);
break; case '!': goto LOOP;
}
}
}
⑷ 用C实现一计算器 包括四则运算 进制 和汇率之间的转换
这个支持表达式,比如(3+2*5)*3+4
/*
simple integer arithmetic calculator according to the EBNF
<exp> -> <term>{<addop><term>}
<addop>->+|-
<term>-><factor>{<mulop><factor>}
<mulop> -> *
<factor> -> ( <exp> )| Number
Input a line of text from stdin
Outputs "Error" or the result.
*/
#include <stdio.h>
#include <stdlib.h>
#include <ctype.h>
char token;/*global token variable*/
/*function prototypes for recursive calls*/
int exp(void);
int term(void);
int factor(void);
void error(void)
{
fprintf(stderr,"Error\n");
exit(1);
}
void match(char expectedToken)
{
if(token==expectedToken)token=getchar();
else error();
}
main()
{
int result;
token = getchar();/*load token with first character for lookahead*/
result = exp();
if(token=='\n')/*check for end of line */
printf("Result = %d\n",result);
else error();/*extraneous cahrs on line*/
return 0;
}
int exp(void)
{
int temp = term();
while((token=='+')||(token=='-'))
switch(token)
{
case '+':
match('+');
temp+=term();
break;
case '-':
match('-');
temp-=term();
break;
}
return temp;
}
int term(void)
{
int temp = factor();
while (token=='*')
{
match('*');
temp*=factor();
}
return temp;
}
int factor(void)
{
int temp;
if(token=='('){
match('(');
temp = exp();
match(')');
}
else if(isdigit(token)){
ungetc(token,stdin);
scanf("%d",&temp);
token = getchar();
}
else error();
return temp;
}
⑸ C语言,零钱兑换问题
int sum = 0;
for(int i = 0;i <= 100 / 5;++i)
{
for(int j = 0;j <= 100 / 10;++j)
{
for(int k = 0;k <= 100 / 20;++k)
{
if(5 * i + j * 10 + k * 20 == 100)
sum++;
}
}
}
cout<<sum<<endl;
cout<<endl;
//大概意思就是 每种都循环遍历 结果等于100的 记下; 下面那个代码 漏掉了3种。
⑹ c语言,钱币兑换问题,急!!!
sum[m][n]就是在统计一共有多少种情况,fun中参数m就是一共有多少钱,n就是1,2,3这三种硬币,在fun函数中前面的循环都是用来进行特殊情况的判断,最后一句return才是精髓,前面的fun函数只有m-n在变也就是最大钱数为3每一次递归减少一次,后面的是n-1在变也就是在统计1,2硬币这两种情况。
大概就是这么个意思自己理解一下。
⑺ c语言编程,人名币兑换
#include <stdio.h>
int main(void)
{
int rmb = 0;
int temp;
int ten=0,five=0,two=0,one=0;
do {
printf("输入人民币面值(100以内):");
scanf("%d",&rmb);
}while (rmb >= 100);
temp = rmb;
ten = temp/10;
temp -= ten*10;
five = temp/5;
temp -= five*5;
two = temp/2;
temp -= two*2;
one = temp;
printf("%d 元可兑换为%d个10元,%d个5元,%d个2元,%d个1元\n",rmb,ten,five,two,one);
printf("%d %d %d 1\n",ten,five,two,one);
getchar();
getchar();
return 0;
}
⑻ C语言 货币兑换 问题
应是对的
#include <stdio.h>
int main(void)
{
int i,j,k,count=0;
for(i=0;i<=100/5;i++){
for(j=0;j<=(100-i*5)/2;j++)
for(k=0;k<=(100-i*5-j*2);k++)
if((5*i+2*j+k)==100)
printf("%d...5*%d+2*%d+1*%d\n",++count,i,j,k);
}
getchar();
}
⑼ C语言问题。套利是利用货币汇率的差异,一个单位的货币转换成多个相同的货币单位。
有提到了奥地利一点点,虽然并不
⑽ 用c语言设计程序把人民币按6.121的汇率换做美元
错误有两个:第一.m=s%1000;不能用求余,要用除,而且要强制转化第二.case0:p=0;这一行少一个break;第三.ifs>5000m=5;应该加括号不足有一个.scanf(“%d”,&s);应该为%f程序修改为:——-——--main(){floats,p,t,s1;intm;scanf("%f",&s);m=(int)s/1000;if(s>5000)m=5;switch(m){case0:p=0;break;case1:p=0.05;break;case2:p=0.08;break;case3:case4:p=0.1;break;case5:p=0.15;break;}t=s*p;s1=s-t;printf("%.2f,%.2f",t,s1);}用If为main(){floats,p,t,s1;intm;scanf("%f",&s);m=(int)s/1000;if(s>5000)m=5;if(m==0)p=0elseif(m==1)p=0.05;elseif(m==2)p=0.08;elseif(m==3||m==4)p=0.1;elseif(m==5)p=0.15;t=s*p;s1=s-t;printf("%.2f,%.2f",t,s1);}