Форум программистов, компьютерный форум, киберфорум
Наши страницы
C для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.50/6: Рейтинг темы: голосов - 6, средняя оценка - 4.50
Elies
2 / 2 / 0
Регистрация: 05.11.2014
Сообщений: 15
1

Рисовать флаг в цикле

09.12.2014, 09:25. Просмотров 1206. Ответов 5
Метки нет (Все метки)

C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
#include <stdio.h>
#define SIZE 6
 
int main ()
{
    int i=0;
    int j=0;
    system("cls");
    char Brit [SIZE][SIZE] ;
    for (i=0;i<SIZE;i++)
        {
            Brit[i][0] = 'p';
            Brit[i][SIZE-1] = 'p';
            Brit[0][i] = 'p';
            Brit[SIZE-1][i] = 'p';
            Brit[i][i] = 'p';
            Brit[SIZE/2][i] = 'p';
            Brit[i][SIZE/2] = 'p';
            Brit[i][SIZE-i-1] = 'p';
        }
    for (i=0;i<SIZE;i++)
        {
            for (j=0;j<SIZE;j++)
                {
                    printf (Brit[i][j]);
                }
            printf ("/n");
        }
    getch();
    return 0;
}
Добавлено через 16 часов 28 минут
В чём проблема?
0
Лучшие ответы (1)
QA
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
09.12.2014, 09:25
Ответы с готовыми решениями:

Почему если флаг состояния потока eof поднят, то флаг good опущен?
Почему если флаг состояния потока eof поднят, то флаг good опущен? Это нонсенс, друзья. Здесь...

Нарисовать на экране дисплея флаг РФ, Японский флаг
Нарисовать на экране дисплея флаг РФ, Японский флаг 300*200px Добавлено через 22 часа 20 минут ...

Как програмно в цикле не доходя до конца, пропустить шаг в цикле?
Как програмно в цикле не доходя до конца, пропустить шаг в цикле?

При склеивании строк в цикле, уже на пятом цикле возникает переполнение памяти
При склеивании строк в цикле, уже на пятом цикле возникает переполнение памяти. Что не так и как...

Переменная, которая только что использовалась в цикле в качестве счётчика в следующем цикле не используется
Помогите, пожалуйста. Вот отрывок программы (программа целиком- в архиве): procedure...

5
Kommersantt
18 / 18 / 24
Регистрация: 21.06.2014
Сообщений: 147
09.12.2014, 09:38 2
Лучший ответ Сообщение было отмечено Elies как решение

Решение

Как минимум вижу уже одну ошибку.

Добавлено через 6 минут
Цитата Сообщение от Elies Посмотреть сообщение
printf (Brit[i][j])
у вас тут ошибка! Вы не выводите ничего
C
1
  printf ("%c", Brit[i][j]);
Когда это изменил вышла какай-то фигня. Что должно быть в итоге?
1
Elies
2 / 2 / 0
Регистрация: 05.11.2014
Сообщений: 15
09.12.2014, 15:22  [ТС] 3
подобие британского флага.

Добавлено через 11 минут
Всё, разобрался. Нужно было сначала инициализировать массив пустыми значениями. Вот за замечание на счёт printf премного благодарен.

C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
#include <stdio.h>
#define SIZE 11
 
int main ()
{
    int i=0;
    int j=0;
    system("cls");  
    char Brit [SIZE][SIZE] ;
    
    for (i=0;i<SIZE;i++)//инициализация массива
        for (j=0;j<SIZE;j++)
            Brit[i][j] = ' ';
            
    for (i=0;i<SIZE;i++)//рисуем флаг
        {
            Brit[i][0] = '*';
            Brit[i][SIZE-1] = '*';
            Brit[0][i] = '*';
            Brit[SIZE-1][i] = '*';
            Brit[i][i] = '*';
            Brit[SIZE/2][i] = '*';
            Brit[i][SIZE/2] = '*';
            Brit[i][SIZE-i-1] = '*';
        }
    for (i=0;i<SIZE;i++)//вывод на экран
        {
            for (j=0;j<SIZE;j++)
                {
                    printf ("%c", Brit[i][j]);
                }
            printf ("\n");
        }
    getch();//пауза
    return 0;
}
0
Qwertiy
823 / 631 / 100
Регистрация: 20.08.2013
Сообщений: 2,524
09.12.2014, 20:41 4
Цитата Сообщение от Elies Посмотреть сообщение
printf ("%c", Brit[i][j]);
putchar(Brit[i][j]);

А лучше бы вообще массив покрупнее завёл, поставил в конце нолики и выводил puts'ом.
0
Elies
2 / 2 / 0
Регистрация: 05.11.2014
Сообщений: 15
10.12.2014, 08:45  [ТС] 5
мне хотелось проверить, будет ли работать программа при нечётном SIZE, тоесть округлиться ли результат деления на 2 автоматически. Кстати, с помощью указателей возможно реализовать динамический массив?
0
Qwertiy
823 / 631 / 100
Регистрация: 20.08.2013
Сообщений: 2,524
10.12.2014, 12:00 6
Цитата Сообщение от Elies Посмотреть сообщение
Кстати, с помощью указателей возможно реализовать динамический массив?
Я бы сказал, только с их помощью и возможно
1
10.12.2014, 12:00
Answers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
10.12.2014, 12:00

Оптимизирует ли компилятор выражения в цикле типа 90*M_PI или каждую итерацию в цикле считает заново?
Занялся сабжем по проекту. IDE Builder 2010 1) Оптимизирует ли компилятор выражения в цикле типа...

Флаг CF
Можно как-то флаг CF да и вообще флаги переместить в переменную или сравнить с 0 например

/MP флаг
Будьте так добры, подскажите пожалуйста, где в Visual Studio 2010 можно установить флаги...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
6
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2019, vBulletin Solutions, Inc.