永发信息网

为什么老是提示:未声明的标识符a,b,望c语言大神指教

答案:3  悬赏:50  手机版
解决时间 2021-03-02 09:00
为什么老是提示:未声明的标识符a,b,望c语言大神指教
最佳答案
a 和b是main里面的, 没有传到print中. 所以出错. 
这个最好的做法是, 
#include
int Add(int a, int b);
void Print(int x,int y);
void main()
{
int a,b,y;
printf("输入两个整数:");
scanf("%d%d",&a,&b);
printf("输入计算结果:");
scanf("%d",&y);
Print(Add(a,b),y);
}
int Add(int a,int b)

int c;
c=a+b;
return c;
}
void Print(int x, int y)
{
if (y!=x)
printf("not correct!Try again!");
else
printf("right");
}
全部回答
//修改了下你的代码,现在没有问题了
#include
int Add(int a, int b);
//void Print(int x);
void Print(int x,int a,int b);  //函数原型声明
void main()
{
int a,b,y;
printf("输入两个整数:");
scanf("%d%d",&a,&b);
printf("输入计算结果:");
scanf("%d",&y);
//Print(y);
Print(y,a,b);  //函数调用
}
int Add(int a,int b)

int c;
c=a+b;
return c;
}
//void Print(int x)
void Print(int x,int a,int b)  //这样定义Print()函数
{
int z;
z=Add(a,b);  //这里是在Print()函数内部,你没有声明变量a,b啊,
if (z!=x)
printf("not correct!Try again!");
else
printf("right");
}
你定义的a, b是在主函数里定义的,它两的作用域仅限主函数里使用,而Print()函数出现了a, b却并没有定义
解决方式是把声明函数改成void Print(int a, int b, int x);
把调用函数改成 Print(a, b, y);
把定义函数改成void Print(int a, int b, int x){...}
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
t恤印花怎么弄的?最好有直接往上喷图案的喷
超能植翠洗衣液品牌标识
12周岁男孩身高152厘米,声音开始变了还能长
请你给对一个对联好吗?
湖北省颁发的职业资格证书针灸科医师 从哪里
一部言情小说女主角姓斐男主好像叫什么颉
谜语一只小船弯翘翘船头船尾两只鸟还有一只船
玛莎拉蒂的品牌故事简略版
有一个100位的数,各位数字都是8,这个数除以6
怎么可以巧妙地赶走不付钱的租客
非洲所有国家的首都是什么
财务管理可以考会计证,助理工程师吗
信用卡里面有存款,那刷卡时是按透支呢,还是
建筑排水管怎么做通球试验
感谢司机锦旗标语
推荐资讯
【居里夫人的事迹】居里夫人的事迹有哪些?快
一个圆的周长比直径长8.56厘米,圆的面积是什
王者荣耀皮肤碎片怎么得
【未来的计算机】未来的计算机与前四代计算机
请问,我的号卡住了,我在破军的号卡住了啊,我
dnf加载一会儿就自动关闭了
下图反映了我国哪项金属冶炼技术的进步A. 青
湖光度假山庄-台球室在哪里啊,我有事要去这
马上得天下安能马上治。这句话什么意思?该怎
我的弟弟(18岁)趁我们都不在,就叫他BF(只有
这是二级C语言编程题吗?
在△ABC中,则“A=B”是“sinA=sinB”的什么条
正方形一边上任一点到这个正方形两条对角线的
阴历怎么看 ?