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硬幣這兩種情況。
大概就是這么個意思自己理解一下。