判断一个数是否在数列中:main(){int a[9]={1,3,5,7,9,11,13,15,17},i,n=9,number;printf("请输入一个数:\n");scanf("%d",&number);if(numbera[9])printf("%d不在数列中.");for(i=0;ia[n]){i=i+n;n=9;}}}这个程序只有输入5才会输出
来源:学生作业帮助网 编辑:作业帮 时间:2024/09/09 09:14:06
![判断一个数是否在数列中:main(){int a[9]={1,3,5,7,9,11,13,15,17},i,n=9,number;printf(](/uploads/image/z/3185427-3-7.jpg?t=%E5%88%A4%E6%96%AD%E4%B8%80%E4%B8%AA%E6%95%B0%E6%98%AF%E5%90%A6%E5%9C%A8%E6%95%B0%E5%88%97%E4%B8%AD%EF%BC%9Amain%28%29%7Bint+a%5B9%5D%3D%7B1%2C3%2C5%2C7%2C9%2C11%2C13%2C15%2C17%7D%2Ci%2Cn%3D9%2Cnumber%3Bprintf%28%22%E8%AF%B7%E8%BE%93%E5%85%A5%E4%B8%80%E4%B8%AA%E6%95%B0%3A%5Cn%22%29%3Bscanf%28%22%25d%22%2C%26number%29%3Bif%28numbera%5B9%5D%29printf%28%22%25d%E4%B8%8D%E5%9C%A8%E6%95%B0%E5%88%97%E4%B8%AD.%22%29%3Bfor%28i%3D0%3Bia%5Bn%5D%29%7Bi%3Di%2Bn%3Bn%3D9%3B%7D%7D%7D%E8%BF%99%E4%B8%AA%E7%A8%8B%E5%BA%8F%E5%8F%AA%E6%9C%89%E8%BE%93%E5%85%A55%E6%89%8D%E4%BC%9A%E8%BE%93%E5%87%BA)
判断一个数是否在数列中:main(){int a[9]={1,3,5,7,9,11,13,15,17},i,n=9,number;printf("请输入一个数:\n");scanf("%d",&number);if(numbera[9])printf("%d不在数列中.");for(i=0;ia[n]){i=i+n;n=9;}}}这个程序只有输入5才会输出
判断一个数是否在数列中:
main()
{
int a[9]={1,3,5,7,9,11,13,15,17},i,n=9,number;
printf("请输入一个数:\n");
scanf("%d",&number);
if(numbera[9])
printf("%d不在数列中.");
for(i=0;ia[n])
{i=i+n;
n=9;}
}
}
这个程序只有输入5才会输出.请大侠们改一下错,
我想练习二分法,能不能把正确的算法解释一下.最好做好程序.
判断一个数是否在数列中:main(){int a[9]={1,3,5,7,9,11,13,15,17},i,n=9,number;printf("请输入一个数:\n");scanf("%d",&number);if(numbera[9])printf("%d不在数列中.");for(i=0;ia[n]){i=i+n;n=9;}}}这个程序只有输入5才会输出
你的算法有问题
根据你写的改了一下,要注意n不能是9,a[9]下标越界了!请对比一下你写的,要注意一些小毛病!
main()
{
int a[9]={1,3,5,7,9,11,13,15,17},m=0,n=8,number;
printf("请输入一个数:\n");
scanf("%d",&number);
if(numbera[9]){
printf("%d不在数列中.",number);
}else{
while(1){
if(ma[n]){
m=n+1;
n=2*n;
}
}else{
printf("%d不在数列中.",number);
break;
}
}
}
}