亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

您好,在Strcmp函數中flag的作用是什么?有什么特殊含義么

您好,在Strcmp函數中flag的作用是什么?有什么特殊含義么

胡子哥哥 2021-07-07 10:07:03
我編寫一個判斷一學生是否屬于一班級的程序,如下:#define MAX 5#define LEN 10main(){int i;char name[LEN];static char list [MAX][LEN]={"Zhang","Wang","Li","Tan","Ling"};printf("Enter your name:");gets(name);for(i=0;i<MAX;i++)if(strcmp(list[i],name)==0)printf("%s is in our class\n",name);elseprintf("%s is not in our class\n",name);}編譯沒有錯誤,但在執行時,結果顯示:Enter your name: ZhangZhang is in our classZhang is not in our classZhang is not in our classZhang is not in our classZhang is not in our classPress any key to continue請問這是什么原因?書上的原程序是:#define MAX 5#define LEN 10main(){int i,flag=0;char name[LEN];static char list [MAX][LEN]={"Zhang","Wang","Li","Tan","Ling"};printf("Enter your name:");gets(name);for(i=0;i<MAX;i++)if(strcmp(list[i],name)==0)flag==1;if(flag==1)printf("%s is in our class\n",name);elseprintf("%s is not in our class\n",name);}和我自己編寫的差別是多加了flag,請問這個flag是什么作用?是編寫strcmp這個比較功能的函數時必須使用的嗎?
查看完整描述

3 回答

?
元芳怎么了

TA貢獻1798條經驗 獲得超7個贊

flag的作用就是標志著我們是否找到我們輸入的名字。
你看flag被初始化為0,意思就是在查找之前呢,我們默認是沒找到的。
當strcmp返回0,表示字符數組中有一個字符和我們輸入的相同,那么不就是找到了嗎?然后我們就把flag設置成0.
那么接著我們再判斷flag的值就可以知道我們是否找到字符串了。

查看完整回答
反對 回復 2021-07-11
  • 3 回答
  • 0 關注
  • 365 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號