728x90
정수 계산하기
#include <iostream>
#include <stdio.h>
int threeCal(int x, int y, int z); //x+y*z
int secondCal(int x, int y, int z);//(x-y)*(y+z)*(z%x)
//정수 3개를 입력받아서 x+y*z의 결과를 출력하는 프로그램
int main(){
int x,y,z;
printf("세 숫자를 입력해주세요.");
scanf("%d %d %d", &x, &y, &z);
printf("입력하신 세 숫자의 %d + %d * %d의 값은 %d 입니다.\n", x,y,z,threeCal(x,y,z));
printf("변형된식 (%d-%d)*(%d+%d)*(%d%%%d)의 값은 %d입니다.",x,y,y,z,z,x,secondCal(x,y,z));
}//main함수 종료
//x+y*z 함수
int threeCal(int x, int y, int z){
int cal = x + y * z;
return cal;
}
//(x-y)*(y+z)*(z%x)의 계산 함수
int secondCal(int x, int y, int z){
int cal = (x-y)*(y+z)*(z%x);
return cal;
}
데이터타입
#include <iostream>
#include <stdio.h>
//sizeof()함수로 자료형 크기 알아보기
int main(){
//정수형 데이터타입
char charValue = 'A'; //문자 하나를 저장하기 위한 데이터 타입
short shortValue = 10; //int 보다 작은 수를 저장하기 위한 데이터 타입
int intValue = 100; //가장 만만한 수를 저장하기 위한 데이터 타입
long longValue = 200; // int가 커져서 이제 잘 안쓰는 데이터 타입
long long longLongValue = 1000; //int보다 큰 수를 저장하기 위한 데이터 타입
//실수형 데이터타입
float floatValue = 10.1; //가장 만만한 실수를 저장하기 위한 데이터 타입
double doubleValue = 100.1; //float보다 큰 실수를 저장하기 위한 데이터 타입
long double longDoubleValue = 200.1; //double보다 큰 실수를 저장하기 위한 데이터 타입
printf("char의 크기 %d \n", sizeof(charValue));
printf("short의 크기 %d \n", sizeof(shortValue));
printf("int의 크기 %d \n", sizeof(intValue));
printf("long의 크기 %d \n", sizeof(longValue));
printf("longlong의 크기 %d \n\n", sizeof(longLongValue));
printf("float의 크기 %d \n", sizeof(floatValue));
printf("double의 크기 %d \n", sizeof(doubleValue));
printf("long double의 크기 %d \n", sizeof(longDoubleValue));
}
원의 반지름 구하기
- 함수를 사용할것, 전방선언 해볼것
- 원의 반지름은 정수
#include <iostream>
#include <stdio.h>
float circleArea(int radius,float PI);
// 원의 반지름을 입력받아서 원의 넓이를 출력하는 프로그램 작성해보기
// 함수를 사용할것, 전방선언 해보기
// 원의 반지름은 정수
int main(){
const float PI = 3.141592f;//끝에 f를 달게 되면 float로 확인되며, f를 달지 않으면 double로 나온다.
printf("원의 반지름을 입력해주세요 : ");
int radius;
scanf("%d",&radius);
printf("원의 반지름은 %d입니다. 원의 넓이는 %.2f입니다. ",radius,circleArea(radius,PI));
}
float circleArea(int radius, float PI){
float Area = radius * radius * PI;
return Area;
}
특수문자 판별
캐릭터 하나를 입력받아서 해당 문자가 특수문자인지 아닌지 판별하기
1안
#include <iostream>
#include <stdio.h>
int trans(int a); //참, 거짓 변환 함수
int main(){
printf("문자를 입력하세요.\n");
char charValue;
scanf("%c",&charValue);
// bool isSpecial = (charValue<'A')||('Z'<charValue && charValue < 'a')||('z'<charValue);
bool isSpecial = ('!'<= charValue && charValue <= '/')||(':'<=charValue && charValue <= '@')||('['<=charValue && charValue < 'a')||('{'<=charValue && charValue <= '~');
printf("입력한 값은 특수문자인가?\n");
trans(isSpecial);
return 0;
}//main
int trans(int a){
int b;
b = (a == 1)?printf("참\n"):printf("거짓\n");
return 0;
}
2안
#include <iostream>
#include <stdio.h>
int main(){
printf("문자를 입력하세요.\n");
char charValue;
scanf("%c",&charValue);
// bool isSpecial = (charValue<'A')||('Z'<charValue && charValue < 'a')||('z'<charValue);
bool isSpecial = ('!'<= charValue && charValue <= '/')||(':'<=charValue && charValue <= '@')||('['<=charValue && charValue < 'a')||('{'<=charValue && charValue <= '~');
printf("입력한 값은 특수문자인가?\n");
(isSpecial == 1)?printf("참\n"):printf("거짓\n");
return 0;
}//main
3안
범위를 잡는 방법을 !(not)을 써서도 아스키코드에서 범위를 잡는다면 똑같이 계산할 수 있다.
4안
첫 if를 배울 수 있었다. 삼항연산자와 if는 비슷한것으로 느꼈다.
#include <iostream>
#include <stdio.h>
int main(){
// {}중괄호 영역을 스코프라고 한다.
char someAlphabet;
scanf("%c",&someAlphabet);
bool isBigAlphabet = ('A' <= someAlphabet && someAlphabet <= 'Z');
bool isSmallAlphabet = ('a' <= someAlphabet && someAlphabet <= 'z');
bool isNumber = ('0' <= someAlphabet && someAlphabet <= '9');
if(isBigAlphabet){
printf("영문 대문자 입니다.\n");
//if문은 조건식이 참이면 스코프 안의 내용을 진행하고, 거짓이면 건너뛴다.
}else if(isSmallAlphabet){
printf("영문 소문자 입니다.\n");
}else if(isNumber){
printf("숫자 입니다.\n");
}else{
printf("잘 모르겠습니다.\n");
}
//위의 조건식에서 참이 아닌, 다른 모든 경우 스코프 안의 내용을 진행한다.
}
반복문
1) 기초1
#include <iostream>
#include <stdio.h>
//반복문
int main(){
int loopCount = 5;
while(1<=loopCount){
printf("Hello world\n");
loopCount -= 1;
}//loopCount while
}
2) 기초2
#include <iostream>
#include <stdio.h>
//반복문
int main(){
int number = 1;
while(number<=10){
printf("숫자 %d\n",number);
number += 1;
}
}
3) 별로 정사각형 만들기
#include <iostream>
#include <stdio.h>
//유저에게 사이즈를 입력받아서 *로 정사각형 출력하기
int main(){
int number,number2,number3;
printf("정사각형 공장입니다.\n");
printf("3 ~ 10사이 숫자를 입력해주세요:");
//입력받기
scanf("%d",&number);
//3~10 사이의 숫자 입력하지 않을시 함수 종료
if(number < 3){
printf("다시 시작하세요\n");
number = 0;
}else if(number > 10){
printf("다시 시작하세요\n");
number = 0;
}
//정사각형을 만들기 위해 입력값을 다른변수에 대입
number2 = number;
number3 = number;
while(1 <= number){
while(1<=number2){
printf("* ");
number2 -= 1;
}
if(number2 < 1){
number2 = number3;
}
printf("\n");
number -= 1;
}
}
728x90
'프로그래밍 > C,C++' 카테고리의 다른 글
[오류_C/C++] scanf(%d,&a)에 문자를 입력할 경우 컴퓨터는 어떻게 받아들이는가? (0) | 2023.06.02 |
---|---|
[C/C++] 자료형, byte, 아스키코드 (0) | 2023.06.02 |
[예제] 삼항연산자를 이용한 가위바위보 (0) | 2023.05.31 |
[C/C++] 변수 기초 1(int, float) (0) | 2023.05.31 |
[C/C++] 연산자 기초 (0) | 2023.05.31 |