C语言简单的23 个例子.docx

上传人:b****8 文档编号:10712785 上传时间:2023-02-22 格式:DOCX 页数:21 大小:17.46KB
下载 相关 举报
C语言简单的23 个例子.docx_第1页
第1页 / 共21页
C语言简单的23 个例子.docx_第2页
第2页 / 共21页
C语言简单的23 个例子.docx_第3页
第3页 / 共21页
C语言简单的23 个例子.docx_第4页
第4页 / 共21页
C语言简单的23 个例子.docx_第5页
第5页 / 共21页
点击查看更多>>
下载资源
资源描述

C语言简单的23 个例子.docx

《C语言简单的23 个例子.docx》由会员分享,可在线阅读,更多相关《C语言简单的23 个例子.docx(21页珍藏版)》请在冰豆网上搜索。

C语言简单的23 个例子.docx

C语言简单的23个例子

例1.1:

输入两个数,输出其中的最大者

方法一:

#includestdio.h

intmain()

{

inta,b,max;

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

if(a>b)max=a;

elsemax=b;

printf(%d\n,max);

return0;

}

方法二:

#includestdio.h

intmain()

{

intm,n;

scanf(%d%d,&m,&n);

printf(%d\n,(m>n)?

m:

n);

return0;

}

例1.2:

输入三个数,输出其最大者

#includestdio.h

intmain()

{

inta,b,c;

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

printf(%d\n,a>b?

(a>c?

a:

c):

(b>c?

b:

c));

return0;

}

例2:

求一个数的绝对值

方法一:

#includestdio.h

intmain()

{

inta,absa;

printf(enteronenumber:

\n);

scanf(%d,&a);

if(a<0)

absa=-a;

else

absa=a;

printf(|%d|=%d\n,a,absa);

return0;

}

方法二:

#includestdio.h

#includemath.h

intmain()

{

inta;

scanf(%d,&a);

printf(%d\n,abs(a));

return0;

}

例3:

两个数的四则运算

#includestdio.h

intmain()

{

doublex,y;

charop;

牰湩晴尨输入运算式:

\n);

scanf(%lf%c%lf,&x,&op,&y);

switch(op)

{

case'+':

printf(%.2f%c%.2f=%.2f\n,x,op,y,x+y);

break;

case'-':

printf(%.2f%c%.2f=%.2f\n,x,op,y,x-y);

break;

case'*':

printf(%.2f%c%.2f=%.2f\n,x,op,y,x*y);

break;

case'/':

if(y==0)

printf(error!

\n);

else

printf(%.2f%c%.2f=%.2f\n,x,op,y,x/y);

break;

default:

printf(expressioniserror!

\n);

}

return0;

}

不纳入计算-1结束输入,且-1个数的平均数,以N:

求4例

#includestdio.h

intmain()

{

intn=0;

doublea,sum=0;

while

(1)

{

scanf(%lf,&a);

if(a==-1)break;

sum+=a;

n++;

}

printf(%.2f\n,sum/n);

return0;

}

例5:

打印出九九乘法口诀

#includestdio.h

intmain()

{

inti,j;

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

{for(j=i;j<10;j++)

{

printf(%dx%d=%-4d,i,j,i*j);

}

printf(\

);

}

return0;

}

例6:

大小写转换,以数字0结束输入

#includestdio.h

intmain()

{

charch;

while

(1)

{

scanf(%c,&ch);

if(ch=='0')break;

if(ch>='A'&&ch<='Z')

printf(%c\n,ch+32);

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

printf(%c\n,ch-32);

}

return0;

}

例7:

打印菱形图案

#includestdio.h

intmain()

{

inti,j,k;

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

{

for(j=0;j<=9-i;j++)

printf();

for(k=0;k<=2*i;k++)

printf(%c,3);

printf(\

);

}

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

{

for(j=0;j<=i+1;j++)

printf();

for(k=0;k<=16-2*i;k++)

printf(%c,3);

printf(\

);

}

return0;

}

例8:

求100以内所有的素数

#includestdio.h

#includemath.h

