최단기 코스:
1번을 풀수 있으면 바로 1번을 풀도록 한다.
1번이 풀리지 않으면 2번을 먼저 풀고서 1번을 푼다.
==================================================
[1번과제]
int al[100]={1,1,1,2,2,3,};
al배열을 스캔하여 화면에 1 3 2 2 3 1 이 출력되는 프로그램을 작성하시오.
물론 al 배열의 내용에 따라서 제대로된 출력이 나와야 하겠다.
보충과제1번을 풀때 참고가 되는 코드
#include <stdio.h>
int main() {
int al[100]={1,1,1,2,2,3,};
int i, neq=0;
i=0;
while(al[i]>0) {
if(al[i]==al[i+1]) {
neq+=1;
printf("i=%d same\n", i);
} else {
printf("i=%d al[i]=%d al[i+1]=%d\n", i, al[i], al[i+1]);
}
i+=1;
}
return 0;
}
-----------------------------------------------------------------------
[2번과제]
while문을 한개만 사용하여 n줄 n칸의 출력
(반복문은 while문 한개만 사용할 것)
한줄에 1부터 n까지 한칸씩 늘여가며 출력하는 프로그램을 작성하라.
- %연산자 사용금지, 배열사용금지, 가능한한 변수의 갯수를 줄일것
[예] n=11일때
1
1 2
1 2 3
1 2 3 4
1 2 3 4 5
1 2 3 4 5 6
1 2 3 4 5 6 7
1 2 3 4 5 6 7 8
1 2 3 4 5 6 7 8 9
1 2 3 4 5 6 7 8 9 10
1 2 3 4 5 6 7 8 9 10 11
-----------------------------------------------------
======================================================
직접 도움이 되는 과제모음
-------------------------==---------------------------
[3번과제]
크기가 100인 1차원 배열에 1부터 10까지의 난수 100개를 발생시켜 넣은 다음.
0번째 칸부터 시작하여 각 칸의 수를 더해 가면서 합을 출력한다.
만약 1을 만나면 합을 0으로 만든다음 1을 더하여 출력하고, 위의 과정을 계속한다.
끝이 나올때 까지 위의 과정을 반복한다.
[예] 3 5 6 2 1 9 8 3 0
출력 3 8 14 16 1 10 18 21 끝
------------------------------------------------------------
[4번과제]
1부터 3까지의 난수를 무한히 생성하다가,
3의 갯수가 연속해서 4개가 나오면 종료하는 프로그램을 작성하라.
생성된 난수를 화면에 출력하라.
- 배열을 사용하지 않고 작성하라.
- 배열을 사용하지 않는 것이 힘들다면,
일차원 배열을 한개 사용하여 프로그래밍 한후 다시 배열을 사용하지 않고 작성하라.
-------------------------------------------------------------------------------
[5번과제]
일차원 배열을 써서 -1이 입력될때 까지 계속해서 입력을 받는다. -1은 입력에 포함되지 않는다.
이렇게 입력된 수들에 대해서,
[1] 1이면 화면에 1을 1개 출력한다. 5라면 5를 화면에 5개 출력한다. 6이라면 6을 화면에 6개 출력한다.
[2] 두번째 일차원 배열을 사용하여 [1]에서 출력되는 수들을 배열에 보관한다,.
화면에 출력이 끝나면 줄바꿈을 하고, 배열에 보관된 수들을 출력한다.
-----------------------------------------------------------------------
[6번과제]
[ 크기가 100인 일차원 배열을 이용하여 ]
정수의 갯수 n 을 입력 받고
n개의 정수를 입력받아서
이 n개의 수열이 앞뒤가 대칭인지 판별하여 출력할 것.
대칭이라면 대칭. 대칭이 아니라면 비대칭으로 출력할 것.
-----------------------------------------------------------------------
[7번과제]
크기 20인 일차원 배열한개를 사용하여
1부터 9까지의 난수를 20개 발생시켜 넣고
각 자리의 난수가 몇개인지를 출력하라.
예를 들어서 모두가 1이 들어있다면
20 0 0 0 ... 0 이 출력되어야 한다.
변수의 사용은 최소한도로 할것.
-----------------------------------------------------------------------
[8번과제]
크기가 100인 1차원 배열2개를 사용하여 첫번째 배열에 1부터 3까지의 난수를 50개 발생시켜 넣는다.
첫번째 배열을 스캔하면서 다음과 같은 내용을 두번째 배열에 넣고 출력한다.
예
1 1 1 2 2 3 0
1 1 1 9 2 2 9 3 9 0
즉 경계면을 만날때 마다 9를 삽입한다.
'c·c++ > c 프로그래밍' 카테고리의 다른 글
실력 테스트 문제 (0) | 2020.02.10 |
---|---|
소인수 분해 코드 (0) | 2016.07.10 |
maximum sum subarray(배열의 최대합 구간) (0) | 2016.04.08 |
quick sort (0) | 2015.10.01 |
하노이탑 - 반복문사용 (0) | 2015.09.20 |