| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 285 人关注过本帖
标题:求大神帮我看看,为什么运行的时候输入123直接跳出来了
只看楼主 加入收藏
朱宇灰灰
Rank: 1
等 级:新手上路
帖 子:2
专家分:0
注 册:2015-10-16
结帖率:0
收藏
已结贴  问题点数:20 回复次数:2 
求大神帮我看看,为什么运行的时候输入123直接跳出来了
#include<stdio.h>  
#define maxlen 100
typedef int datatype;
typedef  struct
{
datatype data[maxlen];
    int listlen;        
}seqlist;

int list_insert1(int *v,int m,int *n,int i,int b)
{
int j;  
if(*n>=m)
printf("储存空间已满,上溢错误");
if(*n<=0)
printf("插入范围错误");
if(i>*n)
i=*n+1;
    if(i<0)
i=1;
    for(j=*n;j>=i;j--)
       v[j]=v[j-1];
v[i-1]=b;
*n=*n+1;
return 0;
}  

int first()
{
int c,n;
    int a[100];
printf("请输入数据的个数\n");
scanf("%d",&n);
printf("请输入这些数据\n");
for(c=0;c<n+1;c++)
scanf("%d",&c);
    int b,i,k;
    printf("请输入要插入的数\n");
    scanf("%d",&b);
    printf("请输入要插入的位置\n");
    scanf("%d",&i);
   
list_insert1(a,10,&n,i,b);
   
for(k=0;k<n;k++)
    printf("%d ",a[k]);
return 0;
}

int list_delete(int *v,int m,int *n,int i)
{
int j;
if(*n<=0)
printf("位置错误");
if((i<1) || (i>*n))
printf("没有这个元素");  
    for(j=i;j<*n;j++)  
v[j-1]=v[j];  
    *n=*n-1;
return 0;
}

int second()
{
int c,n;
int a[100];
printf("请输入数据的个数\n");
scanf("%d",&n);
printf("请输入这些数据\n");
for(c=0;c<n+1;c++)
scanf("%d",&c);
int j,k;
printf("\n");
printf("请输入要删除的数的位置\n");
scanf("%d",&j);
list_delete(a,100,&n,j);
for(k=0;k<n;k++)
printf("%d ",a[k]);
printf("\n");
return 0;  
}

int list_insert(seqlist *L,int n)
{
  int i,j,m;
  for(i=0;i<(*L).listlen;i++)
    {
     if(n<=(*L).data[i])
 {
 m=i;
 break;
 }            
    }

  (*L).listlen++;
  for(j=(*L).listlen;j>=m;j--)
   {
    (*L).data[j+1]=(*L).data[j];
    (*L).data[m]=n;                     
   }
  
  printf("现在的顺序表为:\n");

  for(i=0;i<(*L).listlen;i++)
   printf("%d ",(*L).data[i]);   
  return 0;
}


int initial_list(seqlist *L,int n)
{
int i;
    for(i=0;i<n;i++)
  {
    scanf("%d",&(*L).data[i]);
  }
  (*L).listlen=n;
  return 0;
}
 

int third()
{
  int m,n;
  seqlist L;
  printf("请输入顺序表的长度:\n n=");
  scanf("%d",&n);
  printf("请依次输入这一组数据:\n");
  initial_list(&L,n);               
  printf("\n请输入要插入的数据元素:");
  scanf("%d",&m);
  list_insert(&L,m);
  return 0;
}

void main()
{
int q;
printf("请选择你想要进行的任务类型:\n 1、在数组中插入元素 2、在数组中删除元素 3、在顺序表中插入元素并保持有序性\n");
scanf("%d",&q);
if(q=1)
first;
if(q=2)
second;
if(q=3)
third;
}
2015-10-16 11:19
诸葛欧阳
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
来 自:流年
等 级:贵宾
威 望:82
帖 子:2790
专家分:14619
注 册:2014-10-16
收藏
得分:20 
判断条件用==
调用函数把括号加上

一片落叶掉进了回忆的流年。
2015-10-16 11:47
朱宇灰灰
Rank: 1
等 级:新手上路
帖 子:2
专家分:0
注 册:2015-10-16
收藏
得分:0 
回复 2楼 诸葛欧阳
谢谢咯!明白了
2015-10-16 19:39
快速回复:求大神帮我看看,为什么运行的时候输入123直接跳出来了
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.016492 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved