30/09/2018, 16:51
Về do...while trong C
#include<stdio.h>
#include<stdlib.h>
int main()
{
int i=0;
printf("nhap i:");
scanf("%d",&i);
do{printf("Nhap so i lon hon 7");
}
while(i>7);
system("pause");
return 0;
}
trong bài trên nếu mình nhập giá trị i <7 thì nó sẽ thực hiện in ra câu " Nhap so i lon hon 7" đúng 1 lần rồi tắt , nhưng nếu nhập 1 số i>8 thì nó sẽ liên tục in ra câu " Nhap so i lon hon 7" liên tục , gần như là chạy vô tận . Có cách nào dừng lại khi mình nhập đúng điều kiện i> 7 không ?
Bài liên quan
Bạn nhét 2 dòng
printf(“nhap i:”);
scanf("%d",&i);
vào trong câu lệnh do while nha dưới cái dòng printf(“Nhap so i lon hon 7”);
bạn sẽ thấy sự khác biệt
còn nữa bạn sửa lại điều kiện của while là i <= 7 .
ok , cảm ơn bạn , m quên mất cái điều kiện kia nếu nhập i=8 nó luôn đúng nên nó lặp vô hạn
phài đổi về i<=7
Mình nghĩ trong trường hợp này sao không dùng While không thôi, vì nếu trong trường hợp này bạn nhập giá trị bao nhiêu (thỏa hoặc không) thì chương trình đều in ra dòng “Nhap so i lon hon 7” rồi nó mới xét điều kiện while.
à mình muốn thử do … while ấy mà