c 语言 一堆数组题型,C语言题型集.doc

C语言题型集

题目1:输入17,5,输出:19,23,29,31,37。

void num(int m,int k,int xx[])

{int data=m+1;

int half,n=0,I;

while(1)

{half=data/2;for(I=2;I<=half;I++)

if(data%I==0)break;

if(I>half)

{xx[n]=data;n++;}

if(n>=k)break;

data++;}

}

题目2

编制函数jsVal(),功能:如果四位数各位上的数字均是0或2或4或6或8,则统计出满足此条件的个数cnt,按从大到小的顺序存入数组b中。

void jsVal()

{ int i,j,qw,bw,sw,gw;

for(i=0;i

{ qw=a[i]/1000; bw=a[i]/100%10;

sw=a[i]%100/10;gw=a[i]%10;

if(qw&&qw%2==0&&bw%2==0&&sw%2==0&&gw%2==0) b[cnt++]=a[i];}

for(i=0;i

for(j=i+1;j

if(b[i]

}

题目3:编制函数jsVal(),功能: 依次从数组a中取出一个四位数,如果该数连续大于该四位数以后的5个数且该数是奇数,则统计出满足此条件的个数cnt,按从小到大的顺序存入数组b

void jsVal()

{int I,j,flag=0;

int k;

for(I=0;I

{for(j=I+1;j<=I+5;j++)

{if (a[I]>a[j])

flag=1;

else {flag=0;break;}

if (a[I]%2==0)

flag=0;}

if (flag==1)

{b[cnt]=a[I]; cnt++;} }

for(I=0;I

for(j=I+1;j

if (b[I]>b[j])

{k=b[I];b[I]=b[j];b[j]=k;}

}

题目4:编函数jsvalue,功能:求Fibonacci数列中大于t的最小的一个数,结果由函数返回。F(n)的定义为:

F(0)=0,F(1)=1

F(n)=F(n-1)+F(n-2)

例如:当t=1000时,函数值为:1597。

int jsValue(int t)

{ int f1=0,f2=1,fn;

fn=f1+f2;

while(fn<=t)

{f1=f2;

f2=fn;

fn=f1+f2;}

return fn;

}

题目5:求方程:cos(x)-x=0的一个实根:xn+1=cos(xn)

float countValue()

{float x0,x1=0.0;

while(1)

{x0=x1;

x1=cos(x0);

if(fabs(x0-x1)<1e-6) break;}

return x1;}

题目6:编制函数calvalue(),功能:1、求出这N个实数的平均值aver;2、分别求出这N个实数的整数部分之和sumint以及小数部分之和sumdec,

void CalValue(void)

{int I;

double x,sum=0;

for (I=0;I

{sumint=sumint+(int)xx[I];

x=xx[I]-(int)xx[I];

sumdec=sumdec+x;

sum=sum+xx[I];

}

aver=sum/MAXNUM;

}

题目7:在三位整数(100至999)中寻找符合条件的整数并依次从小到大存入数组中;它既是完全平方数,又是两位数字相同,如144、676等。

jsValue(int a[10][9])

{int I,j,k=0;

int hun,ten,data;

for(I=100;I<=999;I++)

{j=10;

while(j*j<=I)

{if (I==j*j)

{hun=I/100;data=I-hun*100;

ten=data/10;data=data-ten*10;

if(hun==ten||hun==data||ten==data)

{bb[k]=I;k++;}

}

j++;} }

ret

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值