c语言编程 装箱子

作者&投稿:仲长妻 (若有异议请与网页底部的电邮联系)
c语言1000发子弹装箱问题,如何编写该程序~

你可以用一个循环来给数组赋值,因为用的是手机,打字不好打,我就写一下循环部分了吧,,, for(i=2;i<=10;i )
for(j=1;j<=i-1;j )
a[i]=a[i]*2;,,注意数组我这里是11个元素,第一个元素没用,后面刚好十个方便应用。然后数组一开始要初始化全为1

#include<stdio.h>
#define n 1000
int main(void)
{ int a[n],b[n],i=0,j,x,max=1;
scanf("%d",&x);
for(i=1;i<=x;i++)
scanf("%d",&a[i]);
for(j=1;j<=100;j++)
b[j]=100;
for(i=1;i<=x;i++)
for(j=1;j<=100;j++)
{ if(b[j]-a[i]>=0)
{ printf("%d %d\n",a[i],j);
b[j]=b[j]-a[i];
if(max<j)
max=j;
break;}
}
printf("所需的箱子数目为%d\n",max);
return 0;
}

#include<stdio.h>
int main (void)
{
int n,sum,k,temp,index,j,i,count=1,num,x;
int s[100];
int a[100];
int c[100];
scanf("%d",&n);
j=0;
for(i=0;i<n;i++){
scanf("%d",&s[i]);
}
for(j=0;j<n;j++){
a[j]=s[j];
}
for(k=0;k<n-1;k++){
index=k;
for(j=k+1;j<n;j++)
if(a[j]<a[index])//if(a[i]<a[index])
index=j;
if (index!=k)
{
temp=a[index];
a[index]=a[k];//a[index]=a[j];
a[k]=temp;//a[j]=temp;
}
}
for(i=0;i<n;i++){
for(j=0;j<n;j++)
if(a[j]==s[i])
c[i]=j;
}
sum=0;
num=1;
for(j=0;j<n;j++){//for(j=0;j<=n;j++){
/*
sum=sum+a[j];
if(sum>100){
count++;
num++;
}
sum=0;
*/
if ((sum+a[j]) <= 100)
sum+=a[j];
else
{
sum=a[j];
count++;
num++;
}
a[j]=num;
}
for(i=0;i<n;i++){
x=c[i];
printf("%d\n",a[x]);
}
printf("%d",count);
printf("\n");
return 0;
}


柘荣县17255389413: 装箱子的C语言程序
驷苇强力: 如有需要,可以看看这里. http://hi.baidu.com/yanggq/blog/item/b6b7c3131cc01b28dd5401c1.html

柘荣县17255389413: 有关C语言推箱子编程的问题,求帮忙,谢谢! -
驷苇强力: Microsoft Visual C++ 6.0怎么新建Maps,h 进入VC6.0主界面=>点文件然后新建(或者直接快捷键Ctrl+N)然后会弹出新建的主界面,在主界面的导航栏有4个下拉界面(文件,工程,........)点文件,然后再点第3个C/C++ Header File 然后在右边...

柘荣县17255389413: C语言相关 基础 -
驷苇强力: #include void main(){ int max,a,next,i; scanf("%d", max=a; for(i=1;i<10;i++)//十个数循环九次就够了,因为前面已经输入一个 { scanf("%d",n...

柘荣县17255389413: 用C语言编程啊!在线急等!!对于C语言的初学者,最好是用最简单的方法,不要用很难的函数哦! -
驷苇强力: #include <stdio.h> int main(void) { int i, n, sum = 0; for (i = 0; i < 6; i++) {scanf("%d", &n); sum += n * (i + 1) * (i + 1);}printf("%d, %d\n", sum, sum / 36 + (sum % 36 ? 1 : 0)); return 0; } 需要注释吗?能看懂码?

柘荣县17255389413: c或c++编程题:叠放箱子
驷苇强力:#include<iostream> using namespace std; void main(){ int w0[100], w1[100], i ,n,f; while(cin>>n&&n){ for(i=1; i<=n; i++) cin>>w0[i]>>w1[i]; f = w1[1]; for(i=2; i<=n; i++){ f = (f - w0[i]) > w1[i] ? w1[i] : f-w0[i]; if(f <= 0) break;} cout<<n-1<<endl; } } 同一个人- -

柘荣县17255389413: 输入正方形边长求面积周长c语言编程 -
驷苇强力: 1 2 3 4 5 6 7 8 9 10 11 12#include <stdio.h>intmain(){doubled, c, s;printf("输入边2113长:52614102");scanf("%lf", &d);c = 4 * d;s = d * d;printf("周长:%.2lf,面积1653:%.2lf\n", c, s); return0; }

柘荣县17255389413: 计算机中c语言中的变量可以看做一个箱子,而不是数字?然后给这个箱子赋值? -
驷苇强力: 可以这样理解:变量在内存中的地址->箱子的编号;变量->箱子;变量的值->箱子里面装的东西;你的理解是对的.

柘荣县17255389413: c语言写了个推箱子小游戏,有点问题 -
驷苇强力: 可以规定保留之前5(或其他值)步的状态,这样就可以恢复了,也可以实现撤销的功能,一点建议,具体怎么实现看情况

柘荣县17255389413: C语言程序题,有7箱苹果,编号1号~7号,分别装有1,2,4,8,15,16,32,64个苹果,要取苹果若个(100以内任意自然数)而不打开箱子,应该取哪几箱呢?
驷苇强力: 将100以内自然数转化为2进制,然后取位数为1的箱子

柘荣县17255389413: 请问#include <bios.h>,则个是C语言编写推箱子的头文件,用VC++6.0编译会出错,请问怎么解决!! -
驷苇强力: 这个头文件是TC专用的头文件,VC中没有这个头文件.你想写推箱子程序,不知道怎么刻画界面的,如果使用VC的对话框等,则有专门接受键盘信息的处理函数.

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 星空见康网