스택(배열 및 리스트), 메모장 파일 입출력 관련 질문입니다..
참이
#include
typedef struct
{
int id;
int kor, eng, math;
double tot, avg;
} ST1;
void main() {
int i;
ST1 ss[3];
for(i=0; i3; i++) {
scanf(%d%d%d, &ss[i].id, &ss[i].kor, &ss[i].math, &ss[i].eng);
ss[i].tot = ss[i].kor, ss[i].math, ss[i].eng;
ss[i].avg = ss[i].tot / 3;
}
printf(*****************************************************************************\n);
printf(번호 국어 영어 수학 총점 평균 등급\n);
printf(*****************************************************************************\n);
for(i=0; i3; i++) {
printf(%d %d %d %lf %lf, ss[i].kor, ss[i].math, ss[i].eng, ss[i].tot, ss[i].avg);
}
}
========================================================
2222222
메뉴 형식 - 1. 새파일 만들기
2. 파일 열기
3. 파일 저장
4. 종료파일 입출력 예제 샘플
#include stdio.h
int main() {
FILE *afp, *bfp;
char *fname=c.txt; // 파일 이름 선택
char ch;
afp=fopen(fname, w); //파일 이름
if(afp==NULL){
printf(a파일 개방 실패.\n);
return 1;
}
bfp=fopen(b.txt, a);
if(bfp==NULL){
printf(b파일 개방 실패.\n);
return 1;
}
printf(추가 데이터를 입력.\n);
while(1){
ch=getchar();
if(ch==EOF) break;
fputc(ch, bfp);
}
fclose(afp);
fclose(bfp);
return 0;
}
//////////////////////////////////////////////////////////
=== 메모장 =======
1. 파일 새로 열기
2. 기존 파일 열기
3. 종료
메뉴 선택#include stdio.h
#include stdlib.h
#include string.h
void display();
int new_File();
int file_open();
int modify(char *file_name);
int main() {
display();
return 0;
}
int new_file() {
FILE *newfp;
char ch;
char file_name[100]; // 파일 이름
printf(파일 이름 입력(ex: filename.txt) : );
scanf(%s, file_name);
newfp = fopen(file_name, w);
if(newfp == NULL) {
printf(%s 파일 열기 실패.\n, file_name);
return 1;
}
printf(%s 의 내용을 작성하세요.(내용 마무리는 EOF) \n\n, file_name);
while(1) {
ch=getchar();
if(ch==EOF) break;
fputc(ch, newfp);
}
printf(내용 완료 입니다. \n);
fclose(newfp);
system(cls);
display();
}
int file_open(){
FILE *existfp;
char ch;
char file_name[100]; // 파일 이름
printf(기존 파일 이름 입력(ex: filename.txt) : );
scanf(%s, file_name);
existfp = fopen(file_name, r);
if(existfp == NULL) {
printf(%s 파일 열기 실패.\n, file_name);
return 1;
}
while(1){
ch=fgetc(existfp);
if(ch==EOF) break;
putchar(ch);
}
fclose(existfp);
modify(file_name) ;
}
int modify(char *file_name) {
FILE *modifp;
char ch;
modifp = fopen(file_name, a);
if(modifp == NULL) {
printf(%s 파일 열기 실패.\n, file_name);
return 1;
}
printf(%s 의 추가 내용을 작성하세요.(마무리는 EOF) \n\n, file_name);
while(1) {
ch=getchar();
if(ch==EOF) break;
fputc(ch, modifp);
}
fclose(modifp);
display();
}
void display() {
int choice;
printf(=== 메모장 =======\n);
printf(1. 파일 새로 열기\n);
printf(2. 기존 파일 열기\n);
printf(3. 종료\n);
printf(메뉴 선택: );
scanf(%d, &choice);
switch(choice){
case 1: new_file();
break;
case 2:
file_open();
break;
case 3: exit(1);
break;
}
}
====================================================
333333333333 - 스택(배열 및 리스트) 구현
&nbs
#include stdio.h
#include stdlib.h
#define STACK_SIZE 100
typedef int element; //int를 스택 element의 자료형으로 정의
element stack[STACK_SIZE];
int top= -1; //스택의 top의 초깃값을 -1로 설정
void push(element item) //스택의 삽입 연산
{
if(top = STACK_SIZE-1) { //스택이 이미 Full인 경우
printf(\n\n Stack is FULL ! \n);
return;
}
else stack[++top]=item;
}
element pop() //스택의 삭제 후 반환 연산
{
if(top==-1) { //현재 스택이 공백인 경우
printf(\n\n Stack is Empty!!\n);
return 0;
}
else return stack[top--];
}
void del() //스택의 삭제 연산
{
if(top==-1) { //현재 스택이 공백인 경우
printf(\n\n Stack is Empty !\n);
exit(1);
}
else top--;
}
element peek() //스택의 top 원소 검색 연산
{
if(top==-1){ //현재 스택이 공백인 경우
printf(\n\n Stack is Empty !\n);
exit(1);
}
else return stack[top];
}
void printStack() //스택 내용 출력 연산
{
int i;
printf(\n STACK [ );
for(i=0; i=top; i++)
printf(%d ,stack[i]);
printf(] );
}
void main(void)
{
int item;
printStack();
push(1);
printStack();
push(2);
printStack();
push(3);
printStack();
push(4);
printStack();
push(5);
printStack();
push(6);
printStack();
item = peek();
printStack();
printf(peek top = %d, item);
del();
printStack();
item = pop();
printStack();
printf(\t pop top = %d, item);
item = pop();
printStack();
printf(\t pop top = %d, item);
item = pop();
printStack();
printf(\t pop top = %d, item);
item = pop();
printStack();
printf(\t pop top = %d, item);
pop();
getchar();
}도와주십시오.. 제머리로는 불가능입니다..
-
일본드립
아차!했네요ㅋㅋㅋ 저런 소스들로 만들수 있는 프로그램 소스를 얻고 싶어요 ...
-
핑1크캣
무엇을 도와달라는 건지 모르겠네요.
번호 | 제 목 | 글쓴이 | 날짜 |
---|---|---|---|
2692343 | scnaf에 자꾸 선언을 참조하라는데;; (8) | 도래 | 2025-04-22 |
2692282 | 도스상에서 생성된 exe파일에 press~ 뜨게 하기 (4) | 회사원 | 2025-04-21 |
2692256 | scanf("%*c"); ㅠㅠ 고수님들 | 거북이 | 2025-04-21 |
2692230 | 하노이탑 질문입니다. (1) | 미쁘다 | 2025-04-21 |
2692210 | 정보 올림피아드 문제인데.. 풀이 과정이 궁금합니다.(재귀함수) (5) | 물티슈 | 2025-04-20 |
2692144 | C언어와 리눅스에 대한 질문입니다. | 싴흐한세여니 | 2025-04-20 |
2692114 | 컨텍스트 스위칭하는데 걸리는 시간 측정.. | YourWay | 2025-04-19 |
2692086 | 간접참조 연산자, 증감연산자 질문이용! (2) | 블랙캣 | 2025-04-19 |
2692056 | 주석좀 달아주세요. 몇개적엇는데 몇개만달아주세요. (2) | DevilsTears | 2025-04-19 |
2691978 | 진수 쉽게 이해하는법... (3) | 지지않는 | 2025-04-18 |
2691949 | getchar() 한 문자를 입력받는 함수 질문 | 채꽃 | 2025-04-18 |
2691919 | 배열 정렬 및 합치기 질문입니다. | 사과 | 2025-04-18 |
2691845 | c언어왕초보 질문이 있습니다........ | 루나 | 2025-04-17 |
2691815 | void add(int num); 함수... (4) | 살랑살랑 | 2025-04-17 |
2691756 | 명령 프롬프트 스크롤바가 없어요 | 두메꽃 | 2025-04-16 |
2691725 | 자료구조에 관련해서 질문이 있어 글을 올립니다. | 누리알찬 | 2025-04-16 |
2691697 | if 문에서 구조체 배열에 저장되있던 문자열 검사하는 법 ? (2) | 민트맛사탕 | 2025-04-16 |
2691678 | C언어 함수 질문이요~!!! | 연보라 | 2025-04-15 |
2691650 | 반복문 | 돋가이 | 2025-04-15 |
2691618 | 링크드리스트 개념 질문이예요 (3) | 맨마루 | 2025-04-15 |