简单的C程序35个.docx

上传人:b****7 文档编号:10166751 上传时间:2023-02-09 格式:DOCX 页数:27 大小:19.31KB
下载 相关 举报
简单的C程序35个.docx_第1页
第1页 / 共27页
简单的C程序35个.docx_第2页
第2页 / 共27页
简单的C程序35个.docx_第3页
第3页 / 共27页
简单的C程序35个.docx_第4页
第4页 / 共27页
简单的C程序35个.docx_第5页
第5页 / 共27页
点击查看更多>>
下载资源
资源描述

简单的C程序35个.docx

《简单的C程序35个.docx》由会员分享,可在线阅读,更多相关《简单的C程序35个.docx(27页珍藏版)》请在冰豆网上搜索。

简单的C程序35个.docx

简单的C程序35个

1、1+2+3+…+100

#include

main()

{

intsum=1;

intk=2;

for(;k<=100;)

{

sum=sum+k;

k++;

}

printf("Thesumis%d.Welldone.\n\n",sum);

}

 

2、1加到50分之1

#include

main()

{

floatsum=0;

inti=1;

while(i<=50)

{

sum=sum+1/(float)i;

i++;

}

printf("Thesumis%f.Welldone!

\n\n",sum);

}

 

3、输分数给等级

#include"stdio.h"

main()

{

intscore,grade;printf("Inputascore(0~100):

");

scanf("%d",&score);

grade=score/10;/*将成绩整除10,*/

switch(grade)

{

case10:

case9:

printf("grade=A\n\n");break;

case8:

printf("grade=B\n\n");break;

case7:

printf("grade=C\n\n");break;

case6:

printf("grade=D\n\n");break;

case5:

case4:

case3:

case2:

case1:

case0:

printf("grade=E\n\n");break;

default:

printf("Thescoreisoutofrange!

\n\n");

}

}

 

4、百钱买百鸡

/*例3.22*/

#include

intmain()

{

intcocks=0;

printf("%8s%8s%8s\n","cocks","hens","chicks");

while(cocks<=19)

{

inthens=0;

while(hens<=33)

{

intchicks=100-cocks-hens;

if(5*cocks+3*hens+chicks/3.0==100)

printf("%8d%8d%8d\n",cocks,hens,chicks);

hens++;

}

cocks++;

}

return0;

}

 

5、比较五个数的大小

#include

floatmax5(floatv,floatw,floatx,floaty,floatz)

{

floatmax;

if(v>=w&&v>=x&&v>=y&&v>=z)

max=v;

elseif(w>=v&&w>=x&&w>=y&&w>=z)

max=w;

elseif(x>=v&&x>=w&&x>=y&&x>=z)

max=x;

elseif(y>=v&&y>=w&&y>=x&&y>=z)

max=y;

elseif(z>=v&&z>=w&&z>=x&&z>=y)

max=z;

printf("这五个数中最大的数是%f\n\n",max);

}

 

main()

{

floata,b,c,d,e;

printf("请输入五个数:

\n");

scanf("%f%f%f%f%f",&a,&b,&c,&d,&e);

max5(a,b,c,d,e);/*调用函数max5()*/

return0;

}

6、查'a'的ASCII码

#include

intmain()

{

charch;

ch='a';

printf("%d\n\n",ch);

return0;

}

 

7、查看地址

#include"stdio.h"

main()

{

inta;

scanf("%d",&a);

printf("%d",&a);

return0;

}

 

8、从大到小输出

#include"stdio.h"

main()

{

intx,y,z;

intc;

printf("快鬼D输入三个数啦:

\n");

scanf("%d%d%d",&x,&y,&z);

if(y

{

c=y;y=z;z=c;

}

if(x

{

c=x;x=z;z=c;

}

if(x

{

c=x;x=y;y=c;

}

printf("从大到小排列:

%d%d%dYeah!

我得左喇!

!

\n\n",x,y,z);

return0;

}

 

9、从小到大排列两个数

#include

exchange(intx,inty)

{

inttemp;

temp=x;

x=y;

y=temp;

printf("Fromsmalltobigis:

%d,%d\n\n",x,y);

}

 

intmain()

{

inta,b;

printf("请输入两个数:

\n");

scanf("%d%d",&a,&b);

if(a>b)

exchange(a,b);

if(a

printf("Fromsmalltobigis:

%d,%d\n\n",a,b);

return0;

}

 

10、打印人民币符号

#include

intmain()

{

printf("Y\b=\n\n");

return0;

}

 

11、大小写互换

#include

main()

{

charunknown;

printf("请输入一个英文字母:

");

scanf("%c",&unknown);

if(unknown>='a'&&unknown<='z')

unknown=unknown-32;

elseif(unknown>='A'&&unknown<='Z')

unknown=unknown+32;

printf("这个小(大)写字母的大(小)写是:

%c\n\n",unknown);

return0;

}

 

12、对排序数列进行折半查找

/*例5.3*/

#include

#include

#defineN19

intmain()

{

inta[N]={2,5,6,7,8,13,15,17,19,21,23,25,26,27,28,35,41,52,63};

inttop=0,mid,bot=N-1,x;

printf("请输入要找的元素:

");

scanf("%d",&x);

printf("\n");

for(;top<=bot;)

{

mid=(top+bot)/2;

if(x==a[mid])

{

printf("找到的元素%d是:

a[%d]\n\n",x,mid);

exit(0);

}

elseif(x>a[mid])

top=mid+1;

else

bot=mid-1;

}

printf("没有找到该元素\n\n");

return0;

}

 

13、符号位变为数据的最高位和最高位变为符号位

#include

intmain()

{

unsignedshortus1=32767,us2=65535,us;

signedshortss=-7;

us=ss;

printf("

(1)ss=%d,us=%d\n",ss,us);

ss=us1;

printf("

(2)us1=%d,ss=%d\n",us1,ss);

ss=us2;

printf("(3)us2=%d,ss=%d\n\n",us2,ss);

return0;

}

 

14、赋予八进制数输出

#include

intmain()

{

unsignedcharc;

c=0362;

printf("%d\n\n",c);

return0;

}

 

15、汉诺塔游戏的递归算法

/*例4.10*/

#include

hanoi(intn,chara,charb,charc);

intmain()

{

intn;

printf("*************************************\n");

printf("*Programforsimulatingthesolution*\n");

printf("**ofthegameof'towerofHanoi'**\n");

printf("*************************************\n");

printf("Pleaseenterthenumberofdiskstobemoved:

");

scanf("%d",&n);

printf("\n");

hanoi(n,'a','b','c');

printf("\n\n");

return0;

}

 

hanoi(intn,chara,charb,charc)

{

if(n>0)

{

hanoi(n-1,a,c,b);

printf("Movedisc%dfrompile%cto%c\n",n,a,b);

hanoi(n-1,c,b,a);

}

}

 

16

(1)、计算平方根(原始方法)

#include

#include

intmain()

{

floatx,y;

printf("请输入一个正实数:

");

scanf("%f",&x);

y=sqrt(x);

printf("%f的平方根是%f\n\n",x,y);

return0;

}

 

(2)计算平方根

/******例3.19用牛顿迭代法******/

#include

#defineE00.00005/*定义误差限*/

doublesq_root(doublea)/*计算a的平方根*/

{

doublex;

x=a;/*赋初值*/

x=0.5*(x+a/x);/*所要建立的迭代关系式*/

while(fabs(x*x-a)>=E0)/*循环结构的控制条件(表示误差)*/

x=0.5*(x+a/x);

return(x);

}

 

#include

intmain()

{

doublef;

printf("请输入一个正实数:

");

scanf("%lf",&f);

printf("Therootof%fis%f\n\n",f,sq_root(f));

return0;

}

 

(3)计算平方根

(2)

/*例3.19*/

#include

#defineE00.00005

doublesq_root(doublea)

{

doublex;

x=a;

do

x=(x+a/x)*0.5;

while(fabs(x*x-a)>=E0);

return(x);

}

 

#include

intmain()

{

doublef;

printf("请输入一个正实数:

");

scanf("%lf",&f);

printf("Therootof%fis%f\n\n",f,sq_root(f));

return0;

}

 

17、计算人口增长

/******例3.17******/

#include

intmain()

{

doublem=13;

inti;

for(i=1;i<=10;i++)

{

m=m*(1+0.002);

printf("Populationafter%dyearsis%f\n",i,m);

}

return0;

}

 

18、交换两个变量的值

/*例4.8*/

#include

swap();/*说明函数*/

inta=3,b=5;/*声明外部变量*/

intmain()

{

swap();

printf("a=%d,b=%d\n\n",a,b);

return0;

}

 

swap()

{

intc;/*声明自动变量*/

c=a;a=b;b=c;/*交换变量的值*/

}

 

19、九九乘法表

#include

intmain()

{

inti,j;

for(i=1;i<=9;i++)

printf("%4d",i);

printf("\n");

for(i=1;i<=39;i++)

printf("%c",'-');

printf("\n");

for(i=1;i<=9;i++)

{

for(j=1;j<=9;j++)

printf("%4d",i*j);

printf("\n");

}

return0;

}

 

20、累加和的值

#include

intsigma(intn)

{

inti,sum=0;

for(i=0;i<=n;i++)

{

sum=sum+i;

}

returnsum;

}

 

intmain()

{

intm,total;

printf("输入m的值,将输出前m个正整数相加的和:

\n");

scanf("%d",&m);

total=sigma(m);

printf("这前m个正整数累加和的值是%d\n\n",total);

return0;

}

 

21、冒泡排序法

/*例5.4冒泡排序法*/

#include

#defineN8

intmain()

{

inta[N]={9,8,3,7,5,2,6,1};

inti,j,temp;

/*冒泡排序*/

for(j=0;j

{

for(i=0;i

if(a[i]>a[i+1])

{

temp=a[i];

a[i]=a[i+1];

a[i+1]=temp;

}

}

/*输出结果*/

printf("\n排序结果:

");

for(i=0;i

printf("%3d",a[i]);

printf("\n\n");

return0;

}

 

22、求10!

#include

main()

{

inti,sum=1;

for(i=1;i<=10;i++)

sum=sum*i;

printf("10!

=%d\n\n",sum);

}

 

23、求一个数的阶乘

#include

#include

longrfact(intn)

{

if(n<0)

{

printf("Negativeargumenttofact!

\n\n");

exit(-1);

}

if(n<=1)

return

(1);

else

return(n*rfact(n-1));

}

 

intmain()

{

inta;

printf("Inputanumber:

");

scanf("%d",&a);

printf("%d!

=%ld\n\n",a,rfact(a));

return0;

}

 

24、求一个数的正弦值

#include

#include

main()

{

floatx;

x=sin(0.19199);

printf("%f\n\n",x);

}

 

25、求圆的面积和周长

#include

#definePI3.141592654/*定义符号常数*/

#defineR2.0

 

doublecalcuArea(doubler)/*计算圆面积*/

{

return(PI*r*r);

}

 

doublecalcuCircum(doubler)/*计算圆周长*/

{

return(2.0*PI*r);

}

 

intmain()

{

printf("area=%f",calcuArea(R));

printf("\tcircumference=%f\n\n",calcuCircum(R));

return0;

}

 

26、使用带参数的宏定义计算圆周长和面积

#include

 

#definePI3.14159265

#defineCIRCUM(r)(2.0*PI*(r))

#defineAREA(r)(PI*(r)*(r))

 

intmain()

{

doubler;

printf("Inputaradius:

");

scanf("%lf",&r);

printf("Thecircumis%fandareais%f\n\n",CIRCUM(r),AREA(r));

return0;

}

 

27、使用宏定义的圆周长和面积的计算

#include

 

#definePI3.14159265

#defineRADIUS1.0

#defineCIRCUMreturn(2.0*PI*RADIUS);

#defineAREAreturn(PI*RADIUS*RADIUS);

 

doublecircum()

{

CIRCUM

}

 

doublearea()

{

AREA

}

 

intmain()

{

printf("Thecircumis%fandareais%f\n\n",circum(),area());

return0;

}

 

28、输出100-200之间的所有素数

/*例3.26*/

#include

intmain()

{

intm,n,flag;

printf("Theprimersfrom100to200is:

\n");

for(n=101;n<=200;n+=2)/*仅测试100-200之间的奇数*/

{

flag=1;/*设置标志*/

for(m=2;m<=n/2;m++)

{

if(n%m==0)

{

flag=0;/*改变标志*/

break;/*跳出内层循环结构*/

}

}

if(flag==0)/*判断标志*/

continue;/*跳出输出语句而进入下一周期*/

printf("%d",n);

}

printf("\n\n");

return0;

}

 

29、输出字符≥

#include

intmain()

{

charch;

ch='\076';/*将八进制数076的ASCII字符赋给ch*/

printf("%c\n\n",ch);

return0;

}

 

30、输出最大的数

#include"stdio.h"

main()

{

floatx,y,z;

floatm,n;

printf("唔该输入三个数吖老细:

\n");

scanf("%f%f%f",&x,&y,&z);

if(x>y)

m=x;

else

m=y;

if(m>z)

n=m;

printf("这三个数中最大的数是%f\n\n",n);

}

 

31、输入的字符原样输出

/*例3.21*/

#include

intmain()

{

intc;

while((c=getchar())!

=EOF)

putchar(c);

return0;

}

 

32、输入多个数后输出最大者

/*例3.20*/

#include

#defineFLAG-32768

intmain()

{

intmax,n;

printf("Inputanumber:

");

scanf("%d",&n);

max=n;

while(n!

=FLAG)

{

printf("Inputnextnumber:

");

scanf("%d",&n);

if(n>max)

max=n;

}

printf("Themaxis%d\n\n",max);

return0;

}

 

33、输入多个数后输出最大者

(2)

/*例3.20*/

#include

#defineFLAG-32768

intmain()

{

intmax=-32768,n;

do

{

printf("Inputanumber:

");

scanf("%d",&n);

if(n>max)

max=n;

}while(n!

=FLAG);

printf("Themaxis%d\n\n",max);

return0;

}

 

34、输入正数以0作为结束标志并求正数的和

#include

main()

{

inti,sum=0;

printf("请输入一批正数并以0结束:

\n");

do{scanf("%d",&i);

sum=sum+i;}

while(i!

=0);

printf("这些正数之和为%d\n\n",sum);

}

 

35、顺序查找一个学

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 工作范文 > 其它

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1