1. 用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);}
2. 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();
}
3. C语言 1块兑换1分2分5分有几种方法
这里写错了:
for(k=0;j<=20;k++)
应该写成
for(k=0;k<=20;k++)
修改如下:
#include<stdio.h>
#include<math.h>
intmain(){
inti,j,k,n=0;
for(i=0;i<=100;i++)
for(j=0;j<=50;j++)
for(k=0;k<=20;k++)
if(i+2*j+5*k==100)
n++;
printf("%d",n);
return0;
}
执行效果如下:
4. 求c语言美元兑人民币程序
#include<stdio.h>
#define fun(x) 6.177*(x)
int main(void)
{
int x;
double y;
scanf("%d",&x);
y=fun(x);
printf("%d 美元可兑换 人民币 %.3lf 元\n",x,y);
return 0;
}
5. C语言的问题.货币兑换问题:要求:把一元人民币换成零币(5角,2角,1角,5分,2分,1分)问有多少中兑换方法
/*把一元人民币换成零币(5角,2角,1角,5分,2分,1分)问有多少中兑换方法*/
#include<stdio.h>
void main()
{
int j5,j2,j1,f5,f2,f1;
float sum=0.0;
for(j5=0;j5<=2;j5++)
for(j2=0;j2<=5;j2++)
for(j1=0;j1<=10;j1++)
for(f5=0;f5<=20;f5++)
for(f2=0;f2<=50;f2++)
for(f1=0;f1<=100;f1++)
{
if(j5*50+j2*20+j1*10+f5*5+f2*2+f1==100)/*j5个5角,j2个2角,。。。f1个1分如果和能等于100,则为一种兑换方法*/
sum++;
}
printf("sum=%.f",sum);/*输出能够兑换的总方法数*/
}
sum=4562
兑换的几种方案如下:
0*50+0*20+0*10+0*5+0*2+100=100
0*50+0*20+0*10+0*5+1*2+98=100
0*50+0*20+0*10+0*5+2*2+96=100
0*50+0*20+0*10+0*5+3*2+94=100
0*50+0*20+0*10+0*5+4*2+92=100
0*50+0*20+0*10+0*5+5*2+90=100
0*50+0*20+0*10+0*5+6*2+88=100
.............................
.............................
2*50+0*20+0*10+0*5+0*2+100=100
6. C语言中, 从键盘输入国际货币表示的商品价格,请转换为人民币.要求:仅仅考虑美元($)和欧元
float x,y; //x美元,y人民币
scanf("%f",&x);
y=x*汇率
printf("%f",y);
7. C语言程序题,,,,,硬币兑换:给定某一金额,输出其兑换成硬币的方案有几种、分别如何兑换金额范围
#include "stdio.h"
#include "stdlib.h"
void main()
{
int coin,a=0,b=0,c=0,d=0,v,count=0;
printf("请输入您所需要兑换成硬币的金额coin:\n");
scanf("%d",&coin);
for(a=0;a<=coin;a++)
for(b=0;b<=(coin-a)*2;b++)
for(c=0;c<=(coin-a-2*b)*10;c++)
for(d=0;d<=(coin-a-2*b-10*c)*20;d++)
{
printf("\n可以兑换成为1元的a=%d 5角的b=%d 1角的c=%d 5分的d=%d",a,b,c,d)
count++;
}
printf("\n共count=%d种兑换方法\n",count);
}
8. 用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;
}
}
}
9. 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;
}
10. c语言,钱币兑换问题,急!!!
sum[m][n]就是在统计一共有多少种情况,fun中参数m就是一共有多少钱,n就是1,2,3这三种硬币,在fun函数中前面的循环都是用来进行特殊情况的判断,最后一句return才是精髓,前面的fun函数只有m-n在变也就是最大钱数为3每一次递归减少一次,后面的是n-1在变也就是在统计1,2硬币这两种情况。
大概就是这么个意思自己理解一下。