C程序自编.docx

上传人:b****3 文档编号:5455411 上传时间:2022-12-16 格式:DOCX 页数:9 大小:16.33KB
下载 相关 举报
C程序自编.docx_第1页
第1页 / 共9页
C程序自编.docx_第2页
第2页 / 共9页
C程序自编.docx_第3页
第3页 / 共9页
C程序自编.docx_第4页
第4页 / 共9页
C程序自编.docx_第5页
第5页 / 共9页
点击查看更多>>
下载资源
资源描述

C程序自编.docx

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

C程序自编.docx

C程序自编

1.双星号(for循环的嵌套)

#include

main()

{inti,j;

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

{for(j=1;j<=4-i;j++)

printf("");

for(j=1;j<=2*i-1;j++)

printf("*");

for(j=1;j<=7-2*i;j++)

printf("");

for(j=1;j<=2*i-1;j++)

printf("*");

printf("\n");}

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

printf("*");

printf("\n");

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

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

printf("");

for(j=1;j<=7-2*i;j++)

printf("*");

for(j=1;j<=2*i-1;j++)

printf("");

for(j=1;j<=7-2*i;j++)

printf("*");

printf("\n");}}

2.求2000--------------------~3000间的闰年,每十个一行输出

#include

main()

{intyear,n;

n=0;

for(year=2000;year<=3000;year++)

{if(year%4==0&&year%100!

=0||year%400==0)

{printf("%d,",year);

n=n+1;

if(n%10==0)

printf("\n");}}}

3.求1~100的和

#include

main()

{inti,s;

s=0;

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

s=s+i;

printf(“s=%d\n”,s);}

4.求1+(1+2)+(1+2+3)+(1+2+3+4)……前n项和

#include

main()

{ints,i,j,n;

s=0;j=0;

scanf(“%d”,&n);

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

{j=j+i;

s=s+j;}

printf(“s=%d\n”,s);}

5.输入三个数,输出它们的最大值(自定义函数并调用)

#include

intmax(intx,inty,intz);

main()

{inta,b,c,d;

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

d=max(a,b,c);

printf(“d=%d\n”,d);}

intmax(intx,inty,intz)

{inth;

h=x;

if(h<=y)h=y;

if(h<=z)h=z;

returnh;}

6.对账文件(日记账)

#include

main()

