01/10/2018, 16:14
C problem, lệnh gets_s thứ 1 bị đè bởi lệnh gets_s thứ 2
#include "stdio.h"
#include "conio.h"
#include "ctype.h"
#include "string.h"
int main()
{
char name[70], id[10];
int vitri = 0;
printf("enter name: ");
gets_s(name);
printf("enter id: ");
gets_s(id);
int L = strlen(name);
int M = strlen(id);
for (int i = 0; i < L; i++)
{
if (name[i] == ' ')
vitri = i + 1;
}
for (int i = vitri; i < L; i++)
printf("%c", tolower(name[i]));
printf(".");
for (int i = 0; i < vitri; i++)
{
if (name[i] != ' ' && (name[i - 1] == ' ' || i == 0))
{
printf("%c", tolower(name[i]));
}
}
for (int i = 3; i < M; i++)
printf("%c", id[i]);
printf("@sinhvien.hoasen.edu.vn");
_getch();
}
Em có thử xài fflush(stdin)
nhưng không thành công cho lắm, khi cho chạy nó chỉ cho phép em nhập vào phần id còn phần name thì hoàn toàn không được. Mọi người có thể cho em biết em đang sai chỗ nào không ạ
Bài liên quan
fflush(stdin)
giờ cũng hạn chế lắm rồi,getchar()
từ từ là chạy được.Thực ra
fflush(stdin)
là một câu không chỉnh nhưng vì lí do nào đó vẫn cho sử dụng thôi, sau này bỏ rồi.