本栏目下题库来源于互联网,轻速云承诺对于用户导入平台的题库是严格保密的,不会在此呈现!
轻速云给您提供更好的在线考试系统服务!
2013年9月全国计算机等级《二级C语言程序设计》专家预测卷(1)
1、【 简答题
请补充main()函数,该函数的功能是:输入两个正整数numl和num2,求这两个数的最大公约和最小公倍数。
例如,若输入的两个正整数为12,4,则它们的最大公约数为12,最小公倍数为4。
注意:部分源程序给出如下。
请勿改动main()函数和其他函数中的任何内容,仅在main()函数的横线上填人所编写的若干表达式或语句。
试题程序:
#include
#include
void main()
{
int a,b,numl,num2,t;
system("CLS"):
printf("\nInput two numbers:\n");
scanf("%d,%d",&numl,&num2);
if(numl<NUM2)
{
a=num2;
b=num1:
}
else
{
a=num1;
b=num2;
}
while(【1】)
{
t= 【2】
a=b;
b=t:
}
printf(“greatest common divisor:
%d\n",a);
printf("least common multiple:
%d\n", 【3】;
} [18分]
解析:
【1】B!=0【2】A%B[3]numl*num2/A
2、【 简答题
下列给定程序中,函数proc()的功能是:根据输入的3个边长(整型值),判断能否构成三角形:若能构成等边三角形,则返回3;若是等腰三角形,则返回2;若能构成三角形则返回
1;若不能,则返回0。
例如,输入3个边长为3,4,5,实际输入时,数与数之间以Enter键分隔而不是逗号。请修改程序中的错误,使它能得出正确的结果。
注意:不要改动main()函数,不得增行或删行,也不得更改程序的结构。
试题程序:
#include
#include
int proc(int a,int b,int c)
{
if(a+b>c&&b+c>a&&a+c>b)
{
if(a= =b&&b= =c)
//****found****
return 1;
else if(a= =b||b= =c||a= =c)
return 2;
//****found****
else return 3;
}
else return 0;
}
void main()
{
int a,b,C,shape;
printf("\nlnput a,b,C:");
scanf("%d%d%d",&a,&b,&c);
printf("\na=%d,b=%d,c=%d\n",a,b,c);
shape=proc(a,b,c);
printf("\n\nThe shape:%d\n",shape);
} [24分]
解析:
(1)错误:rEturn l; 正确:rEturn 3; (2)错误:rEturn 3; 正确:rEturn l;
3、【 简答题
学生的记录由学号和成绩组成,M名学生的数据已在主函数中放入结构体数组stu中,请编写函数proc(),其功能是:按分数的高低排列学生的记录,高分在前。
注意:部分源程序给出如下。
请勿改动main()函数和其他函数中的任何内容,仅在函数proc()的花括号中填入所编写的若干语句。
试题程序:
#include
#define M l6
typedef struct
{
char num[l0];
int S;
}
STREC:
void proc(STREC a[])
{
int i,j;
STREC t;
for(i=1;i
排序*/
for(j=0;j<M-1;J++)&NBSP;。
if(a[j].s
的记录,高分在前*/
{t=a[j];a[j]=a[j+1];a[j+1]=t;)
}
void main()
{
STREC stu[M]={{"GA005",85),{"GA003",76},
{"GA002",69},{"GA004",85),{"GA001",91),
{"GA007",72),{"GA008",64),{"GA006",87),
{"GA015",85),{"GA013",91),{"GA012",64),
{¨GA014",91),{"GA011",66),{"GA017",64},
{"GA018",64),{"GA016",72}};
int i;
proc(stu);
printf("The data after sorted:\n");
for(i=0;i<M;I++)
{
if(i%4= =0)
//每行输出4个学生记录
printf("n");
printf("%s%4d",stu[i],num,stu[i].s);
}
printf("\n");
} [18分]
解析:
voiD proC(STREC A[])
{
int i,j;
STREC t;
for(i=1;i<M;i++)//用冒泡法来按从高到低排序
for(j=0;j<M-1;j++)
if(a[j].s<a[j+1].s)//按分数的高低排列学生的记录,高分在前
{t=a[j];a[j]=a[j+1];a[j+1]=t;}
}
首页 12
2页,共43个题库
2页,共43个题库
轻速云给您提供更好的在线考试系统服务!
推荐
推荐题库
众多企事业单位的信赖之选
36万+企事业单位的共同选择
查看更多合作案例
众多企事业单位的信赖之选
开始使用轻速云组织培训考试
四步组织一场考试答题,一键搭建企业培训平台
免费使用 免费使用 预约演示
咨询热线
400-886-8169
周一到周日 8:00-22:00
©2025 轻速云 苏ICP备16049646号-1 轻速云科技提供专业的在线考试系统、在线培训系统
联系我们
客服热线客服热线:400-886-8169 | 周一至周日 8:00-22:00
©2025 轻速云 苏ICP备16049646号-1
轻速云科技提供专业的在线考试系统、在线培训系统
在线咨询 400-886-8169