A. c語言中怎樣做到輸入某鍵繼續循環,按另一鍵退出循環
[1] do.....while型
do{
char ch;
其他語句。;
.........;
.......;
printf("繼續循環輸入Y,否則輸入N。「);
ch=getchar();
}while(ch=='Y'||ch=='y');
[2] while(...)型
while(ch=='Y'||ch=='y'){
循環體;
......
......;
printf("繼續循環輸入Y,否則輸入N。「);
ch=getchar();
}
[3] for(;;)
for(i=0;;i++){
循環體;
......
......;
printf("繼續循環輸入Y,否則輸入N。「);
ch=getchar();
}
如果在執行過程中有輸入,還要一個getchar()來吸收回車字元。
例如:
do{
char ch;
int a;
scanf("%d",&a);
其他語句。;
.........;
.......;
printf("繼續循環輸入Y,否則輸入N。「);
getchar()//用來吸收回車字元
ch=getchar();
}while(ch=='Y'||ch=='y');
還可以用isspace()函數來做.例如
do{
char ch;
其他語句。;
.........;
.......;
printf("繼續循環輸入Y,否則輸入N。「);
while(isspace(ch=getchar()));
}while(ch=='Y'||ch=='y');
-> isspace()原型為 int isspace(int ch);
其功能為,檢查 ch是否為空格、跳格、回車換行符。是返回 1;不是則返回 0。
B. C語言怎麼退出while循環
if條件語句寫錯了:
if(a=="#") 判斷字元串相等不能用等號
if(strcmp(a,"#")==0) 要這么寫
while 是一個循環體,退出循環體的方法有:
(1)循環體條件 不成立,如:while( a>0); 當 a≤0 的時候,條件 a>0不成立,while 循環結束,退出 while 循環。
(2)在循環體內使用無條件跳出語句(break),如 while(1){if(b>5)break;}當 b>5 的時候,程序執行 break ,跳出 while 循環體,循環體被結束。
(3)在循環體內使用 函數返回 語句(return),如 while(1){if(c>8) return (XXX);},當 c>8的時候,程序執行 return,退出函數返回到上級函數。其中返回值XXX需要根據 函數類型進行返回。
如 int 型函數 int fun(),XXX應為 int型,空返回值函數 void fun(),XXX 可以省略。
(2)c語言按一個字母退出循環擴展閱讀:
其他語言中while循環的語法:
1、Pascal
while <條件> do <語句>
意為當條件符合時,接著做下面的語句;不符合時,退出循環。
2、C語言
do <語句> while(<條件>);
while(<條件>) <語句>;
3、Java
while(<條件>) {<語句;>}
do {<語句;>} while(<條件>);
二者的區別是do-while最少會被執行一次。
循環中可以使用continue結束當前循環,回到循環開始處開始下一次循環。也可以用break跳出整個循環。
C. C語言中,如何用鍵盤輸入來退出循環
while(bioskey(0));
你按任何一個鍵就退出循環。不用按回車。
int
bioskey(int
cmd)本函數用來執行各種鍵盤操作,由cmd確定操作。
cmd可為以下值:
0
返回敲鍵盤上的下一個鍵。若低8位為非0,即為ASCII字元;若低8位為0,
則返回擴充了的鍵盤代碼。
1
測試鍵盤是否可用於讀。返回0表示沒有鍵可用;否則返回下一次敲鍵之值。
敲鍵本身一直保持由下次調用具的cmd值為0的bioskey所返回的值。
2
返回當前的鍵盤狀態,由返回整數的每一個位表示,見下表:
┌--┬-----------┬-----------┐
│
位
│為0時意義
│為1時意義
│
├--┼-----------┼-----------┤
│
7
│插入狀態
│改寫狀態
│
│
6
│大寫狀態
│小寫狀態
│
│
5
│數字狀態,NumLock燈亮
│游標狀態,NumLock燈熄
│
│
4
│ScrollLock燈亮
│ScrollLock燈熄
│
│
3
│Alt按下
│Alt未按下
│
│
2
│Ctrl按下
│Ctrl未按下
│
│
1
│左Shift按下
│左Shift未按下
│
│
0
│右Shift按下
│右Shift未按下
│
D. 20分:求C語言的一個命令 可以讓用戶輸入1個字母就退出這個程序的命令!
根據C的規定,scanf()的返回值:
你可以試著運行下下面這段代碼
#include<stdio.h>
int main()
{
int m,n;
n=scanf("%d",&m);
printf("%d",n);
}
可以發現當輸入數字時,輸出1;當輸入字母時,輸出0;
這樣就可以根據scan()的返回值來做出這個命令。
E. c語言中,怎樣實現按一個普通按鍵或滑鼠在循環語句中的任意位置退出循環
用break
要跳出哪個循環就在那個循環末尾加break
要跳出兩個就兩個末尾都加break
F. 這個C語言程序輸入字母會出現死循環,為什麼怎麼辦
輸入數據後,判斷一下scanf函數的返回狀態,返回0則讀取失敗。失敗的原因有很多可能,比如你的這道例子,指定輸入數字,但是卻輸入了字元,就會返回0,而且scanf不會有動作。由於num沒有初始化,所以它是一個垃圾值,這就是死循環的原因。
另外,如果想要輸入指定字元退出的話,在多加一個判斷即可。
G. C語言中如何實現按任意鍵退出
直接調用系統函數 system("pause")即可:
system()會調用fork()產生子進程, 由子進程來調用/bin/sh-c string 來執行參數string 字元串所代表的命令, 此命令執行完後隨即返回原調用的進程。
system("pause")可以實現凍結屏幕,便於觀察程序的執行結果。
(7)c語言按一個字母退出循環擴展閱讀:
C語言參考函數:
C語言isupper()函數:判斷一個字元是否是大寫字母
C語言isspace()函數:判斷一個字元是否是空白符
C語言isprint()函數:判斷一個字元是否是可列印字元
C語言islower()函數:判斷一個字元是否是小寫字母
C語言labs()函數:求整數的絕對值(針對long類型)
H. c語言中定義了int a;輸入時故意輸入字母就會死循環 怎麼解決
你好!
在scanf("%d",&a);之前加一句fflush(stdin);
清緩存
如:
int
a,b;
printf("enter
the
number:\n");
fflush(stdin);
scanf("%d",&a);
僅代表個人觀點,不喜勿噴,謝謝。
I. c語言按一個字母退出循環
while(c=='n')
判斷條件錯誤:應該改為while(C!='n』)
當C不等於'n'時~循環!等於'n'是結束循環'
還有下面的那個代碼:結尾必須加上
return
0;