改错:计算大于100的前10个素数之和.
#include
void main()
{
int i,j,n,s;
n=0;
s=1; /*$ERROR1$*/s=0;
for(i=101;;i+=2)
{
for(j=2;j<=i/2;j++)
if(i%j==0)
{
continue; /*$ERROR2$*/break;
}
if(j>i/2)
{
s+=i;
n++;
if(n!=10) /*$ERROR3$*/ n==10
break;
}
}
printf("s=%d\n",s);
}
填空:输入一个大于1的正整数,将其分解成质因数的乘积(质因数即素数因子),并按下例中的格式输出.请填空.例如:
Input n:90
Output:90=2*3*3*5
#include
void main()
{
long i,n;
printf("Input n:");
scanf("%ld",___); /*$BLANK1$*/&n
printf("Output:%d=", n);
i=2;
while(i
{
if(n%i==0)
{
printf("%ld*",i);
n=___; /*$BLANK2$*/
}
else
i++;
}
printf("%ld\n",___); /*$BLANK3$*/
}
程序设计:有100匹马驮100担货,大马驮4担,中马驮3担,5匹小马驮1担.问三种马各有几匹? 注意:1.大、中、小马都必须有;2.问题的解只有一种
输出格式:
big=30,mid=40,small=30
#include
void PRINT(int a,int b,int c)
{
FILE *out;
printf("big=%d,mid=%d,small=%d\n",a,b,c);
if((out=fopen("C:\\RESULT.DAT","w+"))!=NULL)
fprintf(out,"big=%d,mid=%d,small=%d.",a,b,c);
fclose(out);
}
void main()
{
PRINT(a,b,c);
}
第二套改错:从键盘输入一个不多于4位的十进制正整数,求出是几位数.如输入528,结果为n=3。
#include
void main()
{
int x,n;
scanf("%d",x); /*$ERROR1$*/
if(x<=0||x>=10000)
printf("Data Error!\n");
else
{
if(x<=10) n=1; /*$ERROR2$*/
else if(x<100) n=2;
else if(x<1000) n=3;
n=4; /*$ERROR3$*/
printf("n=%d\n",n);
}
}
填空:输出以下图形(字符*之间没有空格,第一行之前有一个空格)。
*
***
*****
*******
*********
程序如下:
#include
void main()
{
int i,j;
for(i=1;i<=___;i++) /*$BLANK1$*/
{
for(j=1;j<=___;j++) /*$BLANK2$*/
printf(" ");
for(j=1;j<=___;j++) /*$BLANK3$*/
printf("*");
printf("\n");
}
}
程序设计:计算并输出Fibonacci数列中小于30000的最大一项。说明:Fibonacci数列的前两项均为1,从第3项开始每一项都是其前两项的和。数列如下:
1,1,2,3,5,8,13,21,…… 输出格式:
f=2345678
#include
void PRINT(long f)
{
FILE *out;
prin