클래식 C 언어 프로그래밍 100가지 예-제목+답안 코드(21-30)
5154 단어 대학원 전공 과목을 복습하다.
제목: 원숭이가 복숭아를 먹는 문제: 원숭이가 첫날에 몇 개의 복숭아를 따서 바로 반을 먹었는데 맛이 없다. 또 하나를 더 먹었다. 다음날 아침에 남은 복숭아를 반만 먹고 또 하나를 더 먹었다.앞으로 매일 아침 전날 남은 하나를 먹었다.열흘째 아침에 먹고 싶을 때 복숭아 하나만 남은 것을 보았다.첫날 얼마나 땄는지
1. 프로그램 분석: 역방향 사고의 방법을 취하여 뒤에서 앞으로 추정한다.2. 프로그램 소스 코드:
main()
{
int day,x1,x2;
day=9;
x2=1;
while(day>0)
{x1=(x2+1)*2;/* 2 1 2 */
x2=x1;
day--;
}
printf("the total is %d
",x1);
}
==============================================================
【프로그램 22】
제목: 두 탁구팀이 시합을 하는데 각각 세 명씩 출전한다.갑팀은 a, b, c 세 명, 을팀은 x, y,z 세 명이다.이미 추첨하여 경기 명단을 결정하였다.누군가가 선수에게 경기의 명단을 물었다.a는 x비와 맞지 않는다고 말했고, c는 x,z비와 맞지 않는다고 말했으니, 프로그램을 짜서 3팀 선수의 명단을 찾아주세요.1. 프로그램 분석: 소수를 판단하는 방법: 한 수로 각각 2에서 sqrt(이 수)를 제거하고 정제될 수 있다면 이 수는 소수가 아니라 반대로 소수임을 나타낸다.2. 프로그램 소스 코드:
main()
{
char i,j,k;/*i a ,j b ,k c */
for(i='x';i<='z';i++)
for(j='x';j<='z';j++)
{
if(i!=j)
for(k='x';k<='z';k++)
{ if(i!=k&&j!=k)
{ if(i!='x'&&k!='x'&&k!='z')
printf("order is a--%c\tb--%c\tc--%c
",i,j,k);
}
}
}
}
==============================================================
【프로그램 23】
제목: 다음 그림을 인쇄합니다(마름모꼴)
*
***
******
********
******
***
*
1. 프로그램 분석: 먼저 도형을 두 부분으로 나누어 보면 앞의 네 줄은 하나의 규칙이고 뒤의 세 줄은 하나의 규칙이다. 이중 for순환을 이용하여 1층 제어행, 2층 제어열을 사용한다.2. 프로그램 소스 코드:
main()
{
int i,j,k;
for(i=0;i<=3;i++)
{
for(j=0;j<=2-i;j++)
printf(" ");
for(k=0;k<=2*i;k++)
printf("*");
printf("
");
}
for(i=0;i<=2;i++)
{
for(j=0;j<=i;j++)
printf(" ");
for(k=0;k<=4-2*i;k++)
printf("*");
printf("
");
}
}
==============================================================
【프로그램 24】
제목: 1분수 서열이 있다: 2/1, 3/2, 5/3, 8/5, 13/8, 21/13...이 수열의 20항의 합을 구해라.1. 프로그램 분석: 분자와 분모의 변화 법칙을 잡으세요.2. 프로그램 소스 코드:
main()
{
int n,t,number=20;
float a=2,b=1,s=0;
for(n=1;n<=number;n++)
{
s=s+a/b;
t=a;a=a+b;b=t;/* , t */
}
printf("sum is %9.6f
",s);
}
==============================================================
【프로그램25】제목: 1+2를 구하세요! +3!+...+20!의 및 1.프로그램 분석: 이 프로그램은 누적을 누승으로 만들었을 뿐이다.2. 프로그램 소스 코드:
main()
{
float n,s=0,t=1;
for(n=1;n<=20;n++)
{
t*=n;
s+=t;
}
printf("1+2!+3!...+20!=%e
",s);
}
==============================================================
【프로그램 26】
제목: 귀속 방법을 이용하여 5!1. 프로그램 분석: 귀속 공식: fn=fn1*4! 2. 프로그램 소스 코드:
#include "stdio.h"
main()
{
int i;
int fact();
for(i=0;i<5;i++)
printf("\40:%d!=%d
",i,fact(i));
}
int fact(j)
int j;
{
int sum;
if(j==0)
sum=1;
else
sum=j*fact(j-1);
return sum;
}
==============================================================
【프로그램27】제목: 귀속 함수 호출 방식을 이용하여 입력한 다섯 문자를 반대 순서로 출력한다.1. 프로그램 분석: 2.프로그램 소스 코드:
#include "stdio.h"
main()
{
int i=5;
void palin(int n);
printf("\40:");
palin(i);
printf("
");
}
void palin(n)
int n;
{
char next;
if(n<=1)
{
next=getchar();
printf("
\0:");
putchar(next);
}
else
{
next=getchar();
palin(n-1);
putchar(next);
}
}
==============================================================
【프로그램 28】
제목: 다섯 명이 함께 앉았는데 다섯 명이 몇 살이냐고요?그는 네 번째 사람보다 두 살 많다고 말했다.네 번째 사람에게 나이를 물었더니 세 번째 사람보다 두 살 많다고 말했다.세 번째 사람에게 물었더니 두 번째 사람보다 두 살 많다고 한다.두 번째 사람에게 물어보니 첫 번째 사람보다 두 살 많다고 한다.마지막으로 첫 번째 사람에게 물었더니 그는 열 살이라고 말했다.다섯 번째 사람은 몇 살입니까?
1. 프로그램 분석: 귀속의 방법을 이용하여 귀속은 귀속과 추이 두 단계로 나뉜다.다섯 번째 사람의 나이를 알고 싶다면 네 번째 사람의 나이를 알고 순서대로 유추해 첫 번째 사람(10세)으로 미루고 다시 돌려야 한다.
2. 프로그램 소스 코드:
age(n)
{
int n;
int c;
if(n==1) c=10;
else c=age(n-1)+2;
return(c);
}
main()
{ printf("%d",age(5));
}
==============================================================
【프로그램 29】
제목: 5자리 이하의 정수를 주십시오. 요구: 첫째, 몇 자리인지 구하고, 둘째, 역순으로 여러 숫자를 출력하십시오.1. 프로그램 분석: 한 자릿수를 분해하는 것을 배워서 다음과 같이 설명한다. (이곳은 간단한 알고리즘이다).프로그램 소스 코드:
main( )
{
long a,b,c,d,e,x; scanf("%ld",&x); a=x/10000;/* */ b=x 000/1000;/* */
c=x 00/100;/* */
d=x 0/10;/* */
e=x ;/* */
if (a!=0) printf("there are 5, %ld %ld %ld %ld %ld
",e,d,c,b,a); else if (b!=0) printf("there are 4, %ld %ld %ld %ld
",e,d,c,b); else if (c!=0) printf(" there are 3,%ld %ld %ld
",e,d,c); else if (d!=0) printf("there are 2, %ld %ld
",e,d);
else if (e!=0) printf(" there are 1,%ld
",e);
}
==================================================================[프로그램 30] 제목: 한 다섯 자리수로 회문수인지 아닌지를 판단한다.즉 12321은 회문수로 개위는 만 자리와 같고 열 자리는 천 자리와 같다.1. 프로그램 분석: 동29예2.프로그램 소스 코드:
main( )
{
long ge,shi,qian,wan,x;
scanf("%ld",&x);
wan=x/10000;
qian=x 000/1000;
shi=x 0/10;
ge=x ;
if (ge==wan&&shi==qian)/* */ printf("this number is a huiwen
"); else
printf("this number is not a huiwen
");
}
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
클래식 C 언어 프로그래밍 100가지 예-제목+답안 코드(71-80)【절차 71】 제목: input()와output() 함수 입력을 작성하고 5명의 학생의 데이터 기록을 출력합니다.1. 프로그램 분석: 2.프로그램 소스 코드: 【프로그램 72】 제목: 체인 시계를 만듭니다.1. 프로...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.