C语言笔记中的程序Word文件下载.docx
《C语言笔记中的程序Word文件下载.docx》由会员分享,可在线阅读,更多相关《C语言笔记中的程序Word文件下载.docx(19页珍藏版)》请在冰豆网上搜索。
=99)
s=s+i-j;
i=i+4;
j=j+4;
方法二:
(思路:
正负变换,看成-1的次方)
math.h>
s=0,i=0,j=1;
while(j<
s=s+pow(-1,i)*j;
i=i+1;
j=j+2;
方法三:
(引入fh=-fh达到改变符号的作用)
ints,i,fh;
s=0,i=1,fh=1;
s=s+fh*i;
i=i+2;
fh=-fh;
输出26个英文字母:
charsex;
sex=65;
while(sex<
=90)
printf("
%c"
sex);
sex=sex+1;
输入2个数,输出大的:
inta,b,max;
a="
scanf("
%d"
a);
b="
b);
max=a;
if(max<
b)
max=b;
max);
输入成绩,得出等级:
if结构
main()
doublecj;
inty;
cj="
%lf"
cj);
y=(int)(cj/10);
if(y==10||y==9)
优\n"
elseif(y==8)
良\n"
elseif(y==7)
中\n"
elseif(y==6)
及格\n"
else
不及格\n"
switch结构
doublex;
输入成绩:
x);
switch((int)(x/10))
case10:
printf("
break;
case9:
case8:
case7:
case6:
default:
比较5个数的大小,按从小到大输出:
doublea,b,c,d,e,t;
inti;
输入5个数字:
%lf,%lf,%lf,%lf,%lf"
a,&
b,&
c,&
d,&
e);
i=1;
=4)
if(a>
{t=a,a=b,b=t;
if(b>
c)
{t=b,b=c,c=t;
if(c>
d)
{t=c,c=d,d=t;
if(d>
e)
{t=d,d=e,e=t;
按从小到大的顺序输出:
%lf,%lf,%lf,%lf,%lf\n"
a,b,c,d,e);
任意输入2个正整数,求其最大公约数和最小公倍数:
inta,b,i,t;
for(i=1;
i<
=a;
i++)
if(a%i==0&
b%i==0)
t=i;
t);
a*b/t);
inta,b,i;
for(i=b;
i>
=1;
i--)
break;
i);
a*b/i);
输入一个6位邮政编码,输出各个数位上的数字:
intx,a,i;
任意输入一个6位的邮政编码:
for(i=1000000;
i=i/10)
a=x/i%10;
%d"
a);
for(i=5;
=0;
a=x/(int)(pow(10,i))%10;
输入一个正整数,判断是不是质数:
intx,i;
输入一个正整数:
while(x<
=0)
你输入的一个非正整数,请重新输入:
for(i=2;
=x-1;
if(x%i==0)
else
continue;
if(i==x)
是质数\n"
不是质数\n"
计算并输出1——1000中的质数:
intx,i,n;
n=0;
for(x=1;
x<
=999;
x++)
for(i=2;
{if(x%i==0)
break;
else
continue;
}
if(i==x)
{n++;
printf("
%3d是质数"
x);
}
质数有%d个\n"
n);
输出九九乘法表:
inti,j;
for(j=1;
j<
=9;
j++)
for(i=1;
=j;
%dX%d=%2d"
i,j,i*j);
\n"
1,1,3,5,8,13……Fibonacci数列:
inta[40]={1,1},i;
=39;
a[i]=a[i-2]+a[i-1];
for(i=0;
a[i]);
任意输入一个3X4的矩阵,求得其转置矩阵:
inta[3][4],b[4][3],i,j;
=2;
for(j=0;
=3;
a[i][j]);
b[j][i]=a[i][j];
for(i=0;
%5d"
b[j][i]);
杨辉三角:
inta[10][10],i,j,k;
if(j==0||i==j)
a[i][j]=1;
a[i][j]=a[i-1][j]+a[i-1][j-1];
for(k=1;
k<
=9-i;
k++)
"
=i;
%4d"
a[i][j]);
求一个正整数的阶乘:
doublef(doublen)
doubley;
if(n>
=2)
y=n*f(n-1);
elseif(n==1)
y=1;
return(y);
doubley,n;
n);
y=f(n);
%.0lf!
=%lf\n"
n,y);
任意输入机电01-03共98个同学的程序设计期末成绩,分类统计5个等级的同学数量和所占百分比,再按照从低分到高分依次输出。
(要求带入学号处理)
doublejx[98],tj[5];
intNO[98],i;
=4;
tj[i]=0;
=97;
NO[i]=13110001+i;
输入学号是%d同学的成绩:
NO[i]);
jx[i]);
if(jx[i]>
=90&
jx[i]<
tj[0]++;
=80&
90)
tj[1]++;
=70&
80)
tj[2]++;
=60&
70)
tj[3]++;
=0&
60)
tj[4]++;
100-90分数段有%d个人,所占比例为%lf%%\n"
tj[0],tj[0]/98*100);
89-80分数段有%d个人,所占比例为%lf%%\n"
tj[1],tj[1]/98*100);
79-70分数段有%d个人,所占比例为%lf%%\n"
tj[2],tj[2]/98*100);
69-60分数段有%d个人,所占比例为%lf%%\n"
tj[3],tj[3]/98*100);
59-0分数段有%d个人,所占比例为%lf%%\n"
tj[4],tj[4]/98*100);
j++)/*此j代表比较的轮数*/
=96;
i++)/*此代表每一轮比较时候>
运算符左边对象标号范围*/
{
if(jx[i]>
jx[i+1])
{
t=jx[i];
jx[i]=jx[i+1];
jx[i+1]=t;
tt=NO[i];
NO[i]=NO[i+1];
NO[i+1]=tt;
输出从低分到高分的所有成绩\n"
输出学号是%d同学的成绩:
%lf\n"
NO[i],jx[i]);
}
上述比较过程可以换为以下代码
for(j=6;
j>
j--)
}
求一个FIBONACCI数列的前40项。
已知第1项和第2项的值为1,从第3项开始每项的值等于其前2(ˇˍˇ)项之和。
任意输入机电01-03共98个同学的程序设计期末成绩,计算出全班该门科目的平均分,输出与平均分最接近的同学的学号和成绩。
doublejx[98],s,ave,cha[98];
s=0;
s=s+jx[i];
ave=s/98;
全专业该门科目的平均成绩是:
ave);
cha[i]=fabs(jx[i]-ave);
min=cha[0];
if(min>
cha[i])
min=cha[i];
if(min==cha[i])
输出与平均值最接近的同学的学号%d和成绩%lf\n"
水仙花数:
(P99.11)
inti,j,k;
for(j=0;
for(k=0;
{if(i*100+j*10+k==i*i*i+j*j*j+k*k*k)
所有水仙花数:
i*i*i+j*j*j+k*k*k);
台阶问题(P99.12)
inti;
for(i=1;
;
if(i%2==1&
i%3==2&
i%4==3&
i%5==4&
i%6==5&
i%7==0)
台阶数:
百钱百鸡问题(P99.13)
inti,j,k,t;
t=0;
for(i=0;
=20;
{for(j=0;
=33;
for(k=0;
=100;
{if(k%3==0)
if(i+j+k==100&
5*i+3*j+k/3==100)
t++;
排列大小的程序: