题库 题库

【简答题】

下列给定程序中,函数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);
}

参考答案

(1)错误:rEturn l; 正确:rEturn 3; (2)错误:rEturn 3; 正确:rEturn l;

相关试题

单选题 关于C语言中数的表示,以下叙述中正确的是(  )。 查看答案
单选题 若变量已正确定义,在语句“if(W)printf("%d\n",k);”中,以下不可替代w的是( )。 查看答案
单选题 有以下程序:
#include
void fun(char*C,int d)
{*c=*c+1,d=d+1;
printf(%"c%,c",*c,d);
}
main(  )
{char b='a'a='A';
fun(&b,a);printf(%"c,%c\n",b,a);
)
程序运行后的输出结果是(  )。
查看答案
单选题 有以下程序:
#include
main(  )
{ int a=1,b=0;
if(--a)b++;
else if(a=0)b+=2;
else b+=3:
print[("%d\n",b);
}
程序运行后的输出结果是(  )。
查看答案
单选题 设有定义:“int a=1,b=2,C=3;”,以下语句中执行效果与其他三个不同的是(  )。 查看答案
单选题 下列叙述中正确的是(  )。 查看答案
单选题 有以下程序(说明:字母A的ASCIl码值是65):
#include
void fun(char*s)
{while(*s)
{if(*s%2)printf("%C",*s);
s++;
}
}
main(  )
{char a[]="BYTE"; 。
Fun(a);printf("\n");
}
程序运行后的输出结果是(  )。
查看答案
单选题 有以下程序:
#include
void func(int n)
{ int i;
for(i=0;i<=n;i++)printf("*"):
printf("#");
}
main(  )
{func(3);printf("????");func(4);printf("n\");
程序运行后的输出结果(  )。
查看答案
单选题 以下函数findmax拟实现在数组中查找最大值并作为函数值返回,但程序中有错导致不能实现预定功能。
#define MIN-2147483647
int findmax(int x[],int n)
{int i,max;
for(i=0;i<N;I++)
{max=MIN;
if(max
return max;
}
造成错误的原因是(  )。
查看答案
单选题 结构化程序所要求的基本结构不包括(  )。 查看答案
单选题 有以下程序:
#include
double f(double x);
main(  )
{double a=0; int i;
for(i=0;i<30;i+=10)a+=f((double)i);
printf("%5.of\n",a);
}
double f(double x)
{ return x*x+1; }
程序运行后的输出结果是(  )。
查看答案
单选题 以下C语言用户标识符中,不合法的是(  )。 查看答案
单选题 有以下程序:
#include
main(  )
{int a=2,b=2,C=2;
print{("%d\n",a/b&c);
}
程序运行后的输出结果是(  )。
查看答案
单选题 设x、Y和z是int型变量,且x=4,y=6,z=8,则下列表达式中值为0的是(  )。 查看答案
单选题 以下选项中,合法的一组C语言数值常量是( )。 查看答案
单选题 以下选项中关于C语言常量的叙述错误的是(  )。 查看答案
单选题 有以下程序:
#include
struct stu
{ int num;char name[l0];int age;};
void fun(struct stu*p)
{ printf("%s\n",p->name);}
main(  )
{ struct stu x[3]={{01,"Zhang",20),{02,"Wang",l9},{03,"Zha0",l8}};
fun(x+2);
}
程序运行后的输出结果是(  )。
查看答案
单选题 有以下程序:
#include
#include
main()
{ int*a,*b,*C;
a=b=c=(int*)malloc(sizeof(int));
*a=1;*b=2,*c=3;
a=b:
printf("%d,%d,%d\n",*a,*b,*c);
}
程序运行后的输出结果是( )。
查看答案
单选题 下列能正确进行字符串赋值的是(  )。 查看答案
单选题 以下函数不能用于向文件中写人数据的是(  )。 查看答案