γμ€μ±μ°μ μ΄ν C νλ‘κ·Έλλ°γ μ μ°Έκ³ νμμ΅λλ€.
γμ€μ±μ°μ μ΄ν C νλ‘κ·Έλλ°γ μ€ ν·κ°λ Έλ λ΄μ©μ μ 리ν©λλ€.
11-1 ; λ°°μ΄μ μ΄ν΄μ λ°°μ΄μ μ μΈ λ° μ΄κΈ°ν λ°©λ²
λ°°μ΄μ μ΄λ¦μ λμμΌλ‘ νλ sizeof μ°μ°μ κ²°κ³Όλ‘λ 'λ°μ΄νΈ λ¨μμ λ°°μ΄ ν¬κΈ°'κ° λ°νλλ€.
λ°λΌμ λ°°μ΄μ ν¬κΈ°κ° μλ, κΈΈμ΄λ₯Ό κ³μ°νκ³ μΆλ€λ©΄ μλμ κ°μ΄ λ¬Έμ₯μ ꡬμ±νλ€.
int arr[]= {1,2};
int arrlen;
arrlen = sizeof(arr) / sizeof(int);
λ¬Έμ 11-1 [1μ°¨μ λ°°μ΄μ νμ©]
- λ¬Έμ 1
#include <stdio.h>
int main(int argc, const char * argv[]) {
int arr[5] = {};
int i = 0;
printf("5κ°μ μ μλ₯Ό μ
λ ₯νμμ€: ");
for (i=0; i<5; i++){
scanf("%d", &arr[i]);
}
int max = arr[0], min = arr[0], sum = 0;
for (i=0; i<5; i++){
if(max < arr[i]){
max = arr[i];
}
if(min > arr[i]){
min = arr[i];
}
sum += arr[i];
}
printf("μ
λ ₯λ μ μ μ€μμ μ΅λκ°: %d\n", max);
printf("μ
λ ₯λ μ μ μ€μμ μ΅μκ°: %d\n", min);
printf("μ
λ ₯λ μ μμ μ΄ ν©: %d\n", sum);
return 0;
}
- λ¬Έμ 2
#include <stdio.h>
int main(int argc, const char * argv[]) {
char arr[] = {'G','o','o','d',' ','t','i','m','e'};
int i=0;
for (i=0; i<sizeof(arr); i++){
printf("%c", arr[i]);
}
printf("\n");
return 0;
}
11-2 ; λ°°μ΄μ μ΄μ©ν λ¬Έμμ΄ λ³μμ νν
charν λ°°μ΄μ λ¬Έμμ΄ μ μ₯κ³Ό 'λ(null)λ¬Έμ'
λ¬Έμμ΄μ μ μ₯μ λͺ©μ μΌλ‘ charν λ°°μ΄μ μ μΈν κ²½μ°μλ
νΉμλ¬Έμ '\0'μ΄ μ μ₯λ 곡κ°κΉμ§ κ³ λ €ν΄μ λ°°μ΄μ κΈΈμ΄λ₯Ό κ²°μ ν΄μΌ νλ€.
λ λ¬Έμμ μμ€ν€ μ½λ κ°μ 0μ΄λ€. μ΄λ₯Ό λ¬Έμμ ννλ‘ μΆλ ₯ν κ²½μ° μλ¬΄λ° μΆλ ₯μ΄ λ°μνμ§ μλλ€.
// λ λ¬Έμμ μμ€ν€ μ½λ κ°μ 0μ΄λ―λ‘ λ€μ λ λ¬Έμ₯μ λμΌν λ¬Έμ₯μ΄λ€.
str[8] = '\0';
str[8] = 0;
scanf ν¨μ νΈμΆμ ν΅ν΄μ μ λ ₯ λ°μ λ¬Έμμ΄μ λμλ λ λ¬Έμκ° μ½μ λμ΄ μλ€.
CμΈμ΄μμ νννλ λͺ¨λ λ¬Έμμ΄μ λμλ λ λ¬Έμκ° μλμΌλ‘ μ½μ λλ€.
λ λ¬Έμκ° μ‘΄μ¬νλ©΄ λ¬Έμμ΄μ΄κ³ λ λ¬Έμκ° μ‘΄μ¬νμ§ μμΌλ©΄ λ¬Έμμ΄μ΄ μλλ€.
char arr1[] = {'H', 'i', '~'}; // λ§μ§λ§μ λ λ¬Έμκ° μμΌλ―λ‘ λ¬Έμ λ°°μ΄
char arr2[] = {'H', 'i', '~', '\0'}; // λ§μ§λ§μ λ λ¬Έμκ° μμΌλ―λ‘ λ¬Έμμ΄
μ΄λ»κ² μ μΈμ΄ λλ λ λ¬Έμκ° λ§μ§λ§μ μ‘΄μ¬νλ©΄ CμΈμ΄μ κ΄μ μμ λ¬Έμμ΄μ΄ λλ€.
scanf ν¨μλ λ°μ΄ν°λ₯Ό κ΅¬λΆ μ§λ κΈ°μ€μ΄ 곡백μ΄λ€.
λ°λΌμ scanf ν¨μλ λ¬Έμ₯μ μ λ ₯ λ°κΈ°μλ μ μ νμ§ μλ€.
λ¬Έμ 11-2 [λ°°μ΄ κΈ°λ°μ λ¬Έμμ΄ νν]
- λ¬Έμ 1
#include <stdio.h>
#define max 100
int main(int argc, const char * argv[]) {
char str[max];
printf("νλμ μλ¨μ΄ μ
λ ₯: ");
scanf("%s", str);
int i=0;
while(str[i] != '\0'){
i++;
}
printf("μ
λ ₯ν μλ¨μ΄μ κΈΈμ΄: %d\n", i);
return 0;
}
- λ¬Έμ 2
#include <stdio.h>
#define max 100
int main(int argc, const char * argv[]) {
char str[max];
printf("μλ¨μ΄ μ
λ ₯: ");
scanf("%s", str);
char copy[max]={'0'};
int i=0;
while(str[i] != '\0'){
copy[i] = str[i];
i++;
}
int j=0;
for(j=0; str[j] != '\0'; j++){
str[j] = copy[i-1];
i--;
}
printf("μμ: %s\n", str);
return 0;
}
/*
λ΅μ§ μ½λ
while(voca[len] 1= '\0') len++; // μλ¨μ΄ κΈΈμ΄ κ³μ°
for(i=0; i<len/2; i++){
temp = voca[i];
voca[i] = voca[(len/i)-1];
voca[(len-i)-1]=tem[;
}
*/
- λ¬Έμ 3
#include <stdio.h>
int main(int argc, const char * argv[]) {
char str[100];
printf("μλ¨μ΄ μ
λ ₯: ");
scanf("%s", str);
char max;
int i;
max = str[0];
for(i=0; str[i]!='\0'; i++){
if(max<str[i]){
max = str[i];
}
}
printf("μμ€ν€ μ½λ κ°μ΄ κ°μ₯ ν° λ¬Έμ: %c\n", max);
return 0;
}