==============================================
/* 程式檔名:test_8-29-1 */
/* 程式目的:巨集定義平方和*/
/* 程式設計:蘇彥儒*/
/* 完成日期:20140327*/
#include <stdio.h>
#define X(x) (x)*(x)
#define Y(y) (y)*(y)
int main(void)
{
int x,y;
printf("x的數字\n");
scanf("%d",&x);
printf("y的數字\n");
scanf("%d",&y);
printf("x的平方和=%d\n",X(x));
printf("y的平方和=%d\n",Y(y));
system("pause");
return 0;
}
==============================================
/* 程式檔名:test_8-29-2 */
/* 程式目的:巨集定義圓周率及半徑平方公式*/
/* 程式設計:蘇彥儒*/
/* 完成日期:20140327*/
#include <stdio.h>
#define PI 3.1415926
#define R(r) (r)*(r)*(PI)
int main(void)
{
int r;
printf("請輸入半徑\n");
scanf("%d",&r);
printf("圓面積=%f\n",R(r));
system("pause");
return 0;
}
==============================================
/* 程式檔名:test_8-29-3 */
/* 程式目的:巨集定義圓周率及半徑平方公式*/
/* 程式設計:蘇彥儒*/
/* 完成日期:20140327*/
#include <stdio.h>
#define LW(l,w) (l)*(w)
int main(void)
{
int l,w,flag=0;
do
{
printf("請輸入長\n");
scanf("%d",&l);
printf("請輸入寬\n");
scanf("%d",&w);
if(l==0 || w==0)
{
printf("輸入錯誤,重新輸入\n");
}
else
{
flag=1;
}
}while(flag!=1);
printf("表面積=%d\n",LW(l,w));
system("pause");
return 0;
}
==============================================
/* 程式檔名:test_8-29-4 */
/* 程式目的:巨集定義圓周率及半徑平方公式*/
/* 程式設計:蘇彥儒*/
/* 完成日期:20140327*/
#include <stdio.h>
#define add(x,y) x+y
#define ed(x,y) x+y
#define (x,y) x+y
#define add(x,y) x+y
int main(void)
{
int l,w,flag=0;
do
{
printf("請輸入長\n");
scanf("%d",&l);
printf("請輸入寬\n");
scanf("%d",&w);
if(l==0 || w==0)
{
printf("輸入錯誤,重新輸入\n");
}
else
{
flag=1;
}
}while(flag!=1);
printf("表面積=%d\n",LW(l,w));
system("pause");
return 0;
}
==============================================
/* 程式檔名:test_8-29-5 */
/* 程式目的:巨集定義數學函式從鍵盤輸入並計算*/
/* 程式設計:蘇彥儒*/
/* 完成日期:20140401*/
#include <stdio.h>
#define f(x,y) (3*x)+(2*y)
int main(void)
{
int x,y;
printf("請輸入x\n");
scanf("%d",&x);
printf("請輸入y\n");
scanf("%d",&y);
printf("3x+2y=%d\n",f(x,y));
system("pause");
return 0;
}
==============================================
/* 程式檔名:test_8-29-6 */
/* 程式目的:巨集定義數學函式從鍵盤輸入並計算*/
/* 程式設計:蘇彥儒*/
/* 完成日期:20140401*/
#include <stdio.h>
#define f(x) (3*x)+2
int main(void)
{
int x;
printf("請輸入x\n");
scanf("%d",&x);
printf("3x+2=%d\n",f(x));
system("pause");
return 0;
}
==============================================
/* 程式檔名:test_8-29-7 */
/* 程式目的:巨集定義數學函式(a+b+c)*(a+b+c)從鍵盤輸入並計算*/
/* 程式設計:蘇彥儒*/
/* 完成日期:20140401*/
#include <stdio.h>
#define f(a,b,c) (a+b+c)*(a+b+c)
int main(void)
{
int a,b,c;
printf("請輸入a\n");
scanf("%d",&a);
printf("請輸入b\n");
scanf("%d",&b);
printf("請輸入c\n");
scanf("%d",&c);
printf("(a+b+c)*(a+b+c)=%d\n",f(a,b,c));
system("pause");
return 0;
}
==============================================
/* 程式檔名:test_8-29-8 */
/* 程式目的:巨集定義數學函式(1+2)+(2+3)+(3+4)+...(n+(n+1))從鍵盤輸入並計算*/
/* 程式設計:蘇彥儒*/
/* 完成日期:20140401*/
#include <stdio.h>
#define f(x,y) x+y
int main(void)
{
int i,sum=0,n;
printf("請輸入n\n");
scanf("%d",&n);
for(i=1;i<n;i++)
{
sum=sum+f(i,i+1);
}
printf("%d\n",sum);
system("pause");
return 0;
}
==============================================
/* 程式檔名:test_8-29-9 */
/* 程式目的:巨集定義數學函式1/1+1/2+1/3+...+1/n從鍵盤輸入並計算*/
/* 程式設計:蘇彥儒*/
/* 完成日期:20140401*/
#include <stdio.h>
#define f(x) 1.0/(x)
int main(void)
{
int i,n;
float sum=0;
printf("請輸入n\n");
scanf("%d",&n);
for(i=0;i<n;i++)
{
sum=sum+f(i+1);
}
printf("%f\n",sum);
system("pause");
return 0;
}
==============================================
/* 程式檔名:test_8-29-10 */
/* 程式目的:巨集定義數學函式n階層從鍵盤輸入並計算*/
/* 程式設計:蘇彥儒*/
/* 完成日期:20140401*/
#include <stdio.h>
#define f(n,i) (n)*(i)
int main(void)
{
int i,n;
printf("請輸入n\n");
scanf("%d",&n);
for(i=n-1;i>0;i--)
{
n=f(n,i);
}
printf("%d\n",n);
system("pause");
return 0;
}
==============================================
2014年3月31日 星期一
2014年3月15日 星期六
(綠色皮) 最新C程式語言, 施威銘研究室 著, 旗標 第七章 '參考' 答案
==============================================
/* 程式檔名:test_7-51-1.c */
/* 程式目的:呼叫函數印出文字*/
/* 程式設計:蘇彥儒*/
/* 完成日期:20140312*/
#include <stdio.h>
void printresult(void);
int main(void)
{
printresult();
system("pause");
return 0;
}
void printresult(void)
{
printf("HELLO C WORLD\n");
}
/* 程式檔名:test_7-51-1.c */
/* 程式目的:呼叫函數印出文字*/
/* 程式設計:蘇彥儒*/
/* 完成日期:20140312*/
#include <stdio.h>
void printresult(void);
int main(void)
{
printresult();
system("pause");
return 0;
}
void printresult(void)
{
printf("HELLO C WORLD\n");
}
==============================================
/* 程式檔名:test_7-51-2.c */
/* 程式目的:呼叫函數印出文字*/
/* 程式設計:蘇彥儒*/
/* 完成日期:20140312*/
#include <stdio.h>
void printresult(int);
int main(void)
{
int num;
printf("請輸入指定行數:\n");
scanf("%d",&num);
printresult(num);
system("pause");
return 0;
}
void printresult(int num)
{
int i;
for(i=0;i<num;i++)
{
printf("HELLO C WORLD\n");
}
}
==============================================
/* 程式檔名:test_7-51-3.c */
/* 程式目的:呼叫函式比較大小*/
/* 程式設計:蘇彥儒*/
/* 完成日期:20140312*/
#include <stdio.h>
int printresult(int,int);
int main(void)
{
int fir,sec;
printf("請輸入兩個數字:\n");
scanf("%d %d",&fir,&sec);
printf("最大值:%d\n",printresult(fir,sec));
system("pause");
return 0;
}
int printresult(int x,int y)
{
if (x>y)
return x;
else
return y;
}
==============================================
/* 程式檔名:test_7-51-4.c */
/* 程式目的:計算1~100中是7的倍數*/
/* 程式設計:蘇彥儒*/
/* 完成日期:20130821*/
#include <stdio.h>
int funa(int);
int main(void)
{
int i;
for(i=1;i<=100;i++)
{
funa(i);
}
system("pause");
return 0;
}
int funa(int i)
{
if(i%7==0)
{
printf("%d \n",i);
}
}
==============================================
/* 程式檔名:test_7-51-5.c */
/* 程式目的:印出數學函式*/
/* 程式設計:蘇彥儒*/
/* 完成日期:20130821*/
#include <stdio.h>
float printfruselt(float);
int main(void)
{
float x;
printf("請輸入x:");
scanf("%f",&x);
printf("f(x)=x^3+2x^2+1=%.2f",printfruselt(x));
system("pause");
return 0;
}
float printfruselt(float x)
{
float result;
result=(x*x*x)+(2*(x*x))+1;
return result;
}
==============================================
/* 程式檔名:test_7-51-6.c */
/* 程式目的:印出數學函式*/
/* 程式設計:蘇彥儒*/
/* 完成日期:20130821*/
#include <stdio.h>
float printfruselt(float,float);
int main(void)
{
float x,y;
printf("請輸入f(x,y):");
scanf("%f %f",&x,&y);
printf("f(x)=x^2*y+2x*y+x*y^2=%.2f",printfruselt(x,y));
system("pause");
return 0;
}
float printfruselt(float x,float y)
{
float result;
result=(x*x)*y+2*x*y+x*(y*y);
return result;
}
==============================================
/* 程式檔名:ex_7-52-7.c */
/* 程式目的:遞回函式1+2+3+...+100*/
/* 程式設計:蘇彥儒*/
/* 完成日期:20140312*/
#include <stdio.h>
void hanoi(int,int);
int main(void)
{
int i;
hanoi(0,0);
system("pause");
return 0;
}
void hanoi(int i,int sum)
{
if(i==100)
{
printf("\b");
printf("=%d\n",sum);
}
else
{
i++;
printf("%d+",i);
sum=sum+i;
hanoi(i,sum);
}
}
==============================================
/* 程式檔名:test_7-52-8.c */
/* 程式目的:遞回函式求出最大質因數*/
/* 程式設計:蘇彥儒*/
/* 完成日期:20140313*/
#include <stdio.h>
#include <stdio.h>
void factor(long,long);
int main(void)
{
long number,div;
printf("請輸入一個欲作因數分解的數字:\n");
scanf("%d",&number);
printf("輸入:%d\n",number);
if(number==1)
printf("輸入錯誤");
else
factor(number,2);
system("pause");
return 0;
}
void factor(long num,long div)
{
if(num==1 || div>num)
{
printf("\b");
printf("最大值:%d",div);
return;
}
else
{
if(num%div==0)
{
printf("%d*",div);
factor(num/div,div);
}
else
{
div=(div==2?3:div+2);
factor(num,div);
}
}
}
==============================================
/* 程式檔名:test_7-52-9.c */
/* 程式目的:遞回函式求出最大公因數*/
/* 程式設計:蘇彥儒*/
/* 完成日期:20140313*/
#include <stdio.h>
#include <stdio.h>
void factor(int,int,int);
int main(void)
{
int fir,sec;
printf("請輸入兩個數字:\n");
scanf("%d %d",&fir,&sec);
if(fir!=0 && sec!=0)
factor(fir,sec,fir%sec);
else
printf("錯誤");
system("pause");
return 0;
}
void factor(int a,int b,int c)
{
if(c!=0)
{
a=b;
b=c;
factor(a,b,a%b);
}
else
printf("最大公因數%d\n",b);
}
==============================================
/* 程式檔名:test_7-52-10.c */
/* 程式目的:換零錢機器*/
/* 程式設計:蘇彥儒*/
/* 完成日期:20140316*/
#include <stdio.h>
#include <stdio.h>
int allmoney(int,int);
void chanmoney(int);
int main(void)
{
int money,num,chmoney,chnum;
int sum,chsum;
printf("換零錢機器\n");
printf("只接受100,200,500,1000元\n");
printf("輸入要換的紙鈔 1.100, 2.200, 3.500, 4.1000元\n");
scanf("%d",&money);
if (money>4 || money<1)
printf("輸入紙鈔錯誤\n");
else
{
printf("輸入張數:\n");
scanf("%d",&num);
sum=allmoney(money,num);
printf("總金額:%d\n",sum);
chanmoney(sum);
}
system("pause");
return 0;
}
int allmoney(int money,int num)
{
switch(money)
{
case 1:
{
printf("%d張100元",num);
return(num*100);
break;
}
case 2:
{
printf("%d張200元",num);
return(num*200);
break;
}
case 3:
{
printf("%d張500元",num);
return(num*500);
break;
}
case 4:
{
printf("%d張1000元",num);
return(num*1000);
break;
}
}
}
void chanmoney(int sum)
{
int allchsum,chmoney,chnum;
int fiveten=0,ten=0,five=0,one=0;
printf("選擇零錢面額(1.一元、2.五元、3.十元、4.五十元):\n");
scanf("%d",&chmoney);
if (chmoney>4 || chmoney<1)
printf("輸入零錢面額錯誤\n");
else
{
printf("輸入個數:\n");
scanf("%d",&chnum);
switch(chmoney)
{
case 1:
{
one=chnum;
break;
}
case 2:
{
five=chnum*5;
break;
}
case 3:
{
ten=chnum*10;
break;
}
case 4:
{
fiveten=chnum*50;
break;
}
}
if(one>sum || five>sum || ten>sum || fiveten>sum)
printf("超過投入金額\n");
else
{
switch(chmoney)
{
case 1:
{
printf("兌換%d個1元\n",chnum);
allchsum=chnum;
break;
}
case 2:
{
printf("兌換%d個5元\n",chnum);
allchsum=chnum*5;
break;
}
case 3:
{
printf("兌換%d個10元\n",chnum);
allchsum=chnum*10;
break;
}
case 4:
{
printf("兌換%d個50元\n",chnum);
allchsum=chnum*50;
break;
}
}
sum=sum-allchsum;
printf("剩下金額%d找出零錢\n",sum);
fiveten=(sum-sum%50);
ten=((sum-fiveten)-(sum-fiveten)%10);
five=((sum-fiveten-ten)-(sum-ten)%5);
one=((sum-ten)%5);
printf("五十元:%d\n",fiveten/50);
printf("十元:%d\n",ten/10);
printf("五元:%d\n",five/5);
printf("一元:%d\n",one);
}
}
}
==============================================
訂閱:
文章 (Atom)