#include <stdio.h>
int main(void) {
int x, counter = 1, counter2 = 1;
printf("Введите размер стороны квадрата: ");
scanf("%d", &x);
while(counter2 <= x) {
while(counter <= x) {
printf("%s", "#");
counter++;
}
counter = 1;
counter2++;
printf("\n");
}
return 0;
}
Помогите с задачкой на С
Написать программу которая считывает размер стороны квадрата и затем выводит этот квадрат в виде звёздочек.Например, если ваша программа считывает размер равный 4, она должна вывести:
****
****
****
****
И такую же программу только выводящую полый квадрат:
****
* *
* *
****
Заранее спасибо.
а в чем проблема? Что именно не понятно?
1) Первая задачка:
Код:
2) Вторая задачка:
Код:
#include <stdio.h>
int main(void) {
int st, count2 = 1, count = 1;
printf("Введите размер стороны квадрата: ");
scanf("%d", &st);
while(count2 <= st) {
if(count2 == 1) {
while(count <= st) {
printf("%s", "*");
count++;
}
}
else if(count2 == st) {
while(count <= st) {
printf("%s", "*");
count++;
}
}
else {
while(count <= st) {
if(count == 1) {
printf("%s", "*");
count++;
}
else if(count == st) {
printf("%s", "*");
count++;
}
else {
printf("%s", " ");
count++;
}
}
}
count = 1;
printf("\n");
count2++;
}
return 0;
}
int main(void) {
int st, count2 = 1, count = 1;
printf("Введите размер стороны квадрата: ");
scanf("%d", &st);
while(count2 <= st) {
if(count2 == 1) {
while(count <= st) {
printf("%s", "*");
count++;
}
}
else if(count2 == st) {
while(count <= st) {
printf("%s", "*");
count++;
}
}
else {
while(count <= st) {
if(count == 1) {
printf("%s", "*");
count++;
}
else if(count == st) {
printf("%s", "*");
count++;
}
else {
printf("%s", " ");
count++;
}
}
}
count = 1;
printf("\n");
count2++;
}
return 0;
}
[COLOR=red][/COLOR]
[COLOR=red]пользуйся тэгами [ code ] [ /code ][/COLOR]
Код:
#include <stdio.h>
int main(void) {
int st, row = 1, column = 1;
printf("Enter size of square's side: ");
scanf("%d", &st);
for(row = 1; row <= st; row++)
{
for(column = 1; column <= st; column++)
if(row == 1 || row == st || column == 1 || column == st)
printf("%s", "*");
else
putchar(' '); // or printf(" ");
putchar('\n');
}
printf("\n\n");
return 0;
}
int main(void) {
int st, row = 1, column = 1;
printf("Enter size of square's side: ");
scanf("%d", &st);
for(row = 1; row <= st; row++)
{
for(column = 1; column <= st; column++)
if(row == 1 || row == st || column == 1 || column == st)
printf("%s", "*");
else
putchar(' '); // or printf(" ");
putchar('\n');
}
printf("\n\n");
return 0;
}
Код:
#include <stdio.h>
int main(void)
{ int st;
printf("Enter size of square's side: ");
scanf("%d", &st);
for(int i=1;i<=st*st;i++)
{ if (i<st || i>st*(st-1) || !(i%st) || !((i-1)%st))
putchar('*'); else putchar(' ');
if (!(i%st)) puts(""); }
return 0;
}
int main(void)
{ int st;
printf("Enter size of square's side: ");
scanf("%d", &st);
for(int i=1;i<=st*st;i++)
{ if (i<st || i>st*(st-1) || !(i%st) || !((i-1)%st))
putchar('*'); else putchar(' ');
if (!(i%st)) puts(""); }
return 0;
}
Предлагаю свой вариант:
Код:
#include <stdio.h>
#include <string.h>
int main(int argc, char **argv) {
int st;
if(argc < 1) {
printf("Enter size of square's side: ");
scanf("%d", &st);
} else {
sscanf(argv[1], "%d", &st);
}
char *full = new char[st + 1];
memset(full, '*', st);
full[st] = '\0';
char *empty = new char[st + 1];
memset(empty, ' ', st);
empty[0] = empty[st - 1] = '*';
empty[st] = '\0';
printf("%s\n", full);
int i = st - 2;
for(; --i >= 0; ) {
printf("%s\n", empty);
}
printf("%s\n", full);
delete full, empty;
return 0;
}
#include <string.h>
int main(int argc, char **argv) {
int st;
if(argc < 1) {
printf("Enter size of square's side: ");
scanf("%d", &st);
} else {
sscanf(argv[1], "%d", &st);
}
char *full = new char[st + 1];
memset(full, '*', st);
full[st] = '\0';
char *empty = new char[st + 1];
memset(empty, ' ', st);
empty[0] = empty[st - 1] = '*';
empty[st] = '\0';
printf("%s\n", full);
int i = st - 2;
for(; --i >= 0; ) {
printf("%s\n", empty);
}
printf("%s\n", full);
delete full, empty;
return 0;
}
С наилучшими пожеланиями Ровшан.
P.S.За варианты отдельное спасибо.Родина вас не забудет :)