1. c語言寫的交換兩個數的函數不起作用,哪裡有問題
#include<stdio.h>
#include<math.h>
voidexchange(int*a,int*b)//交換a,b
{
intc;
c=*a;
*a=*b;
*b=c;
}
exchange(&a,&b);
2. 在c語言中用不了函數,怎麼回事
函數先使用後定義了。
C語言要求調用某一個函數之前,一定要知道該函數的定義。
兩者修改方法:
//一、將函數的定義放在調用之前,這樣調用的時候就知道該函數的定義了
#include<stdio.h>
voidcheer(){
printf("cheer");
}
intmain(){
cheer();
}
//二、在調用函數之前,顯示聲明該函數的類型
#include<stdio.h>
intmain(){
voidcheer();
cheer();
}
voidcheer(){
printf("cheer");
}
3. c語言寫函數,為什麼函數不執行
這是因為getchar前面有一個scanf("%lf",&a);
你輸入完a的值後,是否會
輸入回車
這個回車就是一個字元啊,這個字元就被getchar當做你輸入的字元了,所以看起來像沒有執行,其實是執行了。
可以在getchar()前使用
fflush(stdin);
刷新標准輸入緩沖區,把輸入緩沖區里的東西丟棄
這樣就可以輸入字元了。