c程序文档格式.docx
《c程序文档格式.docx》由会员分享,可在线阅读,更多相关《c程序文档格式.docx(23页珍藏版)》请在冰豆网上搜索。
a);
//switch(a/10)
//{
//case9:
printf("
A"
break;
//case8:
B"
break;
//case7:
C"
//case6:
D"
//default:
E"
//}
//}
inta;
puts("
scanf("
switch(a/10)
case9:
putchar('
case8:
B'
case7:
C'
case6:
D'
default:
E'
3.定积分的求解
//矩形法
floatfsin(float);
floatcount(floata,floatb,intn,float(*p)(float));
floata,b;
intn;
请输入上线和下线和分数"
%f%f%d"
a,&
b,&
n);
%f"
count(a,b,n,fsin));
floatcount(floata,floatb,intn,float(*p)(float))
inti;
floatsum=0;
for(i=1;
i<
=n;
i++)
sum+=(*p)(a+((b-a)/n)*i)*(b-a)/n;
returnsum;
floatfsin(floata)
floatf;
returnf=sin(a);
4.二分法
floatfind(floatx,floaty,float(*p)(float))
floatk,f;
while(fabs(x-y)>
=1e-5)
k=(x+y)/2;
f=(*p)(k);
if(f*(*p)(x)>
0)
x=k;
else
y=k;
returnk=(x+y)/2;
floatcheck(float);
float(*p)(float);
floata,b,flag=1,c,d;
floatk;
p=check;
while(flag)
请输入第一和最后一个数"
%f%f"
b);
c=(*p)(a);
d=(*p)(b);
if(c*d<
flag=0;
k=find(a,b,p);
%f"
k);
}
floatcheck(floata)
f=a*a*a*2-4*a*a+3*a-6;
returnf;
5.菲波拉数列求和
inta,b,c,count,i=3,sum=0;
a=1;
b=1;
c=a+b;
请输入要求的次数值,请大于3"
count);
sum=a+b+c;
while(i<
count)
a=b;
b=c;
c=a+b;
sum+=c;
i++;
sum=%d"
sum);
6.哥德巴猜想
#include<
stdio.h>
string.h>
math.h>
intcheck(intn);
voidcheck1(intn);
voidcheck2(intn);
intm;
请输入数"
m);
if(m%2)check2(m);
elsecheck1(m);
voidcheck1(intn)
inti,j;
for(i=2;
=n-1;
for(j=i;
j<
j++)
if((i+j==n)&
check(i)&
check(j))
printf("
%d%d\n"
i,j);
voidcheck2(intn)
inti,j,k;
for(k=i;
k<
k++)
if((i+j+k==n)&
check(j)&
(check(k)))
%d%d%d\n"
i,j,k);
intcheck(intn)
if(n%2==0)
return0;
else
=(int)(sqrt(n));
if(!
(n%i))
return0;
break;
return1;
7.加法器和累乘器
#defineN5
inta[N],sum=0,sum1=1,i;
for(i=0;
N;
scanf("
a+i);
sum+=a[i];
sum1*=a[i];
%d%d"
sum,sum1);
8.冒泡法
#defineN10
inta[N];
inti=0,j,d;
N-1;
for(j=0;
N-i-1;
if(a[j]<
a[j+1])
{
d=a[j];
a[j]=a[j+1];
a[j+1]=d;
}
printf("
%d"
a[i]);
9.牛顿迭代法
floatfind(floaty,float(*p)(float),float(*q)(float))
//floatk;
//do
//{k=y;
//y=k-(*p)(k)/(*q)(k);
//}while(fabs(k-y)>
=1e-5);
//returny;
do
k=y;
y=k-(*p)(k)/(*q)(k);
}while(fabs(k-y)>
returny;
floatcheck1(floata);
float(*q)(float);
floatb,flag=1;
q=check1;
请输入一个数"
k=find(b,p,q);
floatcheck1(floata)
{floatf;
f=6*a*a-8*a+3;
10.判别键盘输入的数据的类别
chars[N];
inti=0,count1=0,count2=0,count3=0,count4=0;
请输入字符数组"
gets(s);
while(s[i]!
if((s[i]>
(s[i]<
count1++;
if((s[i]>
count2++;
if((s[i]>
0'
9'
count3++;
count4++;
%d%d%d%d"
count1,count2,count3,count4);
11.判别闰年
if((!
(a%4)&
(a/100))||((!
(a%4))&
(!
(a%400))))
闰年"
不是闰年"
12求100以内的素数
inta[101],i,j;
=100;
a[i]=i;
a[1]=0;
=99;
for(j=i+1;
if((a[i]!
=0)&
(a[j]!
=0))
if(a[j]%a[i]==0)
a[j]=0;
if(a[i]!
=0)
printf("
13.求矩阵的和和积
#defineN3
#defineM3
inta[N][M],b[N][M],C[N][M]={0},D[N][M]={0};
inti=0,j=0,sum=0,k;
注意矩阵和与积的要求"
请输入第一个矩阵"
M;
scanf("
a[i]+j);
请输入第二个矩阵"
b[i]+j);
//输入可以合并到一起
开始计算和"
C[i][j]=a[i][j]+b[i][j];
开始计算积"
sum=0;
for(k=0;
sum+=a[i][k]*b[k][j];
D[i][j]=sum;
*(C[i]+j));
putchar(10);
{for(j=0;
*(D[i]+j));
14.求两个数的最大公倍数和最小公约数
//辗转相除法
//intx,y,r,a,b;
请输入x和y"
%d%d"
x,&
y);
///a=x;
//b=y;
//if(x<
y)
//r=x,x=y,y=x;
//r=x%y;
//while(r)
//x=y;
//y=r;
//r=x%y;
//printf("
最大公约数:
%d最小公倍数:
%d\n"
y,a*b/y);
intx,y,r,a,b;
%d%d"
a=x;
b=y;
if(x>
r=x,x=y,y=r;
r=x%y;
while(r)
x=y;
y=r;
r=x%y;
15.求素数
intcheck(intn);
intn,m,flag,i;
请输入区间"
n,&
for(i=n;
=m;
flag=check(i);
if(flag==1)
i);
16.求最大和最小数2
inta,b;
max=%d"
a>
b?
a:
putchar(10);
min=%d"
!
(a>
b)?
17.求最大数与最小数
intb[10]={1,2,3,4,5,6,912,-12,2,3};
inti=0,max,min;
max=b[0];
min=b[0];
10;
if(b[i]>
max)
max=b[i];
if(b[i]<
min)
min=b[i];
;
max,min);
18.输入字符中的单词的个数
//求输入字符中的单词的个数
#defineN30
charb[N],i=0;
intlength,count=0;
输入的字符长度要小于等于N"
length=strlen(b);
//while(b[i]=='
'
)
//i++;
//count++;
length;
if(b[i]=='
;
count++;
while(b[i]!
i++;
count);
19.水仙花束
intcheck(int);
int(*p)(int);
inta,b,i,flag=0;
for(i=a;
=b;
flag=(*p)(i);
if(flag)
;
intcheck(inta)
intd,b,c;
b=a/100;
c=a/10-b*10;
d=a%10;
if(b*b*b+c*c*c+d*d*d==a)
return1;
20.完全平方数
inti=1;
=(int)(sqrt(a));
if(a==i*i)
return1;
21.旋截法
k=(x*(*p)(y)-y*(*p)(x))/((*p)(y)-(*p)(x));
}while(fabs(f)>
returnk;
22.选择法
#defineN10
inti=0,j,k,d;
=N-2;
k=i;
=N-1;
if(a[k]<
a[j])k=j;
if(k!
=i)
d=a[k],a[k]=a[i],a[i]=d;
23.学生成绩
malloc.h>
structnode
charnumber[N];
charname[N];
inta[5];
};
intn,i,max,place;
structnode*p;
请输入学生数目"
p=(structnode*)malloc(sizeof(structnode)*n);
n;
%s%s%d%d%d"
p[i].number,p[i].name,&
(p[i].a[0]),&
(p[i].a[1]),&
(p[i].a[2]));
p[i].a[3]=p[i].a[0]+p[i].a[1]+p[i].a[2];
p[i].a[4]=(p[i].a[0]+p[i].a[1]+p[i].a[2])/3;
max=p[0].a[3];
place=0;
if(p[i].a[3]>
place=i;
max=p[i].a[3];
%s%s%d%d\n"
p[place].number,p[place].name,p[place].a[3],p[place].a[4]);
24.验证素数
intn,i;
请输入数据"
(n%2))
不是素数"
是素数"