Tải bản đầy đủ - 0 (trang)
Viết chương trình, nhận vào số nguyên h và in ra tam giác Pascal có chiều cao là h.

Viết chương trình, nhận vào số nguyên h và in ra tam giác Pascal có chiều cao là h.

Tải bản đầy đủ - 0trang

void main() {

int list[1024], tmp[1024], h;

scanf_s("%d", &h);

if (h == 1) {

printf("1\n");

return;

}

for (int i = 0; i < 1024; i++) {

list[i] = 0;

}

list[0] = 1;

for (int i = 2; i <= h; i++) {

tmp[0] = 1;

for (int j = 1; j < i - 1; j++) {

tmp[j] = list[j - 1] + list[j];

}

tmp[i - 1] = 1;

for (int j = 0; j < i; j++) {

list[j] = tmp[j];

printf("%d ", list[j]);

}

}



printf("\n");



}



11. Tính chiều dài của chuỗi. Biết phần tử kết thúc 

chuỗi có giá trị bằng 0.

Ví dụ:





Nhập chuỗi “hello world”. Kết quả in ra là:







11



Solution

#include "stdafx.h"

int length_of_string(char string[]) {

int length = 0;

while (1) {

if (string[length++] == 0) {

return length - 1;

}



}

}

void main() {

char string[1024];



}



scanf_s("%[a-z A-Z]", string);

printf("%d", length_of_string(string));



12. Nhập vào 2 chuỗi. Kiểm tra xem 2 chuỗi này có 

giống nhau hay khơng?

Hint: Hàm length_of_string đã được hiện thực sẵn trong hệ thống (dưới tên strlen). Ta 

có thể tiết kiệm cơng sức bằng cách sử dụng hàm này. Để sử dụng ta include thư 

viện string.h.

Ví dụ:





Nhập vào 2 chuỗi: “abc”, “defh”. In ra:







Hai chuoi khong bang nhau







Nhập vào 2 chuỗi: “abc”, “abc”. In ra:







Hai chuoi bang nhau



Solution

#include "stdafx.h"

#include "string.h"

void main() {

char string_1[1024];

char string_2[1024];

scanf_s("%s", string_1, 1024);

scanf_s("%s", string_2, 1024);

if (strlen(string_1) != strlen(string_2)) {

printf("Hai chuoi khong bang nhau");

}

for (int i = 0, length = strlen(string_1); i < length; i++) {

if (string_1[i] != string_2[i]) {

printf("Hai chuoi khong bang nhau");

return;

}



}

printf("Hai chuoi bang nhau");

}



13. Nhập vào một chuỗi. Kiểm tra xem chuỗi có phải là

chuỗi đối xứng hay khơng.

Ví dụ:





Nhập chuỗi “abccbe”. Kết quả in ra:







Khong phai chuoi doi xung







Nhập chuỗi “abccba”. Kết quả in ra:







Chuoi doi xung



Solution

#include "stdafx.h"

#include "string.h"

void main() {

char string1[1024], string2[1024];

scanf_s("%s", string1, 1024);

for (int i = strlen(string1) - 1, j = 0; i >= 0; i--, j++) {

string2[i] = string1[j];

}

for (int i = strlen(string1) - 1; i >= 0; i--) {

if (string2[i] != string1[i]) {

printf("Khong phai chuoi doi xung");

return;

}

}

}



printf("Chuoi doi xung");



14. Nhập vào một mảng các chuỗi. In ra từng dòng 

một của mảng này, nằm trong một khung hình chữ 

nhật. Ví dụ:



Ví dụ:

Mảng gồm: ["Hello", "World", "in", "a", "frame"] sẽ được in ra thành:

*********

* Hello *

* World *

* in *

*a

*

* frame *

*********



Solution

#include "stdafx.h"

#include "string.h"

void main() {

int n, max;

char list[100][1024];

scanf_s("%d", &n);

for (int i = 0; i < n; i++) {

scanf_s("%s", list[i], 1024);

}

max = strlen(list[0]);

for (int i = 1; i < n; i++) {

if (strlen(list[i]) > max) {

max = strlen(list[i]);

}

}

max = max + 4;



}



for (int i = 0; i < max; i++) printf("*");

for (int i = 0; i < n; i++) {

printf("\n");

printf("* %s", list[i]);

for (int j = max - strlen(list[i]) - 4; j >= 0; j--) {

printf(" ");

}

printf("*");

}

printf("\n");

for (int i = 0; i < max; i++) printf("*");



VII. Subprogram

1. In ra tất cả các số nguyên tố từ 1 đến 100.



Kết quả:

2 3 5 7 11 13 17 19 23 29 31 37 41 43 47 53 59 61 67 71 73 79 83 89 97



Solution

#include "stdafx.h"

int is_prime(int n) {

for (int i = 2; i <= n / 2; i++) {

if (n % i == 0) return 0;

}

return 1;

}

void main() {

for (int i = 2; i < 100; i++) {

if (is_prime(i)) {

printf("%d ", i);

}

}

}



3. Viết hàm nối 2 chuỗi.

Ví dụ:





Nhập vào “abc”, “def”. Kết quả in ra:







abcdef



Solution

#include "stdafx.h"

void concat_string(char string1[], char string2[], char result[]) {

for (int i = 0; i < strlen(string1); i++) result[i] = string1[i];

for (int i = 0; i < strlen(string2); i++) result[i + strlen(string1)] = string2[i];

}

void main() {

char string1[1024], string2[1024], string3[1024];

scanf_s("%s", string1, 1024);

scanf_s("%s", string2, 1024);

concat_string(string1, string2, string3);

}



printf("%s", string3);



4. Viết hàm nối 2 danh sách.



Tài liệu bạn tìm kiếm đã sẵn sàng tải về

Viết chương trình, nhận vào số nguyên h và in ra tam giác Pascal có chiều cao là h.

Tải bản đầy đủ ngay(0 tr)

×