调用时你的函数switch(int a,int b)
让客户满意是我们工作的目标,不断超越客户的期望值来自于我们对这个行业的热爱。我们立志把好的技术通过有效、简单的方式提供给客户,将通过不懈努力成为客户在信息化领域值得信任、有价值的长期合作伙伴,公司提供的服务项目有:域名申请、虚拟主机、营销软件、网站建设、新安网站维护、网站推广。
把a[i]的值赋给了a,把a[j]的值赋给了b(数组b相同)
然后函数交换使得
a=a[j]
b=a[i]
所以a[i]跟a[j]的值还是没有交换,换的是a,b的值
你可以把函数修改一下(改用指针参数):
void switch(int *a, int *b){
int t;
t=*a;
*a=*b;
*b=t;
}
调用时:switch(a+i, a+j)
在函数中(包括主函数)不能定义和函数名相同的变量,一般情况下函数名的定义需要有实际意义,让编程者能一看便知函数的功能(变量也是这样),如果是需要多个单词才能表达意思就使用下划线连接两个或多个单词,或者直接写在一起每个单词首字母大写,这样定义主要是为了让程序看起来更加简洁明了,让其他人能迅速了解程序功能,便于修改
函数先使用后定义了。
C语言要求调用某一个函数之前,一定要知道该函数的定义。
两者修改方法:
//一、将函数的定义放在调用之前,这样调用的时候就知道该函数的定义了
#includestdio.h
void cheer() {
printf ("cheer");
}
int main() {
cheer();
}
//二、在调用函数之前,显示声明该函数的类型
#includestdio.h
int main() {
void cheer();
cheer();
}
void cheer() {
printf ("cheer");
}