main()

{

intm,i,k,t=0,j=1,n=0;

printf(=:

j);

for(m=2;m<=300;m=m+1)

{

k=(int)sqrt(m);

for(i=2;i<=k;i++)

if(m%i==0)

break;

if(i>=k+1)

{

printf(],m);

t++;

if(t%4==0)printf(\

=:

++j);

}

}

printf(\

);

return0;

}

例9:

输出Fibonacci数列的前20项及其和

(Fibonacci数列:

1,1,2,3,5,8,13,21···)

#includestdio.h

intmain()

{

inti,sum=0,f[20]={1,1};

for(i=2;i<20;i=i+1)

f[i]=f[i-1]+f[i-2];

for(i=0;i<20;i=i+1)

{

printf(m,f[i]);

sum=sum+f[i];

if((i+1)%4==0)printf(\

);

}

printf(sum=%d\n,sum);

return0;

}

例10:

输出各位数均不相同的三位数,及其个数

#includestdio.h

intmain()

{

intn,i,j,k;

n=0;

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

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

if(k!

=i)

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

if(j!

=i&&j!

=k)

{

n++;

printf(%d,100*i+10*j+k);

if(n_x0010_==0)printf(\

);

}

printf(\

);

牰湩晴尨共%d个数\n,n);

return0;

}

例11:

输入一个数,求其阶乘

#includestdio.h

intmain()

{

inti,s,n;

printf(

=);

scanf(%d,&n);

i=1;

s=2;

while(i<=n)

{

s=s*i;

i=i+1;

}

printf(%d!

=%d\n,n,s);

return0;

}

例12:

将一个数分解质因数#includestdio.h

intmain()

{

inti,n;

printf(pleaseinputnumbers:

\n);

for(;;)

{

scanf(%d,&n);

printf(%d=,n);

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

{

while(n!

=1)

{

if(n%i==0)

{printf(%d*,i);

n=n/i;

}

elsebreak;

}

}

if(n==1)printf(\\n);

elseprintf(%d\n,n);

}

return0;

}

例13:

汉诺塔游戏

#include

voidmove(chara,charb)

{

staticinti=0;

printf(%c-->%c%d\n,a,b,++i);

}

voidhanoi(intm,chara,charb,charc)

{

if(m==1)move(a,c);

else

{

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

move(a,c);

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

}

}

intmain()

{

intm;

牰湩晴尨请输入方块数:

);

scanf(%d,&m);

hanoi(m,'A','B','C');

return0;

}

14例:

求一句话中单词的个数#include

intmain()

{

chars[100],c;

inti,temp=0,num=0;

gets(s);

for(i=0;(c=s[i])!

='\0';i++)

{

if(c=='')temp=0;

elseif(temp==0)

{

num=num+1;

temp=1;

}

}

printf(%d\n,num);

return0;

}

例15:

水仙花数(三位数,各位数字的三次方之和等于该数)

方法一:

#includestdio.h

intmain()

{

inti,j,z,n;

for(n=100;n<1000;n++)

{

i=n/100;

j=n/10-10*i;

z=n_x0010_;

if(n==i*i*i+j*j*j+z*z*z)

printf(],n);

}

printf(\

);

return0;

}

方法二:

#includestdio.h

intmain()

{

inti,j,k;

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

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

for(k=0;k<=9;k++)

if(i*i*i+j*j*j+k*k*k==100*i+10*j+k)

printf(M,100*i+10*j+k);

printf(\

);

return0;

}

例16:

字符串b在字符串a中出现的次数,b中可以用“?

”代替未知字母

#include

#defineN1000

intmain()

