쉽게 풀어쓴 C언어 Express 연습문제 1~15장
닫기
  • 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
  • 37
  • 38
  • 39
  • 40
  • 41
  • 42
  • 43
  • 44
  • 45
  • 46
  • 47
  • 48
  • 49
  • 50
  • 51
  • 52
  • 53
  • 54
  • 55
  • 56
  • 57
  • 58
  • 59
  • 60
  • 61
  • 62
  • 63
  • 64
  • 65
  • 66
  • 67
  • 68
  • 69
  • 70
  • 71
  • 72
  • 73
  • 74
  • 75
  • 76
  • 77
  • 78
  • 79
  • 80
  • 81
  • 82
  • 83
  • 84
  • 85
  • 86
  • 87
  • 88
  • 89
  • 90
  • 91
  • 92
  • 93
  • 94
  • 95
  • 96
  • 97
  • 98
  • 99
  • 100
  • 101
  • 102
  • 103
  • 104
  • 105
  • 106
  • 107
  • 108
  • 109
  • 110
  • 111
  • 112
  • 113
  • 114
  • 115
  • 116
  • 117
  • 118
  • 119
  • 120
  • 121
  • 122
  • 123
  • 124
  • 125
  • 126
  • 127
  • 128
  • 129
  • 130
  • 131
  • 132
  • 133
  • 134
  • 135
  • 136
  • 137
  • 138
  • 139
  • 140
  • 141
  • 142
  • 143
  • 144
  • 145
  • 146
  • 147
  • 148
  • 149
  • 150
  • 151
  • 152
  • 153
  • 154
해당 자료는 10페이지 까지만 미리보기를 제공합니다.
10페이지 이후부터 다운로드 후 확인할 수 있습니다.

소개글

쉽게 풀어쓴 C언어 Express 연습문제 1~15장에 대한 보고서 자료입니다.

목차

□ 쉽게 풀어쓴 C언어
△ 제1장 프로그래밍의 개념
△ 제2장 프로그래밍 작성 과정
△ 제3장 C프로그래밍 구성 요소
△ 제4장 변수와 작료형
△ 제5장 수식과 연산자
△ 제6장 조건문
△ 제7장 반복문
△ 제8장 함수
△ 제9장 함수와 변수
△ 제10장 배열
△ 제11장 포인터
△ 제12장 문자열
△ 제13장 구조체
△ 제14장 포인터 활용
△ 제15장 전처리 및 비트 필드

본문내용

intnum;

printf(\"정수값을입력하시오:\");
scanf(\"%d\",&num);
display(num);
return0;
}

voiddisplay(intnum){
inti;
i = sizeof(int) * 8;
for(;i >0;i --){
if(i%4==0&&i!=32)
printf(\"\");
printf(\"%d\",GET_BIT(num,i));
}
printf(\"\\n\");
}
Colored by Color Scripter
cs
08. 사용자로부터 입력받은 정수를 비트 이동시키는 프로그램을 작성하여 보자. 먼저 정수 변수의 값을 입력받은 후에 이동시킬 방향, 이동할 거리를 사용자로부터 입력받는다. 비트 이동 전후에 정수의 값을 비트로 출력하도록 한다. 앞 문제에서 작성한 display_bit() 함수를 사용한다.
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
37
38
39
40
41
#include

#defineSET_BIT(n,pos)(n|=(0x01< #defineCLR_BIT(n,pos)(n&=(~0x01< #defineGET_BIT(n,pos)((n>>pos)&0x01)

voiddisplay(intnum);

intmain(){
intnum,direction,distance;

printf(\"정수값을입력하시오:\");
scanf(\"%d\",&num);
printf(\"왼쪽이동은0,오른쪽이동은1을입력하시오:\");
scanf(\"%d\",&direction);
printf(\"이동시킬거리:\");
scanf(\"%d\",&distance);

printf(\"이동전:\");
display(num);

if(direction==0)
num<<=distance;
elseif(direction==1)
num>>=distance;

printf(\"이동후:\");
display(num);
return0;
}

voiddisplay(intnum){
inti;
i=sizeof(int)*8;
for(;i >0;i --){
if(i%4==0&&i!=32)
printf(\"\");
printf(\"%d\",GET_BIT(num,i));
}
printf(\"\\n\");
}
Colored by Color Scripter
cs
09. 비트 연산자를 이용하여 대소문자를 변경할 수 있다. 대문자의 아스키 코드는 모두 여섯 번째 비트가 0이고 소문자의 경우에는 여섯 번째 비트가 모두 1이다. 따라서 XOR 연산을 이용하여 문자의 여섯 번째 비트를 바꿔주면 대소문자가 바뀌게 된다. 이 성징을 이용하여 사용자가 입력한 문자열의 대소문자를 바꾸는 프로그램을 작성하라. 앞 문제에서 작성한 display_bit() 함수를 사용한다.
## 문제에서는 앞서 작성한 display_bit() 함수를 이용하라고 했는데, 어떻게 써먹어야 할 지 저는 모르겠어요..
아시는 분은 알려주시면, 정말정말 고맙겠습니다. ㅠㅠ..
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
#include

#defineSET_BIT(n,pos)(n|=(0x01< #defineCLR_BIT(n,pos)(n&=(~0x01< #defineGET_BIT(n,pos)((n>>pos)&0x01)

voiddisplay(intnum);

intmain(){
chararr[100];
inti;

printf(\"문자열을입력하시오:\");
gets(arr);

printf(\"결과문자열:\");
for(i =0;arr[i]!=NULL;i ++)
printf(\"%c\",arr[i]^0x20);
printf(\"\\n\");
return0;
}

voiddisplay(intnum){
inti;
i=sizeof(int)*8;
for(;i >0;i --){
if(i%4==0&&i!=32)
printf(\"\");
printf(\"%d\",GET_BIT(num,i));
}
printf(\"\\n,\");
}
Colored by Color Scripter
cs
10. 암호화 방법 중의 하나는 암호화할 값을 키값과 비트 XOR 연산을 하는 것이다. 원래의 값을 복원하려면 다시 비트 XOR 연산을 하면 된다. 이 암호화 방법을 사용하여 사용자로부터 문자열을 입력받아서 암호화하고 다시 복호화하는 프로그램을 작성하라. 다중 소스 파일 형태로 작성하라.
## 문제 key 값을 rand() 함수를 써서 초기화하고 싶은데, 어떻게 해야할까요?
rand()함수를 쓰니, 정수값으로 초기화되서 안되는 것 같은데..
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
37
38
39
#include

#defineSET_BIT(n,pos)(n|=(0x01< #defineCLR_BIT(n,pos)(n&=(~0x01< #defineGET_BIT(n,pos)((n>>pos)&0x01)

voiddisplay(intnum);

intmain(){
chararr[100],key;
inti;

key=0x49;

printf(\"암호를입력하세요,:\");
gets(arr);

display(arr);
for(i =0;arr[i]!=NULL;i ++)
arr[i]=arr[i]^key;
printf(\"은\");
display(arr);
printf(\"로암호화\\n\");

display(arr);
for(i =0;arr[i]!=NULL;i ++)
arr[i]=arr[i]^key;
printf(\"은\");
display(arr);
printf(\"로복호화\\n\");

return0;
}

voiddisplay(char*arr){
inti;
for(i =0;arr[i]!=NULL;i ++)
printf(\"%c\",arr[i]);
}
Colored by Color Scripter
  • 가격3,000
  • 페이지수154페이지
  • 등록일2019.07.16
  • 저작시기2019.7
  • 파일형식한글(hwp)
  • 자료번호#1105806
본 자료는 최근 2주간 다운받은 회원이 없습니다.
청소해
다운로드 장바구니