當前位置:編程學習大全網 - 編程軟體 - C程序有壹個錯誤檢查不出來。。。

C程序有壹個錯誤檢查不出來。。。

1.if(條件){內容}語句的條件部分的括號是壹定要加的,

如最後壹個定義的函數中有兩個if的條件沒括號,這會導致編譯出錯。

2.Dispdata的錯誤,printf("沒有該學號,請重新輸入");的後面應該加壹句p=&stu[0];

不然再次查找會出錯,最好的方法是把printf("沒有該學號,請重新輸入");後面的w=0;這句去掉,

這樣還能避免無限輸入要求(沒有學號時會造成死循環)。

3.Adddata的錯誤,沒有對學號或姓名相同的輸入進行判斷,會導致壹些錯誤的輸入被認可且

無法修改

4.不知道程序有沒有按層次縮進,沒的話建議縮壹下,明了些,就是這樣:

void Dispdata(struct student *p) //按學號查詢成績

{

int w=0,xuehao;

do

{

printf("請輸入所要查詢的學生的學號:");

scanf("%d",&xuehao);

if(xuehao==(*p).num)

{

printf("\n該學生數據:\n姓名:%s 學號:%d 數學:%d 英語:%d 計算機:%d 平均分:%d\n",(*p).name,(*p).num,(*p).mathamatic,(*p).english,(*p).computer,(*p).average);

break;

}

else

{

p=p+1;

w=w+1;

if(w=100)

{

printf("沒有該學號,請重新輸入");

}

}

}while(w!=100);

}

  • 上一篇:大學無聊除了玩手機還能做什麽?
  • 下一篇:卡梅隆·菲利普斯的人物介紹
  • copyright 2024編程學習大全網