Câu hỏi

26/04/2013 22:13
Cần giúp đỡ về bài tập lập trình C ?
Chào các bạn mình có một số bài tập về lập trình C của thầy giao cuối tuần nộp các bạn có thể trợ giúp mình được không ? Đây là đề bài tập nè .
Viet chuong trinh thuc hien
1/Nhập vào chuỗi ký tự bất kỳ.Xuất ra chuỗi ký tự đảo của chuỗi đã nhập.
VD : Nhập: Nguyen Van Bao
Xuất : oaB naV neyugN
2/ Nhập vào chuỗi ký tự bất kỳ.Xuất ra chuỗi ký tự với các từ được đảo ngược vị trí
VD : Nhập : Nguyen Van Bao
Xuất : Bao Van Nguyen
3/ Nhập vào chuỗi ký tự bất kỳ
a/ Đếm xem trong chuỗi có bao nhiêu ký tự
b/ Đếm số chữ cái có trong chuỗi
c/ Đếm số chữ số có trong chuỗi
d/Đếm xem có bao nhiêu từ trong chuỗi
e/ Tìm và thay thế các chữ cái đầu của mỗi từ bằng chữ in Hoa tương ứng
f/ Đếm xem có bao nhiêu ký tự được lặp lại
g/ Liệt kê tất cả các ký tự trong chuỗi theo thứ tự a đến z cùng với số lượng lặp lại trong chuỗi.
4/ Nhập vào 1 dòng chữ.
a/ Kiểm tra xem có ký tự nào in Hoa mà không nằm ở vị trí đầu từ thì chuyển thành chữ thường.
VD : KhOa diEN tU VieN thoNg
Khoa Dien Tu Vien Thong
b/ Viết chương trình cho dòng chữ chạy từ trái sang phải rồi chạy ngược lại.
Hin89
26/04/2013 22:13
Viet chuong trinh thuc hien
1/Nhập vào chuỗi ký tự bất kỳ.Xuất ra chuỗi ký tự đảo của chuỗi đã nhập.
VD : Nhập: Nguyen Van Bao
Xuất : oaB naV neyugN
2/ Nhập vào chuỗi ký tự bất kỳ.Xuất ra chuỗi ký tự với các từ được đảo ngược vị trí
VD : Nhập : Nguyen Van Bao
Xuất : Bao Van Nguyen
3/ Nhập vào chuỗi ký tự bất kỳ
a/ Đếm xem trong chuỗi có bao nhiêu ký tự
b/ Đếm số chữ cái có trong chuỗi
c/ Đếm số chữ số có trong chuỗi
d/Đếm xem có bao nhiêu từ trong chuỗi
e/ Tìm và thay thế các chữ cái đầu của mỗi từ bằng chữ in Hoa tương ứng
f/ Đếm xem có bao nhiêu ký tự được lặp lại
g/ Liệt kê tất cả các ký tự trong chuỗi theo thứ tự a đến z cùng với số lượng lặp lại trong chuỗi.
4/ Nhập vào 1 dòng chữ.
a/ Kiểm tra xem có ký tự nào in Hoa mà không nằm ở vị trí đầu từ thì chuyển thành chữ thường.
VD : KhOa diEN tU VieN thoNg
Khoa Dien Tu Vien Thong
b/ Viết chương trình cho dòng chữ chạy từ trái sang phải rồi chạy ngược lại.
Danh sách câu trả lời (6)

1.
#include
#include
int main()
{
char str[] = "nguyen van bao";
int i = strlen(str) - 1;
for (; i >= 0; i--) {
if (str == ' ') {
printf("%s ",str + i + 1);
str = '\0';
}
if (i == 0) {
printf("%s",str);
}
}
printf("\n");
return 0;
}
3
a. #include "stdafx.h"
#include
#include
#include
int _tmain(int argc, _TCHAR* argv[])
{
char *str;
str = new char[1024];
printf ("Input string: ");
gets(str);
flushall();
int length = strlen(str);
char *temp = new char[length + 1];
strcpy(temp, str);
int k = 0;
int l = 0;
int a[256];
char b[256];
memset(a, 0, 256);
for (int i=0; i{
char c = temp;
if (c != NULL)
{
int dem = 1;
for (int j=i+1; j{
if (c == temp[j])
{
dem ++;
temp[j] = NULL;
}
}
a[k++] = dem;
b[l++] = c;
}
}
printf ("\n\n");
for (int i=0; iprintf ("%c - %d\t", b, a);
getch();
return 0;
}
g. Cái này là demo về thuật toán, với giả thiết rằng str[0] chỉ là kí tự a..z A..Z. Nếu muốn chình xác hơn phải cải tiến thuật toán.
#include
#include
int main()
{
char str[] = "nguyen van long";
int i = 0;
str[0] = str[0] - 32;
for (i = 0; i < strlen(str); i++) {
if (str == ' ') {
str[i+1] = str[i+1] - 32;
}
}
printf("%s\n",str);
return 0;
}
4b. #include
#include
int main()
{
char* str = "nguyen van long";
bool check = true;
int i = 0;
for (; i < strlen(str) && check == true; i++) {
if (str != ' ') {
printf("%c",str);
} else {
printf("\n");
str = str + i + 1;
check = false;
}
}
printf("%s",str);
printf("\n");
return 0;
}
#include
#include
int main()
{
char str[] = "nguyen van bao";
int i = strlen(str) - 1;
for (; i >= 0; i--) {
if (str == ' ') {
printf("%s ",str + i + 1);
str = '\0';
}
if (i == 0) {
printf("%s",str);
}
}
printf("\n");
return 0;
}
3
a. #include "stdafx.h"
#include
#include
#include
int _tmain(int argc, _TCHAR* argv[])
{
char *str;
str = new char[1024];
printf ("Input string: ");
gets(str);
flushall();
int length = strlen(str);
char *temp = new char[length + 1];
strcpy(temp, str);
int k = 0;
int l = 0;
int a[256];
char b[256];
memset(a, 0, 256);
for (int i=0; i
char c = temp;
if (c != NULL)
{
int dem = 1;
for (int j=i+1; j
if (c == temp[j])
{
dem ++;
temp[j] = NULL;
}
}
a[k++] = dem;
b[l++] = c;
}
}
printf ("\n\n");
for (int i=0; i
getch();
return 0;
}
g. Cái này là demo về thuật toán, với giả thiết rằng str[0] chỉ là kí tự a..z A..Z. Nếu muốn chình xác hơn phải cải tiến thuật toán.
#include
#include
int main()
{
char str[] = "nguyen van long";
int i = 0;
str[0] = str[0] - 32;
for (i = 0; i < strlen(str); i++) {
if (str == ' ') {
str[i+1] = str[i+1] - 32;
}
}
printf("%s\n",str);
return 0;
}
4b. #include
#include
int main()
{
char* str = "nguyen van long";
bool check = true;
int i = 0;
for (; i < strlen(str) && check == true; i++) {
if (str != ' ') {
printf("%c",str);
} else {
printf("\n");
str = str + i + 1;
check = false;
}
}
printf("%s",str);
printf("\n");
return 0;
}
Trả lời câu hỏi
Câu hỏi lĩnh vực Lập trình
Rao vặt Siêu Vip