#include<stdio.h>
int main() {
int b;
b=6;
while (getchar () !=b)
printf ("執行");
printf ("不執行") ;
return 0;
}
以什么樣的方式輸入ASCII碼中的字符"ACK",使while判斷為假?
我如果直接輸入ACK,只會以單字符來算 A C K
之前有一個相似問題,讓我知道了我的錯誤,也知道了單字符直接輸入就可。
比如將b=6改為b=54,然后直接輸入6,運行之后只會列印不執行。
uj5u.com熱心網友回復:
同時按 Ctrl 和 Fuj5u.com熱心網友回復:
ASC問題int main() {
char str[5];
while (gets(str) !="ACK")
printf ("執行");
printf ("不執行");
return 0;
}
//getchar()函式回傳的是獲取字符的ASCII碼,比如你輸入的是 6 用getchar()獲取。他的回傳值是 54
//只有你的變數b = 54時,才會while條件為真 或者直接令getchar() != '6'
int main() {
int b = 54;
//while(getchar() !=b)
while(getchar() != '6')
printf ("執行 ");
printf ("不執行 ");
return 0;
}
uj5u.com熱心網友回復:
不好意思,我是在用手機在在線IDE中輸入,所以想了解一下。uj5u.com熱心網友回復:
非常感謝你的回復,從你的回復中我學到了很多,但我依然有一個問題:如果我想輸入ASCII字符集中的字符,比如'ACK',然后以'ACK'代表的值'6'作為判斷,那么我以什么樣的方式來輸入'ACK'?
在你列出的第一個程式中我又該如何輸入才可以不執行while回圈?
我用在線IDE測驗,輸入ACK,while回圈依然會被執行。
uj5u.com熱心網友回復:
傻瓜 有些控制保留字符只能虛擬鍵盤輸入uj5u.com熱心網友回復:
char str[5];
while (strcmp(gets_s(str),"ACK") != 0)//改成使用strcmp()來判斷是否相等,0表示相等,非0不相等
{
printf("執行");
}
printf("不執行");
需要添加頭檔案
include <string.h>
uj5u.com熱心網友回復:
哦!謝謝你的回復。
uj5u.com熱心網友回復:
哦,謝謝你的回復。uj5u.com熱心網友回復:
哦!謝謝你的回復。
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/77474.html
標籤:C語言
上一篇:求助!幫忙看看哪里有問題C++
