c语言怎么定义函数,a已经先于函数定义,为什么在函数中还会出现a未定义的错误提示

您所在位置: &
&nbsp&&nbsp&nbsp&&nbsp
2012函授C语言试卷A卷.doc 5页
本文档一共被下载:
次 ,您可全文免费在线阅读后下载本文档。
下载提示
1.本站不保证该用户上传的文档完整性,不预览、不比对内容而直接下载产生的反悔问题本站不予受理。
2.该文档所得收入(下载+内容+预览三)归上传者、原创者。
3.登录后可充值,立即自动返金币,充值渠道很便利
2012函授C语言试卷A卷
你可能关注的文档:
··········
··········
三明职业中专学校学年第二学期
《C语言程序设计》函授大专考试试卷(A卷)
本试卷共有四道题,满分100分,考试时间为120分钟
题号 一 二 三 四 满分
题分 30 20 10 40 100
单项选择题:(30%)
1、以下说法中正确的是(
A、C语言程序总是从第一个的函数开始执行 B、在C语言程序中,要调用的函数必须在main()函数中定义
C、C语言程序总是从main()函数开始执行
D、C语言程序中的main()函数必须放在程序的开始部分
2、一个算法应该具有“确定性”等五个特性,下面对另外4个特性的描述中错误的是(
)A、有零个或多个输入
B、有零个或多个输出 C、有穷性 D、可行性
3、以下选项中,不合法常量的是 (
A、1.234e04
B、1.234e0.4
C、1.234e+4
D、1.234e0
4、C语言中最简单的数据类型包括(
A、整型、实型、逻辑型
B、整型、实型、字符型
C、整型、字符型、逻辑型
D、整型、实型、逻辑型、字符型
5、设a和b均为double型变量,且a=5.5、b=2.5,则表达式(int)a+b/b的值是(
A、 6.500000
C、 5.500000
D、 6.000000
6、x、y、z被定义为int型变量,若从键盘给x、y、z输入数据,正确的输入语句是 (
A、 INPUT x、y、z;
B、 scanf(&%d%d%d&,&x,&y,&z);
C、 scanf(&%d%d%d&,x,y,z);
D、 read(&%d%d%d&,&x,&y,&z);
7、设char ch='A';则ch=(ch&='A'&&ch&='Z')?(ch+32):ch的值是(
8、语句int k=1; while (k++&10);执行后,变量k的值是(
B、11 C、9
D、无限循环,值不定
9、C语言程序由函数组成,它的(
A、主函数必须在其它函数之前,函数内可以嵌套定义函数
B、主函数可以在其它函数之后,函数内不可以嵌套定义函数
C、主函数必须在其它函数之前,函数内不可以嵌套定义函数
D、主函数必须在其它函数之后,函数内可以嵌套定义函数
10、以下叙述中正确的是(
A、C语言的源程序不必通过编译就可以直接运行
B、C语言中的每条可执行语句最终都将被转换成二进制的机器指令
C、C源程序经编译形成的二进制代码可以直接运行
D、C语言中的函数不可以单独进行编译
11、C语言中, 下列字符常量合法的是(
12、以下不是关键字的是(
A、continue
D、default
13、为了避免在嵌套的条件语句if――else中产生二义性,c语言规定:else子句总是与(
A、缩排位置相同的if
B、其之前最近的if
C、其之后最近的if
D、同一行上的if
14、以下描述正确的是(
A、由于do-while循环中循环体语句只能是一条可执行语句,所以循环体内不能使用复合语句。
B、do-while循环由do开始,用while结束,在while(表达式)后面不能写分号。
C、在do-while循环体中,一定要有能使while后面表达式的值变成零(“假”)的操作。
D、do-while循环中,根据情况可以省略while
15、下面描述正确的是(
A、字符串所包含的字符个数相同时,才能比较字符串
B、字符个数多的字符串比字符个数少的字符串大
C、字符串&stop
&与&stop&相等
D、字符串“That”小于字符串&The&
16、在C语言中,引用数组元素时,其数组下标的数据类型允许是(
A、整型常量
B、整型表达式
C、整型常量或整型表达式
D、任何类型的表达式
正在加载中,请稍后...欢迎加入我们,一同切磋技术。 &
用户名: &&&
密 码: &
共有 8364 人关注过本帖
标题:VC6.0中,调用已定义函数时,出现undeclared identifier,redefinition错误 ...
等 级:新手上路
结帖率:100%
&&已结贴√
&&问题点数:20&&回复次数:6&&&
VC6.0中,调用已定义函数时,出现undeclared identifier,redefinition错误,这是怎么回事?
程序代码:#include&conio.h&
#include&stdio.h&
#include&stdlib.h&
//记录学生数
//定义学生信息
struct student
&&& char name[<font color=#];
&&& float Maths[<font color=#];
&&& float English[<font color=#];
&&& float Computer[<font color=#];
&&& double finallyscore[<font color=#];
&&& struct student *
//函数声明
struct student *create();
void Delete(struct student *pHead);
bool cheak2(struct student *pHead,int number);&&&
void main()
&&& struct student *pHead=NULL;
&&& printf(&请选择:&);
&&& scanf(&%d&,&option);
&&& while(true)
&&&&&&&&switch(option)
&&&&&&&&case <font color=#: pHead=create();break;
&&&&&&&&case <font color=#:&&& Delete(pHead);break;
&&&&&&&&case <font color=#: exit(<font color=#);break;
&&&&&&&&default :
&&&&&&&&&&&&{
&&&&&&&&&&&&&&& printf(&输入错误,请重新输入:&);
&&&&&&&&&&&&&&& scanf(&%d&,&option);
&&&&&&&&&&&&}
&&&&&&&&getch();
&&&&&&&&printf(&请选择:&);
&&&&&&&&scanf(&%d&,&option);
//创建信息
struct student *create()
&&& struct student *pH
&&& struct student *pNew,*pE
&&& pHead=NULL;
&&& count=<font color=#;
&&& pEnd=pNew=(struct student*)malloc(sizeof(struct student));
&&& while(true)
&&&&&&&&printf(&请输入学生信息(输入0退出)\n\n&);
&&&&&&&&printf(&学号:&);
&&&&&&&&scanf(&%d&,&pNew-&num);
&&&&&&&&while(pNew-&num&<font color=#)
&&&&&&&&&&&&printf(&输入错误,请重新输入学号:&);
&&&&&&&&&&&&scanf(&%d&,&pNew-&num);
&&&&&&&&&&&&getch();
&&&&&&&&if(pNew-&num==<font color=#)
&&&&&&&&&&&&goto
&&&&&&&&printf(&学生姓名:&);
&&&&&&&&scanf(&%s&,&pNew-&name);
&&&&&&&&printf(&数学平时成绩、考试成绩:&);
&&&&&&&&scanf(&%f%f&,&pNew-&Maths[<font color=#],&pNew-&Maths[<font color=#]);
&&&&&&&&printf(&英语平时成绩、考试:&);
&&&&&&&&scanf(&%f%f&,&pNew-&English[<font color=#],&pNew-&English[<font color=#]);
&&&&&&&&printf(&计算机平时成绩、考试成绩:&);
&&&&&&&&scanf(&%f%f&,&pNew-&Computer[<font color=#],&pNew-&Computer[<font color=#]);
&&&&&&&&printf(&\n&);
&&&&&&&&&&&&
&&&&&&&&//计算综合成绩
&&&&&&&&pNew-&finallyscore[<font color=#]=pNew-&Maths[<font color=#]*<font color=#.3+pNew-&Maths[<font color=#]*<font color=#.7;
&&&&&&&&pNew-&finallyscore[<font color=#]=pNew-&English[<font color=#]*<font color=#.3+pNew-&English[<font color=#]*<font color=#.7;
&&&&&&&&pNew-&finallyscore[<font color=#]=pNew-&Computer[<font color=#]*<font color=#.3+pNew-&Computer[<font color=#]*<font color=#.7;
&&&&&&&&count++;
&&&&&&&&if(count==<font color=#)
&&&&&&&&&&&&pNew-&next=pH
&&&&&&&&&&&&pHead=pN
&&&&&&&&&&&&pEnd=pN
&&&&&&&&else
&&&&&&&&&&&&pNew-&next=NULL;
&&&&&&&&&&&&pEnd-&next=pN
&&&&&&&&&&&&pEnd=pN
&&&&&&&&pNew=(struct student*)malloc(sizeof(struct student));
&&&&&&&&free(pNew);
&&&&&&&&return pH&&&
//删除学生信息
void Delete(struct student *pHead)
&&& int a,i;
&&& if(pHead!=NULL)
&&&&&&&&printf(&请输入要删除的学生学生学号:&);
&&&&&&&&scanf(&%d&,&a);
&&&&&&&&if(check2(pHead,a))
&&&&&&&&&&&&struct student *pTemp,*pP
&&&&&&&&&&&&pTemp=pH
&&&&&&&&&&&&for(i=<font color=#;i&a;i++)
&&&&&&&&&&&&{
&&&&&&&&&&&&&&& pPre=pT
&&&&&&&&&&&&&&& pTemp=pTemp-&
&&&&&&&&&&&&}
&&&&&&&&&&&&pPre-&next=pTemp-&
&&&&&&&&&&&&free(pTemp);
&&&&&&&&&&&&count--;
&&&&&&&&&&&else
&&&&&&&&&&&&printf(&该学生不存在!&);
&&&&&&&&printf(&该系统不存在任何信息,请先建立!&);
//检查是否存在该学生信息
bool check2(struct student *pHead,int number)
&&& struct student *ptemp=pH
&&& if(pHead==NULL)
&&&&&&&&printf(&没有相关学生信息\n&);
&&&&&&&&return false;
&&&&&&&&while(ptemp!=NULL)
&&&&&&&&&&&&if(ptemp-&num==number)
&&&&&&&&&&&&{
&&&&&&&&&&&&&&& return true;
&&&&&&&&&&&&&&& break;
&&&&&&&&&&&&}
&&&&&&&&&&&&ptemp=ptemp-&
&&&&&&&&return false;
C:\Users\acer\Desktop\a.cpp(121) : error C2065: 'check2' : undeclared identifier
C:\Users\acer\Desktop\a.cpp(143) : error C2373: 'check2' : different type modifiers
搜索更多相关主题的帖子:
来 自:神界
等 级:贵宾
威 望:366
帖 子:12685
专家分:49630
&&得分:10&
你看一下声明&&大概是拼写错误吧
DO IT YOURSELF !
等 级:新手上路
声明检查了一下,似乎没有错。
等 级:新手上路
如果出现这类问题,一般情况是什么造成的,大概怎么解决这类问题呢?
等 级:贵宾
威 望:58
帖 子:3845
专家分:11385
&&得分:10&
回复 3楼 序乱H
你要是我教的肯定会挨顿臭骂
函数声明写的是cheak2
定义的是check2,你说一样吗?
总有那身价贱的人给作业贴回复完整的代码
等 级:贵宾
威 望:304
帖 子:25793
专家分:48814
以下是引用embed_xuel在 13:42:32的发言:
你要是我教的肯定会挨顿臭骂
函数声明写的是cheak2
定义的是check2,你说一样吗?
授人以渔,不授人以鱼。
等 级:新手上路
,太sorry了,感谢你们
版权所有,并保留所有权利。
Powered by , Processed in 0.065183 second(s), 7 queries.
Copyright&, BCCN.NET, All Rights Reserved在C语言中,定义函数的形参的时候写&a或者*&a这种有什么用?_百度知道
在C语言中,定义函数的形参的时候写&a或者*&a这种有什么用?
在C语言中,定义函数的形参的时候写&a或者*&a这种有什么用?
比如我在主函数中传下去的实参一个int 的a,在调用的函数中,在定义的括号中的形参写成 int &a或者int *&a有什么用啊?
听说这样能够实现这个变量a的双向传递?也就是说在函数中对这个a的操作会影...
我有更好的答案
--------还有&quot楼上的几位老大,形参实参对你们来说一样啊? 楼主说得很清楚,是形参的定义里的&,你们取的什么地址;这样能够实现这个变量a的双向传递&quot,能看出楼主概念很清楚。&不是C的类型,建议去看C++书??,虽然是问题??;,说得准确极了
采纳率:33%
这就是书上说的地址传递。
&是取地址符号,表示传递过去的是地址操作,可以进行间接值访问。
&a一般在输入数据时有用,或者是取变量a的地址。*&a是先取a的地址,再取a的值。
其他类似问题
c语言的相关知识
&#xe675;换一换
回答问题,赢新手礼包&#xe6b9;
个人、企业类
违法有害信息,请在下方选择后提交
色情、暴力
我们会通过消息、邮箱等方式尽快将举报结果通知您。C语言在主函数中定义了二维数组,调用函数中报错说未定义,求解决_百度知道
C语言在主函数中定义了二维数组,调用函数中报错说未定义,求解决
#include&stdio.h&void main(){
void aver(float array[][4], int n); float a[4][4]={{65,67,70,60},{80,87,90,81},{90,99,100,98},{0,0,0,0}}; printf(&求得平均分:\n&); aver(a,3);}void aver(float array[][4],int n){
int i,j,k,q=0;
for (i=0...
我有更好的答案
在aver函数的定义域内找不到a的定义,所以报错,把a换成array
为您推荐:
其他类似问题
&#xe675;换一换
回答问题,赢新手礼包&#xe6b9;
个人、企业类
违法有害信息,请在下方选择后提交
色情、暴力
我们会通过消息、邮箱等方式尽快将举报结果通知您。

我要回帖

更多关于 c语言自定义函数调用 的文章

 

随机推荐