您的位置:

c语言轮船渡口,轮渡模拟c语言

本文目录一览:

c语言如何将小数变成整数

根据需要,可以把实数变为整数。解决实际问题时,经常需要进行这种类型的转换。

例如,

1)商店优惠,每满100元减10元。----此时需要的是截尾取整。

2)银行计算利息,最小单位是0.01元,即分。----此时进行的是“四舍五入”。

3)轮船运输货物,每船核定载重40吨,是不允许超载的。----此时需要的是向上取整。

在C语言里,这三种情况分别可以用以下的方法实现:

float x=123.456;

int y1,y2,y3;

y1=5*(int)(x/100);

y2=(int)(x*100+0.5); 以分为单位

y3=(int)(x/40.0+0.9999999)

子集树问题(用C语言或C++完成)

//说明:我是用c++编的。解法是用栈来进行递归模拟,解法编译过是正确的。我有注释说明。不过要改成递归比较麻烦。而且,解题一般是不会限制解法的,你看看这个非递归的解法吧。

#include iostream

#include string

using namespace std;

void main(){

int i,j,n,c,temp,L[100],S[100],p,sum,Get,max;

cinnc;

for (i=0;in;i++){

cinL[i];

}

max=0;

sum=0;

p=-1;//栈初始化

for (i=0;in;i++){

if (sum+L[i]=c) {

sum=sum+L[i];

p++;

S[p]=i;//i入栈

break;//寻找第一个

}

}

while ((p!=-1)||(i=n-1)){//当栈不空或未检索到末尾时运行

if (i=n-1){//如果是未检索到末尾时

Get=S[p];//取栈顶元素

for (i=Get+1;in;i++){

if (sum+L[i]=c) {

sum=sum+L[i];

p++;

S[p]=i;//i入栈

}

}

}

if(i==n){//如果检索到末尾但栈不为空时

if (summax) max=sum;

Get=S[p];//取栈顶元素

/*for (j=0;j=p;j++){

temp=S[j];

coutL[temp]" ";

}

coutendl;*///说明此处用来检验栈模拟的过程,及其正确性,可输出解的子集,你可以看看

p--;//模拟出栈

//coutmax" ";

sum=sum-L[Get];//还原

for (i=Get+1;in;i++){//

if (sum+L[i]=c) {

sum=sum+L[i];

p++;

S[p]=i;//i入栈

break;//寻找下一个

}

}

}

}

coutmaxendl;

}

全国计算机等级考试二级C语言与全国计算机等级考试二级VB的区别?

全国计算机等级考试二级C语言与VB区别如下:

这二者都市程序开发语言,c语言不支持可视化编程,vb支持可视化编程,从功能上考虑,二者均可完成任何一种开发需求,但是对于做界面,c会变得很麻烦,vb则相对简单。vb语言的语法要求不严格,可以不事先声明变量(当然是个人设置的),c必须先声明后使用,vb是一种事件驱动的程序结构,c的程序必须从一个main函数开始,c支持指针,v b不支持。

C入门相对较难,vb则很容易入门,但是后续的深入学习c会变得相对容易。c可以用来做一些底层的和计算机硬件相关的开发工作,v b在这方面相对较差。

C语言过河问题,编程!谢谢了,急!

你好,我来为你解答:

解法如下:

1.农夫带羊过去,自己回来

2.农夫带狼过去,带羊回来

3.农夫带白菜过去,自己回来

4.农夫带羊过去

全部安全过岸.

程序暂时没有时间做