请c高手看下

来源:百度知道 编辑:UC知道 时间:2024/06/05 00:39:22
main()
{ int a,b,s;
scanf("%d%d",&a,&b);
s=a;
if(as=b;
s*=s;
printf("%d",s);
}
A)36
B)64
C)48
D)以上都不对
系统给的答案是B,我想知道为什么选B,麻烦把解题思路说详细点,谢谢

首先帮你补全题目
#include<stdio.h>
main()
{ int a,b,s;
scanf("%d%d",&a,&b);
s=a;
if(a)s=b;
s*=s;
printf("%d",s);
}
首先,s是int类型的,所以当s*=s后,s必为完全平方数
只有64是完全平方数……
其次,题意不清,像WCYSE说的一样,没有输入值,无法得知结果

代码有错误吧,
if语句怎么写的

你的程序不正确,if语句那不对,而且你没说输入的a,b值是多少,怎么知道结果呢

写错了吧,as怎么回事

main()
{ int a,b,s;
scanf("%d%d",&a,&b);
s=a;
if(as=b;
s*=s;
printf("%d",s);
}
A)36
B)64
C)48
D)以上都不对
答案本身有错
S自乘=64时,S的初值为8,a的初值为8,b的初值为64
同理,A应该也成立。凡是平方跟为整数的都成立

程序 if(as=b; 应改为 if(a)s=b; 输入值没提供 怎么输出啊 ~~~还有 s*=s s为完全平方 只有选 64

麻烦 怎么发个 错误的程序出来呢