Day7
Linux
교육자료
Lab
Day7
Linux
교육자료
문제. /etc/inittab 의 디폴트 run level을 6으로 설정함.
1. 현상
- 런 레벨을 6으로 설정을 해서인지 계속 재부팅 됩니다.
2. 해결법
- 부트 메뉴에서 e키를 누르면
root (hd0,0)
kernel /vmlinuz-2.4.20-8 ro root=LABEL=/
initrd /initrd-2.4.20-8.img
이렇게 메뉴가 나오는데, 여기서 두번째 줄에서 e키를 누르면
grub edit> kernel /vmlinuz-2.4.20-8 ro root=LABEL=/
로 나오게 됩니다.
뒤에 single을 입력하면
grun edit> kernel /vmlinuz-2.4.20-8 ro root=LABEL=/ single
커맨드 모드로 부팅을 하게 됩니다.
vi /etc/inittab를 입력하여
디폴트 runlevel을 5로 바꾸어 주고, 재부팅하면
정상적으로 GUI모드로 부팅 OK.
Day3
C언어
오전
1. 월급을 키보드로부터 입력받아 화폐종류별 매수를 산정하는 프로그램작성.
[입,출력화면]
월급? 123456
10000원권 12매
5000원권 0매
1000원권 3매
500원권 0매
100원권 4매
50원권 1매
10원권 0매
5원권 1매
1원권 1매
또 (y/n)? y
2. 아래와 같이 배열에 기억된 숫자들을 오름차순으로 소트하여 출력시키는 프로그램작성.
<소트전>
M[0] = 5 M[1]=2 M[2]=8 M[3]=4
<소트후>
M[0] = 2 M[1]=4 M[2]=5 M[3]=8
3. 키보드에서 문자열입력받아 기억장소에 있는 값이 소문자이면 대문자로,대문자이면 소문자로 바꾸어주면서, 공백문자를 없애주는 프로그램작성.
문자열입력-> HONG GIL DONG 입력시..
출력데이타: honggildong
오후
1. 실행결과와 같이 출력되도록,구조체배열의 name필드의 이름이 가나다순으로 정렬되게 프로그램을 작성.
-> 이름 나이
유승석 5
조효은 7
최운진 2
2. 실행결과와 같이 출력되도록,구조체배열의 year필드의 나이가 작은순에서 큰순으로 정렬되게 프로그램을 작성.
-> 이름 나이
최운진 2
유승석 5
조효은 7
3. 학생들에 관한 데이터를 처리하는 학사관리시스템을 구현한다. 이때 학생마다 이름,주소,나이,학번,성별,학점을 데이터로 처리한다. 데이터를 하나로 묶어 처리할수 있는 구조체를 선언하고 [홍길동,서울,20,2000,남,3.5]로 구성된 자료를 입력받고, 화면에 그값을 출력해 본다.
4. 문자열에서 공백문자를 제거하는 함수를 작성하라.
함수원형(prototype) : void StringNoSpace(char *str1);
char *m = “I Love You”;
ILoveYou
5. 두 문자열이 같은지 비교하는 함수를 작성하라.
함수원형(prototype) : int StringComp(char *str1,char *str2);
char *m1 = “I Love You”;
char *m2 = “l Love You;
-> 같은 문자열
6. Guess Game을 작성하라. 어떠한 숫자를 입력할 때 정답보다 크면 크다, 작으면 작다라는 메시지를 주어 미리 정해진 정답을 맞추도록 유도한다.
오전
오후
Day2
C언어
오전
1. 아래와 같이 화면에 출력
****
***
**
*
2. 아래와 같이 화면에 출력
A***
*B**
**C*
***D
3. 아래와 같이 화면에 출력
01
0203
040506
07080910
4. 키보드로부터 단을 입력받아 해당단을 출력시켜주는 프로그램(구구단)작성하라.
5. 키보드로부터 정수값을 입력받아 1부터 입력받은정수값사이에 있는 숫자중에서 3의 배수의 값은 몇개존재하는지 판별하는 프로그램작성하라.
오후
1. 서기 1년1월1일부터 어떤 년,월,일까지의 총날짜수를 구하는 함수를작성하라.
nalsu(1993,2,15); 호출시 서기 1년1월1일부터 1993년2월15일까지의 총날수를 구하는 함수를 작성..
2. 위의 nalsu()함수를 이용하여 요일을 출력시켜주는 함수를 작성하라.
yoil(1994,1,1); 호출시 1994년1월1일에 대한 요일출력하는 함수작성..
3. 어떤 해에 대한 띠를 출력시켜주는 함수를 작성하라.
tti(1970); 호출시 "개"라고 출력하는 함수작성..
4. 문자열에서 어떤 문자가 몇개있는지 카운트하는 함수를 작성하라.
함수원형(prototype) : int CountChar(char *str,char ch);
char *m = "I Love You";
char c = 'o'
I Love You 에는 o가 2개있다..
5. 문자열에서 문자열 추가하는 함수를 작성하라.
함수원형(prototype) : void StringCat(char *str1, char *str2);
char *m1 = “I Love”;
char *m2 = “You”
I Love You
6. 문자열을 뒤집는 함수를 작성하라.
함수원형(prototype) : void StringRev(char *str1);
오전
오후
Day1
C언어
1. 10진법을 2진법으로 변경하는 프로그램(2진법을 10진법으로 구하는 프로그램)
2. 2g, 3g, 5g추가 각각 10개씩 있다. 이 추들을 이용하여 81g을 만드는 경우를 출력하는 프로그램(단 사용하지 않는 추가 있을 수도 있다)
3. 세수를 입력받아 그중에서 가장 큰수를 찾는 프로그램을 이항연산자를 이용해 작성하라.
4. 서로 다른 다섯 숫자(1,2,3,4,5)에서 서로 다른 숫자 3개를 선택하는 경우(단 123과 213은 같다)를 출력하는 프로그램
5. 서로 다른 다섯 숫자(1,2,3,4,5)에서 서로 다른 숫자 3개를 선택하여 나열하는 경우를 출력하는 프로그램(단 123과 213, 321…는 모두 다르다.)
int main(void)
{
int a;
int b;
int c;
int i=0;
int x[10];
printf("10진법을 2진법으로 변경하는 프로그램\n");
printf("정수 입력\n");
scanf("%d", &c);// 값을 입력 받는다
while(c!=0)// 값이 0 일때 종료
{
a=c/2; //a는 입력값 나누기 2로 해준다
b=c%2; //나눠서 나머지를 반환한다
x[i]=b; //반환한 나머지를 저장 한다10번째까지 오버 하면.,. 에러 ㅋㅋ
i++; //i 값을 0 부터 1씩 증가 한다 이유:배열 1개 마다 숫자 들어가야 하기 때문
c=a; // 0이 나올떄까지 반복 a=c/2; 이부분 으로 다시 시작
}
for(--i;i>=0;i--)//뒷부터 나오기 위해 쓰임
printf("%d",x[i]);// 출력 부분
return 0;
}
#include <stdio.h>
int a=2 ,b=3, c=5;
int total=81;
int na, nb, nc;
int sum;
void sNum()
{
int i=0;
for(na=0; na<=10; na++)
{
for(nb=0;nb<=10; nb++)
{
for(nc=0; nc<=10; nc++)
{
sum=a*na+b*nb+c*nc;
if(total==sum)
{
printf("2g:%d개\t 3g: %d개\t 5g :%d\n",na,nb,nc);
i++;
}
}
}
}
printf("총 %d 가지 경우 \n",i);
}
void main(void)
{
sNum();
}
#include <stdio.h>
int main(void)
{
int a=2 ,b=3, c=5;
int total=81;
int na, nb, nc;
int sum;
int i=0;
for(na=0; na<=10; na++)
{
for(nb=0;nb<=10; nb++)
{
for(nc=0; nc<=10; nc++)
{
sum=a*na+b*nb+c*nc;
if(total==sum)
i++;
{
}
}
}
}
printf("2g:%d개\t 3g: %d개\t 5g :%d\t",na,nb,nc);
printf("총 %d 가지 경우 \n",i);
}
#include <stdio.h>
#define N 10
int a,b,c;
int r;
int x[N]={10};
void anum()
printf("10진법을 2진법으로 변경하는 프로그램\n");
printf("정수 입력\n");
scanf("%d", &a);
}
void bnum()
int i=0;
c=a;
while(c)
{
r=c%2;
x[i]=r;
c=c/2;
i++;
}
printf("2진수로 변환되는 값\n");
for(--i;i>=0;i--)
printf("%d",x[i]);
}
void main()
{
anum();
bnum();
}
이것좀 형것 보면서 했는데.,.,,
에러 이빠이 ㅡㅢㅣㅣ
이유는??
#include <stdio.h>
void Max();
void Min();
int c;
int b;
int a;
int x[10];
void main()
{
Min();
Max();
}
void Min()
{
printf("10진법을 2진법으로 변경하는 프로그램\n");
printf("정수 입력\n");
scanf("%d",&c);
}
void Max()
{
int i=0;
while(c)
{
a=c/2;
b=c%2;
x[i]=b;
i++;
c=a;
}
printf("2진수로 변환된 값은:");
for(--i;i>=0;i--)
printf("%d",x[i]);
}
ㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋ
형것 참조 하면서 ㅋㅋ
완성 했음
ㅋ
변수 1개 줄이고 ㅋㅋㅋ
int 랑 void 헤갈림..
가르쳐 주삼
형그리고 여기서 #define N 10 하면 에러 뜨맨
이유가 뭐에요?????