c語言判斷回車
⑴ C語言for循環判定回車的問題
#include<stdio.h>
#include<string.h>
int main()
{
char *key[10]={"Apple","Icecream","Pear","Banana","Keyword"},c[10];
int i,a;
printf("請輸入學生座位號:");
scanf("%d",&a);
//吃掉輸入座位號後的回車
getchar();
printf("請輸入用戶口令:");
//for循環應先進行!=的判斷,再進行i++
for(i=0;(c[i]=getchar())!='\n';i++)
{
printf("*");
}
printf("\n");
c[i]='\0';
if(strcmp(key[a-1],c)!=0)
printf("口令錯誤!");
else
printf("口令正確,歡迎使用!");
return 0;
}
⑵ 關於C語言中回車的問題
你好,是這樣的,且聽我細細道來
給你舉個例子你就明白了
while((c = getchar()) != EOF)
{
if(c == '\n')
++nl;
}
printf("%d", nl);
這個輸出printf是在循序執行完畢之後才有的。所以每次輸入都沒有輸出,到最後輸入完了才出結果
while((c = getchar()) != EOF)
{
if(c == '\n')
++nl;
printf("%d", nl);
}
而這個輸出printf是在循序裡面的。所以每循環一次輸入都會輸出。
區別就在於輸出函數是什麼時候執行的,它執行了才會有輸出。
⑶ C語言判斷用戶輸入是否為回車鍵 務必看完問題補充
scanf("%s會忽略回車符,所以直接回車是沒用的,程序會以為你沒有輸入,代碼可以改成這種
#include<stdio.h>
#include<string.h>
intmain()
{
charmeg[1024];
inti=0;
while(i<1024)
{
scanf("%c",meg+i);
if(meg[i]==10)break;
i++;
}
meg[i]='