你好,代碼已為你改正,請(qǐng)采納
成都創(chuàng)新互聯(lián)-專業(yè)網(wǎng)站定制、快速模板網(wǎng)站建設(shè)、高性價(jià)比太和網(wǎng)站開(kāi)發(fā)、企業(yè)建站全套包干低至880元,成熟完善的模板庫(kù),直接使用。一站式太和網(wǎng)站制作公司更省心,省錢,快速模板網(wǎng)站建設(shè)找我們,業(yè)務(wù)覆蓋太和地區(qū)。費(fèi)用合理售后完善,10多年實(shí)體公司更值得信賴。
#include"stdio.h"
#include"stdlib.h"
int zhanzhuan(int a,int b)
{
int c,d;
if(ab)
{
d=a;a=b;b=d;
}
do
{
c=a%b;
a=b;
b=c;
}while(c!=0);
return a;
}
void main()
{
int a,b,c;
printf("請(qǐng)輸入兩個(gè)數(shù):\n");
scanf("%d%d",a,b);
c=zhanzhuan(a,b);
printf("%d\n",c);
system("pause");
}
#includestdio.h
{void?average(int?arr[],?int?count)
int?i,?sum=0;
for(i=0;icount;i++)
scanf("%d",a[i]);
{?for(i=0;?icount;?i++)
sum+=arr[i];
printf("Average:%d\n",?sum/count);
}
void?main()
{
// int?a[];??//定義的數(shù)組a沒(méi)有指定內(nèi)存空間的大小
int?a[30];
Average(a,30);
}
第一個(gè)錯(cuò)誤:#include"stdio.h"稱作 標(biāo)準(zhǔn)輸入輸出頭文件包含 必須出現(xiàn)在 文件開(kāi)始
第二個(gè)錯(cuò)誤:scanf("A",B) 格式 A稱作格式控制,用引號(hào)引起來(lái) B稱作輸入項(xiàng),他與格式控制之間用 逗號(hào) 隔開(kāi),故應(yīng)該為 scanf("%d",score);
第三個(gè)錯(cuò)誤:p函數(shù) 有 int型返回值 而 主函數(shù) 為無(wú)返回值型 所以類型不匹配
故應(yīng)改為 p(int score)
修改后 答案
#include"stdio.h"
p(int score)
{
if (score100 || score0)
printf("error");
else if (score=90 score=100)
printf("youxiu\n");
else if (score=70)
printf("lianhao\n");
else if (score=60)
printf("jige\n");
else printf("bujige\n");
}
main()
{
int score;
printf("shu chenji:");
scanf("%d",score);
p(score);
}
以下為你收集的c語(yǔ)言輸入數(shù)據(jù)要點(diǎn)及注意事項(xiàng)
說(shuō)明: (1)數(shù)據(jù)輸入是相對(duì)計(jì)算機(jī)內(nèi)存
(2) 數(shù)據(jù)輸入使用標(biāo)準(zhǔn)庫(kù)函數(shù)完成
(3) 數(shù)據(jù)輸入標(biāo)準(zhǔn)庫(kù)函數(shù)的原型聲明在stdio.h頭文件中
1、函數(shù)getchar函數(shù)的功能是從鍵盤上輸入一個(gè)字符。
其一般形式為:字符變量=getchar();
getchar函數(shù)只能接受單個(gè)字符,輸入數(shù)字也按字符處理。
輸入多余的字符存入到鍵盤的緩沖區(qū),若有下一個(gè)getchar函數(shù)語(yǔ)句,直接從鍵盤的緩沖區(qū)讀取。
2、字符串輸入函數(shù)gets 格式:
gets (st)
功能:從鍵盤上輸入一個(gè)字符串,本函數(shù)得到一個(gè)函數(shù)值,即為該字符數(shù)組的首地址。
注意:gets函數(shù)并不以空格作為字符串輸入結(jié)束的標(biāo)志,而只以回車作為輸入結(jié)束。這是與scanf(“%s”,…)函數(shù)不同的。
3、scanf()函數(shù)的一般形式
scanf(“格式控制字符串”,地址列表);
地址列表,用來(lái)接受數(shù)據(jù)各變量的地址。
變量的地址表示如下: 變量名 ,別忘了取地址運(yùn)算
其格式字符串的一般形式為:
%[*][輸入數(shù)據(jù)寬度][長(zhǎng)度]類型字符
其中有方括號(hào)[]的項(xiàng)為任選項(xiàng)。各項(xiàng)的意義如下:
1) 類型字符
表示輸入數(shù)據(jù)的類型,其格式符和意義如下所示:
d 輸入十進(jìn)制整數(shù)
o 輸入八進(jìn)制整數(shù)
x 輸入十六進(jìn)制整數(shù)
u 輸入無(wú)符號(hào)十進(jìn)制整數(shù)
f或e 輸入實(shí)型數(shù)(用小數(shù)形式或指數(shù)形式)
c 輸入單個(gè)字符
s 輸入字符串
2) “*”符
用以表示該輸入項(xiàng)讀入后不賦予相應(yīng)的變量,跳過(guò)該輸入值。
如 scanf("%d %*d %d",a,b);
輸入為:1 2 3 把1賦予a,2被跳過(guò),3賦予b。
3)寬度
用十進(jìn)制整數(shù)指定輸入的寬度(即字符數(shù))。
例如: scanf("%5d",a);
輸入: 12345678
只把12345賦予變量a,其余部分被截去。
又如: scanf("%4d%4d",a,b);
輸入:12345678將把1234賦予a,而把5678賦予b。
4)長(zhǎng)度 長(zhǎng)度格式符為l和h,l表示輸入長(zhǎng)整型數(shù)據(jù)(如%ld)和雙精度浮點(diǎn)數(shù)(如%lf)。h表示輸入短整型數(shù)據(jù)。
例如:
main()
{ inta;
long b;
double x;
scanf(“%d%ld%lf”,a,b,x);
printf(“a=%d, b= %ld,x=%lf”,a,b,x);
}
使用scanf函數(shù)還必須注意以下幾點(diǎn):
(1)scanf函數(shù)中沒(méi)有精度控制。
如:scanf(“%5.2f”,a); 是非法的。
(2)scanf中要求給出變量地址,
如: scanf(“%d”,a);是非法的。
(3)在輸入多個(gè)數(shù)值數(shù)據(jù)時(shí),若格式控制串中沒(méi)有非格式字符作輸入數(shù)據(jù)之間的間隔則可用空格,TAB或回車作間隔。
例如:scanf(“%d%d”,a,b);
輸入: 12 10 回車
或 12 回車 10 回車
(4)在輸入字符數(shù)據(jù)時(shí),若格式控制串中無(wú)非格式字符,則認(rèn)為所有輸入的字符均為有效字符。
例如:
scanf("%c%c%c",a,b,c);
輸入為:d e f 則把'd'賦予a, ‘’'賦予b,'e'賦予c。
只有當(dāng)輸入為: def時(shí),把'd'賦于a,'e'賦予b,'f'賦予c。
如果在格式控制中加入空格作為間隔,
如 scanf ("%c %c %c",a,b,c);
輸入時(shí)各數(shù)據(jù)之間可加空格。
(5)如果格式控制串中有非格式字符則輸入時(shí)也要輸入該非格式字符。
例如:
scanf("%d,%d,%d",a,b,c);
其中用非格式符“,”作間隔符,故輸入時(shí)應(yīng)為: 5,6,7
又如:
scanf("a=%d,b=%d,c=%d",a,b,c);
則輸入應(yīng)為: a=5,b=6,c=7
(6)如輸入的數(shù)據(jù)與輸出的類型不一致時(shí),雖然編譯能夠通過(guò),但結(jié)果可能不正確。
void main()
{ inta;
printf("inputa number\n");
scanf("%d",a);
printf("%ld",a);
}
以上總結(jié)比較全面,希望能幫到你。
當(dāng)前標(biāo)題:c語(yǔ)言函數(shù)易錯(cuò)點(diǎn) c語(yǔ)言易錯(cuò)知識(shí)點(diǎn)
URL分享:http://muchs.cn/article4/dogiioe.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站設(shè)計(jì)、軟件開(kāi)發(fā)、App設(shè)計(jì)、App開(kāi)發(fā)、網(wǎng)站營(yíng)銷、網(wǎng)站設(shè)計(jì)公司
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)