{doublei,s,J,D;

J=0.0;

D=0.0;

scanf("%lf%lf",&i,&s);

while(i!

=0)

{s=s+i;

printf("余额:

%.2f\n",s);

if(i>0)J=J+i;

elseD=D+i;

scanf("%lf",&i);}

printf("J=%.2f,D=%.2f\n",J,D);

}

7.100元买百羊,小羊1元3只,中羊10元3只,大羊5元1只

#include

main()

{inta,b,c;

for(a=0;a<=20;a++)

for(b=0;b<=33;b++)

for(c=0;c<=90;c++)

if((a+b+c==100)&&(15*a+10*b+c==300))

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

9.goto语句(与循环语句有相同的效果)

#include

main()

{inta;

cong:

scanf("%d",&a);

if(a>=7)

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

gotocong;}

10.输出26个大写字母与相应的ASCII码值

#include

main()

{charch;inti;

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

{ch=i+65;

if(i%2==0)printf("\n");

printf("c=%c  ASCII=%d",ch,ch);

}putchar('\n');}

11.利用指针比较两个数大小,并输出较小数。

#include

main()

{inta,b,min,*pa,*pb,*pmin;

pa=&a;pb=&b;pmin=&min;

scanf("%d%d",pa,pb);

*pmin=*pa;

if(*pmin>*pb)*pmin=*pb;

printf("%d\n",min);}

12. 编写程序,定义一个15个元素的数组,并编写函数分别完成以下操作:

1.调用库函数中的随机函数给数组元素赋0—49的随机数;2.输出数组元素中的值;3.按顺序对每3个数求一个和数,并传回主函数;4,。

最后输出和值。

#include

#include

#defineM15

#defineN3

voidgetrand(int*,int);

voidgetave(int*,int*,int);

voidpriarr(int*,int);

main()

{intx-,w[M/N]={0};

getrand(x,M);

printf("number:

\n");

priarr(x,M);

getave(x,w,M);

printf("number:

\n");

priarr(w,M/N);}

voidgetrand(int*a,intn)

{inti;

for(i=0;i

voidgetave(int*a,int*b,intn)

{inti,j,sum;

for(sum=0,i=0,j=0;i<=n;i++)

{sum+=a[i];if((i+1)%3==0)

{b[j]=sum;sum=0;j++;}}}

voidpriarr(int*a,intn)

{inti;for(i=0;i

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

if((i+1)%5==0)printf("\n");}

printf("\n");}

13.编写函数,要求如(输入**AD*HH**YY***输出ADHHYY***)主函数部分不能动。

#include

voidfun(char*a,char*b)

{inti,j=0;

      for(i=0;a+i<=b;i++)

if(a[i]!

='*')

{a[j]=a[i];j++;}

for(;a[i]=='*';i++)

{a[j]=a[i];j++;}

for(;a[i]=='\0';i++){a[j]='\0';j++;}}

voidmain()

{chars[81],*t;

printf("Enterastring:

\n");

gets(s);t=s;

while(*t)t++;

t--;

while(*t=='*')t--;

fun(s,t);

printf("Thestringafterdeleted:

\n");puts(s);}

14.调用随机函数为5阶方阵赋100以内的整数,输出该矩阵,然后输出它的转置矩阵。

#include

#include

#defineM5

voidfun(int(*a)-,int);

voidman(int(*a)-,int);

voidqan(int(*a)-,int);

main()

{inta,n;

n=M;

printf("%dnumber:

\n",n);

fun(a,n);

qan(a,n);

printf("%dnumber:

\n",n);

man(a,n);

qan(a,n);}

voidfun(int(*a)-,intn)

{intk,j;

for(k=0;k

for(j=0;j

a[k][j]=rand()%100;}

voidman(int(*a)-,intn)

{intk,j,t;

for(k=0;k

for(j=0;j

{t=a[k][j];a[k][j]=a[j][k];a[j][k]=t;}}

voidqan(int(*a),intn)

{intk,j,i=0;

for(k=0;k

for(j=0;j

{printf("%5d",a[k][j]);i++;

if(i%M==0)printf("\n");}printf("\n");}

15.自定义函数比较字符串大小

#include

scomp(char*s1,char*s2)

{inti=0;

while(s1[i]==s2[i]&&s1[i])i++;

return(s1[i]-s2[i]);}

main()

{charstr1[]="ABC",str2[10];

gets(str2);

if(scomp(str1,str2)>0)printf("str1>str2\n");

elseif(scomp(str1,str2)<0)printf("str1

elseprintf("str1=str2\n");}

16.输出九九乘法表(二维数组的运用)

#include

#defineM9

voidfun(int(*a)-);

main()

{inta-,i;

printf("**AMULTIPLICATIONTABLE**");

printf("\n    ");

for(i=1;i<=M;i++)printf("  (%d)",i);

printf("\n-------------------------------------------------\n");

fun(a);

printf("\n-------------------------------------------------\n");}

voidfun(int(*a)-)

{inti,j;

for(i=0;i

for(j=0;j

a[i][j]=(i+1)*(j+1);

for(i=0;i

for(j=0;j

{if(j==0)printf("(%d)",i+1);

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

if(j==M-1)printf("\n");}}

17.编写程序输出杨辉三角形(7阶)*注意if后的括号中的是==而不是=

#include

#defineM10

voidfun(int(*a)-,intn)

{inti,j;

for(i=0;i

{a[i][i]=1;a[i][0]=1;}

for(i=2;i

for(j=1;j

a[i][j]=a[i-1][j-1]+a[i-1][j];}

voidman(inta[]-,intn)

{inti,j;

printf("杨辉三角形:

\n");

for(i=0;i

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

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

if(i==j)printf("\n");}

printf("\n");}

main()

{inta-,n=7;

fun(a,n);

man(a,n);}

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

当前位置:首页 > 医药卫生 > 基础医学

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

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