Cách đóng file toàn bài qua .txt
/Viết chương trình định nghĩa các hàm để thực hiện các công việc sau :
a) Nhập một chuỗi(≤ 255 ký tự) và ghi vào tập tin input.txt(2 điểm).
b) Đếm số ký tự khác khoảng trắng có trong chuỗi(2 điểm).
c) Bỏ các ký tự khoảng trắng thừa(đầu chuỗi, cuối chuỗi và chỉ giữ lại 1 khoảng trắng giữa các từ) (2 điểm).
d) Chuẩn hóa chuỗi sao cho sau dấu chấm là 1 khoảng trắng và ký tự đầu từ kế tiếp phải viết hoa.
e) Ghi tất cả kết quả thực hiện được vào tập tin tin output.txt(2 điểm)./
#include<stdio.h>
#include<conio.h>
#include<string.h>
#include <ctype.h>
void ghifile(char *s)
{
printf("Chuoi cua nhap: ");
printf("%s", s);
/*FILE *f= fopen("E:/input.txt", "w");
fprintf(f,"%s", s);
fclose(f);*/
}
//isspace: nhận diện kí tự khoảng trắng
int demktso(char s[])
{
int i, dem = 0, n;
n = strlen(s);
for (i = 0; i < n; i++)
if (!isspace(s[i]))
dem++;
return dem;
}
void xoadaucuoi(char *s,char *x)
{
int len = strlen(s), t = 0, dem = 0;
for (int i = 0; i<len; i++)
{
if (isalpha(s[i]) || isspace(s[i]))
{
if (!isspace(s[i]))
{
dem++;
}
if (dem != 0)
{
if (isalpha(s[i]) || (isspace(s[i]) && isalpha(s[i + 1])))
{
if (dem == 1)
x[t] = toupper(s[i]);
else
x[t] = s[i];
t++;
}
}
}
}
x[t] = ' ';
for (int i = 0; i<strlen(x); i++)
printf("%c", x[i]);
}
void main()
{
char s[255],x[255];
printf("Nhap chuoi: ");
fflush(stdin);
gets(s);
ghifile(s);
printf("
so ki tu so la : %d", demktso(s));
printf("
sau khi xoa: ");
xoadaucuoi(s,x);
/*FILE *f = fopen("E:/output.txt", "w");
fprintf(f, "%s", s);
fclose(f);*/
getch();
}
indent preformatted text by 4 spaces
p/s: e làm miết nhưng đóng nó toàn bị mất chữ ai chỉ e vs. vs chỉ e làm câu d lun ạ. tks ạ
đặt chuỗi thì dùng fputs(string, FILE * ) chứ
đóng toàn bộ từ trên xún dưới nhá