Ⅰ 求指導!!!!!!用幣值為1元,5元,10元,20元的最少張數表示一個金額(c語言)
這個的解法是從大到小貪心,能用大的換就用大的換.
int i,j,k,m,money,x,y,z,v;
y=money;
printf("請輸入一個金額=");
scanf("%d",&money);
i=y/20;//先看看20有幾張,取余不對,要用除
x=y-20*i;//賦值的變數要寫前面的
j=x/10;
z=x-10*j;
k=z/5;
v=x-5*k;
m=v/1;
if((i*20+10*j+5*k+m)==money);
printf("i=%d\nj=%d\nk=%d\nm=%d\n",i,j,k,m);
Ⅱ c語言,從鍵盤輸入一指定金額(以元為單位,如345.78),然後顯示支付
a,b,c,d,e,f,g,h,i,j應為整型變數;角分處理做了點更改;
改後程序如下:
#include<stdio.h>
int main()
{
float num;
int a,b,c,d,e,f,g,h,i,j;
printf("請輸入一個金額如345.78\n");
scanf("%f",&num);
a=(int)num/100;
b=(int)(num-a*100)/50;
c=(int)(num-a*100-b*50)/10;
d=(int)(num-a*100-b*50-c*10)/5;
e=(int)(num-a*100-b*50-c*10-d*5)/2;
f=(int)(num-a*100-b*50-c*10-d*5-e*2)/1;
g=(int)((num-a*100-b*50-c*10-d*5-e*2-f*1)*10)/5;
h=(int)((num-a*100-b*50-c*10-d*5-e*2-f*1-g*0.5)*10);
i=(int)((num-a*100-b*50-c*10-d*5-e*2-f*1-g*0.5-h*0.1)*20)/5;
j=(int)((num-a*100-b*50-c*10-d*5-e*2-f*1-g*0.5-h*0.1-i*0.05)*100);
printf("100元、50元、10元、5元、2元、1元、5角、1角、5分、1分各有%d,%d,%d,%d,%d,%d,%d,%d,%d,%d張",a,b,c,d,e,f,g,h,i,j);
return 0;
}
Ⅲ C語言中如何計算總價
請明確說明需求。
c語言中輸入數值可以使用scanf ("格式",&變數名);,格式對應:整數%d,長整形%ld,單精度浮點數%f,雙精度浮點數%lf。。。等等,後面&變數名指必須是一個地址。
至於你說的計算總價,只是將變數賦值以後帶入公式運算而已。這里你說的v,c表示什麼,總價對應公式是什麼,需要你說清除。
Ⅳ c語言如何從鍵盤輸入一指定金額(以元為單位),然後顯示支付該金額的各面額數量
a,b,c,d,e,f,g,h,i,j應為整型變數;角分處理做了點更改;x0dx0a改後程序如下:x0dx0a#include
Ⅳ C語言定義這樣一個6位數 個 百 錢 位是1,6,2 其他3位由用戶輸入 怎麼定義這個數
#include <stdio.h>
int main()
{
float a,b,c,n;
printf("輸入十萬位,萬位,十位的數字a b c:");
scanf("%f%f%f",&a,&b,&c);
n=a*100000+b*10000+c*10+2601;
printf("%f\n",(n-2)*65/60);
return 0;
}
Ⅵ C語言數組定義要,記錄一周內沒日的支出金額,應如何定義數組方便。
一周7天應該是a[7]
Ⅶ C語言定義$12000和定義一個數的%15怎麼定義
因為你的得數是單精度數,最好統一單位比較准確,都使用float來定義會好一些.
float SJGZ,JBGZ,DA,TA,QT,PF,IT
/* 實際工資=(基本工資+DA+TA+其他-(PF+IT))*0.15 */
Ⅷ C語言大寫金額問題
#include<stdio.h>
#include<string.h>
int main()
{
void zh(double r);
double r;
printf("請輸入金額(范圍小於千億):
");
scanf("%lf",&r);
if(r>=1000000000000)
printf("輸入的數超出范圍,請重新輸入
");
zh(r);
}
void zh(double r){
double y;
int x,m,n,j,i,k,flag=0;
char str1[][4]={"零","壹","貳","叄","肆","伍","陸","柒","捌","玖"};
char str2[][4]={"仟","佰","拾","億","仟","佰","拾","萬","仟","佰","拾","元","角","分"};
int str3[30];
y=r-(int)r;
x=(int)r;
for(i=0;i<=11;i++){
m=(int)((int)x%10);
str3[11-i]=m;
x=(int)(x/10);
}
str3[12]=(int)(y*10);
str3[13]=(int)(y*100)%10;
for(k=0;k<=13&&flag==0;k++){
if(str3[k]>0){
flag=1;n=k;
}
}
for(j=n;j<=13;j++)
printf("%s%s",str1[str3[j]],str2[j]);
printf("
");
}
Ⅸ C語言,要記錄一周內每日的支出金額,應如何定義數組方便
確定是7天可以定義數組長度是7,收支應該是小數:
float list[7];
沒啥方便不方便的,就是按實際需要定義嘛。
Ⅹ 在c語言環境中,將數字轉化為金額的程序怎麼寫,如將12345轉化為一萬兩千三百四十五,求解
思路:分解每位的數,帶上權重
#include<stdio.h>
#include<stdlib.h>
#include"string.h"
voidconvert_num(intn,char*buf)
{
switch(n)
{
case0:
sprintf(buf,"%s","零");
break;
case1:
sprintf(buf,"%s","一");
break;
case2:
sprintf(buf,"%s","二");
break;
case3:
sprintf(buf,"%s","三");
break;
case4:
sprintf(buf,"%s","四");
break;
case5:
sprintf(buf,"%s","五");
break;
case6:
sprintf(buf,"%s","六");
break;
case7:
sprintf(buf,"%s","七");
break;
case8:
sprintf(buf,"%s","八");
break;
case9:
sprintf(buf,"%s","九");
break;
}
}
voidconvert(intn,intpower,char*buf)
{
chartemp[5]={"