{

inti,j,m,n,k,x=0;

chara[N],b[N];

gets(a);

gets(b);

for(i=0;a[i]!

='\0';i++);

for(j=0;b[j]!

='\0';j++);

m=i--;

n=j--;

for(i=0;i<=m-n+1;i++)

{

k=0;

for(j=0;j

if(b[j]=='?

'){k=1;continue;}

elseif(a[i+j]==b[j])k=1;

elsek=0;

if(k)x++;

}

printf(%d\n,x);

return0;

}

例:

冒泡排序17#includestdio.h

#defineN10

intmain()

{

inti,j,t,max,a[N]={1,1,2,3,15,28,133,21,34,777};

intx;

牰湩晴尨初始数组元素为:

);

for(i=0;i

printf(%d,a[i]);

printf(\

);

for(i=0;i

for(j=0;j

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

{t=a[j];a[j]=a[j+1];a[j+1]=t;}

牰湩晴尨从小到大排序后的数组为:

);

for(i=0;i

printf(=,a[i]);

return0;

}

选择排序18例

#includestdio.h

#defineN10

intmain()

{

inti,t,j,max,a[N]={1,1,2,3,15,28,133,21,34,777};

intx;

牰湩晴尨初始数组元素为:

);

for(i=0;i

printf(%d,a[i]);

printf(\

);

for(i=0;i

{

t=i;

for(j=i+1;i

if(a[j]

if(t!

=i){x=a[t];a[t]=a[i];a[i]=x;}

}

牰湩晴尨从小到大排序的数组为:

);

for(i=0;i

printf(%d,a[i]);

printf(\

);

return0;

}

数组元素的插入19例#includestdio.h

#defineN10

intmain()

{

inti,j,a[N]={1,1,2,3,15,28,133,21,34};

intx;

牰湩晴尨初始数组元素为:

);

for(i=0;i

printf(%d,a[i]);

printf(\

);

牰湩晴尨请输入要插入的下标位置(0-%d):

N-1);

scanf(%d,&i);

牰湩晴尨请输入要插入的数:

);

scanf(%d\n,x);

for(j=N-1;j>i;j--)

a[j]=a[j-1];

a[i]=x;

牰湩晴尨插入元素之后的数组为:

);

for(i=0;i

printf(M,a[i]);

printf(\

);

return0;

}

例20:

数组元素的删除

#includestdio.h

#defineN10

intmain()

{

inti,j,a[N]={1,1,2,3,15,28,133,21,34,88};

intx;

牰湩晴尨初始数组元素为:

);

for(i=0;i

printf(%d,a[i]);

printf(\

);

牰湩晴尨请输入要删除的下标位置(0-%d),N-1);

scanf(%d,&i);

for(j=i+1;j

a[j-1]=a[j];

牰湩晴尨删除后的数组为:

);

for(i=0;i

printf(M,a[i]);

printf(\

);

return0;

}

数组中的最大值例21#includestdio.h

#defineN10

intmain()

{

inti,max,a[N]={1,1,2,3,15,28,133,21,34,777};

intx;

牰湩晴尨初始数组元素为:

);

for(i=0;i

printf(%d,a[i]);

printf(\

);

max=a[0];

for(i=1;i

if(a[i]>=max)max=a[i];

牰湩晴尨数组的最大值是%d\n,max);

return0;

}

例22:

数组中最大值的下标

#includestdio.h

#defineN10

intmain()

{

inti,max,a[N]={1,1,2,3,15,28,133,21,34,777};

intx;

牰湩晴尨初始数组元素为:

);

for(i=0;i

printf(%d,a[i]);

printf(\

);

max=0;

for(i=1;i

if(a[i]>=a[max])max=i;

牰湩晴尨数组的最大值的下标是%d\n,max);

return0;

}

查找数组中特定的元素例23#includestdio.h

#defineN10

intmain()

{

inti,j,t,a[N]={1,1,2,3,15,28,133,21,34,88};

intx;

牰湩晴尨初始数组元素为:

);

for(i=0;i

printf(%d,a[i]);

printf(\

);

牰湩晴尨请输入要查找的元素:

);

scanf(%d,&x);

t=-1;

for(i=0;i

if(a[i]==x)t=i;

晩?

?

?

?

瀠楲瑮?

数组中没有该数!

\n);

汥敳瀠楲瑮?

该数位于数组的第%d个下标\n,t);

return0;

}

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

当前位置:首页 > 解决方案 > 学习计划

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

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