题目内容 (请给出正确答案)
[主观题]

阅读以下说明和C语言函数。 [说明] 某工厂A负责为某大型企业B加工零件,A每天必须为B提供一定数量

阅读以下说明和C语言函数。

[说明]

某工厂A负责为某大型企业B加工零件,A每天必须为B提供一定数量的零件。由于某种客观原因,A每天生产的零件的单价都不相同。若A某天生产的零件数多于B需要的数目,则多余的零件可以放到第二天及以后再使用,但需要收取每个零件的保管费(产品单价之外附加的费用),每个零件在不同日期收取的保管费也不相同。

例如,在5天的生产中,B要求的零件需求量及A核算出的零件单价和保管费用如表1所示。

阅读以下说明和C语言函数。 [说明] 某工厂A负责为某大型企业B加工零件,A每天必须为B提供一定数量

A可以制订多种生产计划,但费用可能不同。例如,表2所示为生产计划及其费用。

阅读以下说明和C语言函数。 [说明] 某工厂A负责为某大型企业B加工零件,A每天必须为B提供一定数量

注:(1)计划1的总费用:25*20+15*30+30*32+35*25+30*35=3835(元)

(2)计划2的总费用;40*20+15*4.5+30*32+50*25+15*5.5+15*35=3685(元)

(3)计划3的总费用:70*20+45*4.5+30*8+65*25+30*5.5=3632.5(元)

(4)计划4不可行,虽然第一大和第二天生产的零件总数比需求量多5个,但加上第三天生产的20个零件(共25个),仍不能满足B第三天的需求量(30个)。

函数find_a_plan(FILE*in)的功能是:从文件中读入若干个生产计划,从可行的计划中选出费用最小者,记录该生产计划并返回该最小费用。

全局结构体数组data[]用于保存表1所示的数据(data[0]不用),说明如下:

data[i].Qty_req:int型,表示第i天的零件需求量。

data[i].Price: double型, 表示第i天生产的零件单价(元)

data[i].Keeping_fee: double型, 表示第i天保管单个零件的费用(元)

[C语言函数]

intB_s[DAYS+1]; /*记录成本最小的生产计划,B_s[0]不用,DAYS定义为天数*/

double find_a_plan(FILE *int)

{ iht P_nm[DAYS+1],acc_req[DAYS+1];

int i,tag = 0,acc_qty = 0;

double mincost = 1.0e20,cost_Produce,cost_Keep;

for(i = 1;i <= DAYS; i++) { /*第i天时的累计零件需求量存入acc rcq[i] */

acc_qty += data[i].Qty_req;

acc_req[i] = acc qty;

}

while (!feof(int)) {

for(i = 1; i <= DAYS; i++ )/*读入一个生产计划,第i天的产量存入P_num[i]*/

if (!feof(inf))

fseant[inf,"%d",&P_num[i]);

tag = 0; cost_Produce = 0; cost_Keep = 0;

for(i = 1,(1);i <= DAYS; i++){ /*考查当前的生产计划*/

acc qty += P_num[i]; /* acc_qty 计录到第i天时的累计零件生产量*/

if (acc_qty < acc_req[i]) {/*当前生产计划不能满足需求*/

tag = 1; break;

}/*if*/

cost_Produce +=(2); /*计算当前生产计划的总需件价格*/

cost_Keep += ((3)) * data[i],Keeping_fee;

}/*for*/

if((4)) /* 若当前生产计划不可行,则继续读取下一计划*/

continue;

if((5)) { /*记录成本更小的生产计划*/

mincost = costProduce + cost_Keep;

for(i = 1; i <=DAYS; i++)

B_s[i] = P num[i];

}/*if*/

}/*while*/

return mincost;

}

查看答案
如搜索结果不匹配,请 联系老师 获取答案
您可能会需要:
您的账号:,可能会需要:
您的账号:
发送账号密码至手机
发送
更多“阅读以下说明和C语言函数。 [说明] 某工厂A负责为某大型企…”相关的问题

第1题

阅读以下说明和C函数,填补代码中的空缺(); Return width; }
点击查看答案

第2题

阅读以下说明和C语言函数,将应填入(n)处的字句写在对应栏内。[说明] 完成以下中序线索化二叉树的

阅读以下说明和C语言函数,将应填入(n)处的字句写在对应栏内。

[说明]

完成以下中序线索化二叉树的算法。

[函数]

Typedef int datatype;

Typedef struct node {

Int ltag, rtag;

Datatype data;

*lchild,* rchild;

}bithptr;

bithptr pre;

void inthread (p );

{if

{inthread (p->lchild );

if (p->lchild==unll ) (1);

if (P->RCHILD=NULL) p->rtag=1;

if (2)

{if (3) pre->rchild=p;

if (p->1tag==1 )(4);

}

INTHREAD (P->RCHILD );

(5);

}

}

点击查看答案

第3题

阅读以下函数说明和C语言函数,将应填入(n)处的字句写在对应栏内。【说明】 给定函数fun的功能是:将

阅读以下函数说明和C语言函数,将应填入(n)处的字句写在对应栏内。

【说明】

给定函数fun的功能是:将从键盘上输入的每个单词的第一个字母转换为大写字母,输入时各单词必须用空格隔开,用“.”结束输入。

【函数】

int fun(char *c,int status)

{

if((1)=='')

return 1;

else

{

if((2)&&(3)&&(4))

(5)='A'-'a';

return 0;

}

}

main()

{

int flag=1;

char ch;

printf("请输入一字符串,用点号结束输入!\n");

do {

ch=getchar();

flag=fun(&ch,flag);

putchar(ch);

}while(ch!='.');

printf("\n");

}

点击查看答案

第4题

阅读以下函数说明和C语言函数,将应填入(n)处的字句写在答题纸的对应栏内。 【函数2.1说明】 递归函

阅读以下函数说明和C语言函数,将应填入(n)处的字句写在答题纸的对应栏内。

【函数2.1说明】

递归函数sum(int a[], int n)的返回值是数组a[]的前n个元素之和。

【函数2.1】

int sum (int a[],int n)

{

if(n>0) return (1);

else (2);

}

【函数2.2说明】

有3个整数,设计函数compare(int a,int b,int c)求其中最大的数。

【函数2.2】

int compare (int a, int b, int c )

{ int temp, max;

(3) a:b;

(4) temp:c;

}

【函数2.3说明】

递归函数dec(int a[],int n)判断数组a[]的前n个元素是否是不递增的。不递增返回 1,否则返回0。

【函数2.3】

int dec(int a[], int n )

{

if(n<=1) return 1;

if(a[0]<a[1]) return 0;

return (5);

}

点击查看答案

第5题

阅读以下说明和关系表,回答问题1~3。[说明] 已知关系R(A,B,C,D) 和函数依赖集F为{AB—>D,C—>,A,D—>

阅读以下说明和关系表,回答问题1~3。

[说明]

已知关系R(A,B,C,D) 和函数依赖集F为{AB—>D,C—>,A,D—>C}。

找出关系R的候选键,一共有几个?

点击查看答案

第6题

阅读以下函数说明和C语言函数,将应填入(n)处的字句写在对应栏内。 [说明] 已知r[1...n]是n个记

阅读以下函数说明和C语言函数,将应填入(n)处的字句写在对应栏内。

[说明]

已知r[1...n]是n个记录的递增有序表,用折半查找法查找关键字为k的记录。若查找失败,则输出“failure",函数返回值为0;否则输出“success”,函数返回值为该记录的序号值。

[C函数]

int binary search(struct recordtype r[],int n,keytype k)

{ intmid,low=1,hig=n;

while(low<=hig){

mid=(1);

if(k<r[mid].key) (2);

else if(k==r[mid].key){

printf("succesS\n");

(3);

}

else (4);

}

printf("failure\n");

(5);

}

点击查看答案

第7题

阅读以下说明和C语言函数。 [说明] 函数change(int num)的功能是对四位以内(含四位)的十进制正整

阅读以下说明和C语言函数。

[说明]

函数change(int num)的功能是对四位以内(含四位)的十进制正整数num进行如下的变换:将num的每一位数字重复一次,并返回变换结果。例如,若num=5234,则函数的返回值为55223344,其变换过程可描述为:

(4*10+4)*1+(3*10+3)*100+(2*10+2)*10000+(5*10+5)*1000000=55223344

[C语言函数]

long change(int num)

{

ind,m=num;

long result mul;

if (num<=0||(1) /*若num不大于0或num的位数大于4,则返回-1*/

retum-1;

mul=1;

(2)

while(m>0){

d=m%10;

m=(3);

result=result+((4) ) *mul;

mul=(5);

}

return result;

}

点击查看答案

第8题

阅读以下说明和关系表,回答问题1~3。[说明]关系R中有如下函数依赖关系: DC→E DB→E BA→F BC→DF AC→

阅读以下说明和关系表,回答问题1~3。

[说明]

关系R中有如下函数依赖关系:

DC→E

DB→E

BA→F

BC→DF

AC→D

DA→F

D→B

求此模型的最小函数依赖集。

点击查看答案

第9题

阅读以下函数说明和C语言函数,将应填入(n)处的字句写在对应栏内。 [说明1] 函数int function(in

阅读以下函数说明和C语言函数,将应填入(n)处的字句写在对应栏内。

[说明1]

函数int function(int a)的功能是判断指定的正整数是否为素数,若是,返回1,否则返回0。

[C函数1]

int function(int a)

{ int yes,i;

i=2;yes=1;

while(i<=a/2 && (1) ){

if((2) ) yes=0;

i++;

}

return yes;

}

[说明2]

函数int deleteARR(int*arr,intn)的功能是指定的有序数组压缩成各元素互不相同的有序数组,即相同数只保留一个,多余的被删除。函数返回值是互不相同的元素个数。

[C函数2]

int deleteARR(int*arr,int n)

{ int k,j;

k=0;j=1;

while(j<n){

if((3) )

(4)=arr[j];

j++;

}

return (5);

}

点击查看答案

第10题

阅读以下函数说明和C语言函数,将应填入(n)处的字句写在对应栏内。 [说明1] 本程序输入一字符串,

阅读以下函数说明和C语言函数,将应填入(n)处的字句写在对应栏内。

[说明1]

本程序输入一字符串,并将其中的大写字母变成小写字母。

[C函数1]

include<stdio.h>

void main()

{ int i=0;

char s[120];

printf("Enter a string.\n");

scanf("%s",s);

while((1) ){

if((2) )

s[i]=s[i]-'A'+'a';

i++;

}

printf("%s\n",S);

}

[说明2]

本程序用二分法,在已按字母次序从小到大排序的字符数组list[len]中,查找字符c,若c在数组中,函数返回字符c在数组中的下标,否则返回-1。

[C函数2]

int search(char list[],char c,int len)

(intlow=0,high=len-1,k;

while((3) );

k=(10w+high)/2;

if((4) ) return k;

else if((5) )high=k-1;

else low=k+1;

return -1;

}

点击查看答案

第11题

阅读以下函数说明和C语言函数,将应填入(n)的字句写在答题纸的对应栏内。 [说明1] 函数int fun1(in

阅读以下函数说明和C语言函数,将应填入(n)的字句写在答题纸的对应栏内。

[说明1]

函数int fun1(int m, int n)的功能是:计算并返回正整数m和n的最大公约数。

[函数1]

int fun1(int m, int n)

{

while ((1)) {

if (m>n) m=m-n;

else n=n-m;

}

(2);

}

[说明2]

函数long fun2(char*str)的功能是:自左至右顺序取出非空字符串str中的数字字符形成一个十进制整数(最多8位)。

例如,若字符串str的值为“f3g8d5.ji2e3p12fkp”,则函数返回值为3852312。

[函数2]

long fun2(char *str)

{

int i=0;

long k=0;

char *p=str;

while (*p!='\0' &&(3)) {

if (*p>='0' && *p<='9') {

k=(4)+ *p - '0';

++i;

}

(5);

}

return k;

}

点击查看答案
热门考试 全部 >
相关试卷 全部 >
账号:
你好,尊敬的上学吧用户
发送账号至手机
密码将被重置
获取验证码
发送
温馨提示
该问题答案仅针对搜题卡用户开放,请点击购买搜题卡。
马上购买搜题卡
我已购买搜题卡, 登录账号 继续查看答案
重置密码
确认修改
谢谢您的反馈

您认为本题答案有误,我们将认真、仔细核查,
如果您知道正确答案,欢迎您来纠错

警告:系统检测到您的账号存在安全风险

为了保护您的账号安全,请在“上学吧”公众号进行验证,点击“官网服务”-“账号验证”后输入验证码“”完成验证,验证成功后方可继续查看答案!

微信搜一搜
上学吧
点击打开微信
警告:系统检测到您的账号存在安全风险
抱歉,您的账号因涉嫌违反上学吧购买须知被冻结。您可在“上学吧”微信公众号中的“官网服务”-“账号解封申请”申请解封,或联系客服
微信搜一搜
上学吧
点击打开微信