对以下的程序,求出其中的循环并进行循环优化。 (1)read(J,K) //输入语句 (2)I=1 (3)L:A=K*I (4)B=J*I (5)C=A*B (6)write(c) //输出语句 (7)I=I+l (8)if I<100 goto L (9)STOP
以下程序从键盘输入20个整数存入数组,统计输入非负数的个数,并计算输入的非负整数之和。
#include"stdio.h"
main()
{int i,a[20],s,n;
s=n=0:
for(i=0;i<20;i++)scanf("%d",&a[i])
for(i=0;i<20;i++)
{if(a[i]<0)break;
S+=a[i];n++;
}
printf("s=%d\t,n=%d\n",s,n);
}
错误:______
改正:______
参考答案:错误
编一个程序其功能是输入一个正整数,判断是否是素数,若为素数则输出1,否则输出0。(素数是只能被1和本身整除且大于1的自然数)
A.a=int(input("请输入一个整数:")) if a>0: print(a) else: print(a)
B.a=int(input("请输入一个整数:")) if a>0: print(a) else: print(-a)
C.a=int(input("请输入一个整数:")) if a>0 print(a) else print(-a)
D.a=int(input("请输入一个整数:")) if a>0: print(a) else a<0: print(-a)
若输入12、3、2、5、7,则以下程序的运行结果为【 】。 int max,min; void max_min_value(); main() { int i,number[5]; printf("输入5个整数;\n"); for(i=0;i<5;i++) scanf("%d",&number[i]); max min value(number,5); printf("max=%d,min=%d\n",max,min); getch(); } void max_min_value(array,n) int array[],n; { int*p; max=min=*array; for(p=array+1;p<array+n;p++) if(*p>max)max=*p; else if(*p<min)min=*p; }
v).有向树T的每个顶点u可以看作客户,其服务需求量为w(u).每条边(u,v)的边长d(u,v)可以看作运输费用.如果在顶点u处未设置服务机构,则将顶点u处的服务需求沿有向树的边(u,v)转移到顶点v处服务机构需付出的服务转移费用为w(u)×d(u,v).树根处已设置了服务机构,现在要在树T中增设k处独立服务机构,使得整棵树T的服务转移费用最小.服务机构的独立性是指任例两个服务机构之间都不存在有向路径.
算法设计:对于给定的有向树T:计算在树T中增设k处独立服务机构的最小服务转移费用.
数据输入:由文件input.txt.给出输入数据.第1行有2个正整数n和k.n表示有向树T的边数:k是要增设的服务机构数.有向树T的顶点编号为0,1,...,n.根结点编号为0.接下来的n行中,每行存表示有向树T的一条有向边的3个整数.第i+1行的3个整数wi、vi、di分别表示编号为i的顶点的权为wi,相应的有向边为(i,vi),其边长为di.
结果输出:将计算的最小服务转移费用输出到文件output.txt.
编写一个方法,求出一个double型数组中最小元素:
编写测试程序,提示用户输入5个double型数,并存放到一个数组中,然后调用这个方法返回最小值。
若输入3个整数3,2,1<回车>则下面程序的输出结果是
#include<stdio.h>
main()
{int i,n,aa[10]={0,0,0,0,0,0};
scanf("%d%d%d",&n,&aa[0],&aa[1]);
for(i=0;i<=n;i++)
printf("%d",aa[i]);
}