下面程序段的运行结果是________。
x=y=0;
while(x<15)y++,x+=++y;
printf("%d,%d",y,x);
【参考答案】 错误
C.8,20
【学生答案】
D.6,12
以下不构成无限循环的语句或语句组是________。
【参考答案】 错误
C.n=0; do{++n;}while(n<=0);
【学生答案】
A.n=10; while(n);{n--;}
以下程序的输出结果是________。
void main()
{ int a=0,i;
for(i=1;i<5;i++)
{ switch(i)
{ case 0:
case 3:a+=2;
case 1:
case 2:a+=3;
default:a+=5;
}
}
printf("%d\n",a);
}
【参考答案】 错误
C.31
【学生答案】
D.13
在循环嵌套中,使用break语句只可以跳出所在循环.
【参考答案】 错误
正确
【学生答案】
错误
已知int k=0;则语句while(k=1)k++;将一次也不执行.
【参考答案】 错误
错误
【学生答案】
正确
程序段int i=0; while(i=0) i=i-1;循环体语句执行_____次.(请用阿拉伯数字作答)
【空 1】 错误 空比例:1
【学生答案】
1
【参考答案】
0
零
若有int m=1,x=6;则执行下列语句后,变量x=_______。
while(m<1)
m++;
x++;
【空 1】 错误 空比例:1
【学生答案】
5
【参考答案】
7
七
已知int i,sum=0;执行以下程序段后的sum的值是_____.for(i=7;i>1;i=i-2){sum+=i;}
【空 1】 错误 空比例:1
【学生答案】
16
【参考答案】
15
/*------------------------------------------------
【程序设计】
--------------------------------------------------
题目:编写函数fun,函数的功能是:求一个
四位数的各位数字的立方和
--------------------------------------------------
注意:部分源程序给出如下。请勿改动主函数
main和其它函数中的任何内容,仅在函
数fun的花括号中填入所编写的若干语句。
*********Begin**********和********** End **********不可删除
------------------------------------------------*/
#include "stdio.h"
int fun(int n)
{
/**********Begin**********/
/********** End **********/
}
main()
{
int k,n;
printf("请输入一个4位数:");
scanf("%d",&n);
k=fun(n);
printf("k=%d\n",k);
yzj();
getch();
}
yzj()
{
FILE *IN,*OUT;
int iIN,iOUT,i;
IN=fopen("in.dat","r");
if(IN==NULL)
{printf("Please Verify The Currernt Dir..It May Be Changed");
}
OUT=fopen("out.dat","w");
if(OUT==NULL)
{printf("Please Verify The Current Dir.. It May Be Changed");
}
for(i=0;i<5;i++)
{fscanf(IN,"%d",&iIN);
iOUT=fun(iIN);
fprintf(OUT,"%d\n",iOUT);
}
fclose(IN);
fclose(OUT);
}
【参考代码】
int d,k,s=0;
while (n>0)
{d=n%10;
s+=d*d*d;
n/=10;
}
return s;
===============
【考生代码】
int g,s,b,q,out;
g=n%10/10;
s=n%100/10;
b=n%100/10;
q=n/1000;
out=g*g*g+s*s*s+b*b*b+q*q*q;
return out;
------------------------------------
代码准确率:40.00%,得分比例:0.10
程序编译检测:编译成功,得分比例:0.40
程序结果检测:结果错误,得分比例:0.00
/*------------------------------------------------
【程序设计】循环 -- Guo S.
--------------------------------------------------
题目:编写函数fun,函数的功能是:求一个整数n的逆序返回值。
比如,当n为1234,则返回4321;当n为13579,则返回97531。
--------------------------------------------------
注意:部分源程序给出如下。请勿改动主函数
main和其它函数中的任何内容,仅在函
数fun的花括号中填入所编写的若干语句。
*********Begin**********和********** End **********不可删除
------------------------------------------------*/
#include "stdio.h"
void bky(void);
// 完成函数fun,返回n的逆序
int fun(int n)
{
/**********Begin**********/
/********** End **********/
}
main()
{
int k,n;
printf("请输入一个整数:");
scanf("%d",&n);
k=fun(n);
printf("逆序后:%d\n",k);
bky();
}
void bky(void)
{
FILE *IN,*OUT;
int iIN,iOUT,i;
IN=fopen("in.txt","r");
if(IN==NULL)
{
printf("Please Verify The Currernt Dir..It May Be Changed");
}
OUT=fopen("out.txt","w");
if(OUT==NULL)
{
printf("Please Verify The Current Dir.. It May Be Changed");
}
for(i=0;i<5;i++)
{
fscanf(IN,"%d",&iIN);
iOUT=fun(iIN);
fprintf(OUT,"%d\n",iOUT);
}
fclose(IN);
fclose(OUT);
return ;
}
【参考代码】
int x=0;
while(n)
{
x *= 10;
x += n%10;
n /= 10;
}
return x;
===============
【考生代码】
int a,out;
for(n;n>0;n)
{
a=n%10;
n=n%10;
}
out+=a*10;
return out;
------------------------------------
代码准确率:75.00%,得分比例:0.40
程序编译检测:编译成功,得分比例:0.40
程序结果检测:结果错误,得分比例:0.00
/*------------------------------------------------
【程序设计】
--------------------------------------------------
题目:求出菲波那契数列的前n项的和。
菲波那契数列为这样的数列:1 1 2 3 5 8 ……
注:菲波那契数列前10项的和为143
注意:部分源程序给出如下。请勿改动主函数main和其
它函数中的任何内容,仅在函数fun的花括号中填
入所编写的若干语句。
*********Begin**********和********** End **********不可删除
------------------------------------------------*/
#include <stdio.h>
void TestFunc();
long fun(int n)
{
/*********Begin**********/
/********** End **********/
}
main()
{
printf("y=%ld\n",fun(10));
TestFunc();
}
void TestFunc()
{
FILE *IN,*OUT;
long fOUT;
int n;
IN=fopen("19.IN","r");
if(IN==NULL)
{
printf("Please Verify The Currernt Dir..it May Be Changed");
}
OUT=fopen("19.out","w");
if(OUT==NULL)
{
printf("Please Verify The Current Dir.. it May Be Changed");
}
for(n=5;n<=8;n++)
{fOUT=fun(n);
fprintf(OUT,"%ld\n",fOUT);}
fclose(IN);
fclose(OUT);
}
【参考代码】
int f1=1,f2=1,i;
long f,s=2;
for(i=3;i<=n;i++)
{ f=f1+f2;
s=s+f;
f1=f2;f2=f;}
return s;
===============
【考生代码】
int i,out;
for(i=1;i<n;i++)
{
i=i+i;
out=i;
i=n;
}
return out;
------------------------------------
代码准确率:50.00%,得分比例:0.10
程序编译检测:编译成功,得分比例:0.10
程序结果检测:结果错误,得分比例:0.00
/*------------------------------------------------
【程序设计】
--------------------------------------------------
题目:求1到w之间的奇数之和。(w是大于等于100小于等
于1000的整数)
*********Begin**********和********** End **********不可删除
------------------------------------------------*/
#include <stdio.h>
#include"conio.h"
void bky();
long fun(int w)
{
/**********Begin**********/
/********** End **********/
}
main()
{
int m;
printf("Enter m: ");
scanf("%d", &m);
printf("\nThe result is %ld\n", fun(m));
bky();
}
void bky()
{
FILE *IN,*OUT;
int c ;
int t;
long o;
IN=fopen("in.dat","r");
if(IN==NULL)
{
printf("Read FILE Error");
}
OUT=fopen("out.dat","w");
if(OUT==NULL)
{
printf("Write FILE Error");
}
for(c=1;c<=5;c++)
{
fscanf(IN,"%d",&t);
o=fun(t);
fprintf(OUT,"%ld\n",o);
}
fclose(IN);
fclose(OUT);
}
【参考代码】
long y=0;
int i;
for(i=1;i<=w;i++)
if(i%2==1)y+=i;
return y;
===============
【考生代码】
int i,out;
for(i=1;i<w;)
{
out+=i;
i=i+2;
}
return out;
------------------------------------
代码准确率:66.67%,得分比例:0.11
程序结果检测:结果正确,得分比例:0.53
文章评论