程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> 更多編程語言 >> 編程解疑 >> 編程-C語言問題求解答 關於這個程序有一些疑問

編程-C語言問題求解答 關於這個程序有一些疑問

編輯:編程解疑
C語言問題求解答 關於這個程序有一些疑問

某品牌巧克力使用500克原料可制作55小塊巧克力,請編程實現:輸入原料重量(以千克為單位),計算出制作巧克力的塊數(四捨五入)。然後對這些巧克力進行分包,小盒放11塊,大盒放24塊,問各分裝多少大盒多少小盒剩余巧克力塊數最少。
#include
int main()
{
int a,b,c,d,num=0,min=9999,s=0;
double n,x;
scanf("%if",&n);
n=n*1000;
x=((n*55)/500.0);
if(x>=(int)x+0.5)
num=(int)x+1;
else num=(int)x;
for(a=0;a*11<=num;a++)
for(b=0;b*24<=num;b++)
{
if(a*11+b*24<=num)
{
s=num-(a*11+b*24);
if(s<min)
{
c=a,d=b;
min=s;
}
}
}
printf("裝%d小盒\n裝%d大盒\n剩余%d塊.",c,d,min);
return 0;
————————————————————-分割線
for(a=0;a*11<=num;a++)
for(b=0;b*24<=num;b++)
{
if(a*11+b*24<=num)
{
s=num-(a*11+b*24);
if(s<min)
{
c=a,d=b;
min=s;
}
}
}
printf("裝%d小盒\n裝%d大盒\n剩余%d塊.",c,d,min);
return 0;
從這看
第一個問題: 這兩個for 是並列循環還是內嵌循環呢?
問題二: a ,b,都賦值給了c d ,又成為了
那還有意義?

最佳回答:


兩個for是內嵌循環;

並列循環如下:for(a=0;a*11<=num;a++){}
-----------------------------------------------------分界
for(b=0;b*24<=num;b++){}

c d用於暫存大小的盒數,也可以用 a,b 代替輸出的,

希望可以幫助你

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved