求大神帮忙看看怎么做
#include<stdio.h>void main()
{
int a;
int i,k,j;
for(i=0;i<10;i++)
{
printf("请输入数字:");
scanf("%d",&a);
}
for(j=0;j<9;j++)
{
for(i=0;i<9-j;i++)
{
}
}
printf("冒泡结果:");
for(i=0;i<10;i++)
{
printf("%d ",a);
}
}
条件:有一个升序排列的数组,要求输入一个数,在数组中查找是否有这个数,如果有,将该数从数组中删除,要求删除后的数组仍然保持有序;如果没有,则输出“数组中没有这个数!”
本帖最后由 jackz007 于 2019-11-21 23:01 编辑
#include <stdio.h>
void show(int * d , int m , int n)
{
int k ;
for(k = 0 ; k < m ; k ++) {
if(! (k % n)) {
if(k) printf("\n") ;
printf("\t") ;
} else {
printf(" , ") ;
}
printf("%3d" , d) ;
}
printf("\n") ;
}
int main(void)
{
int a = {1 , 3 , 5 , 7 , 9 , 13 , 17 , 21 , 25 , 29} ;
int low , high , mid , d , k , m ;
bool f ;
show(a , 10 , 5) ;
printf("\n") ;
printf("请输入数字 : ") ;
scanf("%d" , & d) ;
printf("\n") ;
for(low = 0 , high = 9 , m = 10 , f = false ; low <= high && ! f ;) {
mid = (low + high) / 2 ;
if (d == a) {
for(k = mid ; k < m - 1 ; k ++) a = a ;
m -- ;
f = true ;
} else {
if (d > a) low = mid + 1 ;
else high = mid - 1 ;
}
}
if(f) show(a , m , 5) ;
else printf("\t数组中没有这个数\n") ;
} boolf没有办法给false和true同时赋值
页:
[1]