请问:为什么运行不了呀?代码问题是:
统计单链表中偶数位序的元素和并输出元素值
#include
#include
#include
using namespace std;
typedef struct Node
{
int data;
struct Node*next;
}Node,*LinkList;
void Initlist(LinkList &L)
{
L=(Node*)malloc(sizeof(Node));
L->next=NULL;
}
void Creatlist(LinkList &L,int a[100],int n)
{
L= (Node *)malloc(sizeof(Node));
L->next = NULL;
LinkList p;
for (int i = 0; i < n; i++) {
p = (LinkList )malloc(sizeof(LinkList));
p->data = a[i];
p->next = L->next;
L->next=p;
}
}
int deleteList (LinkList &L,int m)
{
LinkList q = L;
if(m<1)
{
printf("error\n");
return 0;
}
int i=0;
LinkList p;
while(q!=NULL&&inext;
}
p=q->next;
q->next=p->next;
free(p);
return 1;
}
void OutputList(LinkList &L)
{
LinkList s;
s=L->next;
while(s)
{
cout<data<<' ';
s=s->next;
}
}
int main()
{
int n,m,a[100];
cin>>n;
LinkList L;
Initlist(L);
Creatlist(L,a,n);
cin>>m;
if(deleteList(L,m))
OutputList(L);
if(L->next==NULL)
cout<<"null";
return 0;
}
检查一下是不是指针的问题。
不知道你这个问题是否已经解决, 如果还没有解决的话:#include <stdio.h>
#define N 10
void SelectionSort(int *a,int n)
{
int i,j,temp;
for(i=0;i<n-1;i++)
{
for(j=i+1;j<n;j++)
{
if(a[i]>a[j])
{
temp=a[i];
a[i]=a[j];
a[j]=temp;
}
}
}
}
int main(int argc, char *argv[])
{ int i,a[N];
printf("请输入10个数:\n");
for(i=0;i<N;i++)
{
scanf("%d",&a[i]);
}
SelectionSort(a,N);
printf("排好序的数为:\n");
for(i=0;i<N;i++)
printf("%d ",a[i]);
printf("\n");
return 0;
}
我想能看到这里的同学,无外乎两种人:来拷贝代码的人 和 来拷贝代码的人。
但,在拷贝走的时候,你要想清楚一件事,把代码拷走之后有个蛋用,搞明白对你来说才是最重要的。
好了,就酱紫。
老铁,这要是都不赞,说不过去吧!!!
最后对自己说:
你现在所遭遇的每一个不幸,都来自一个不肯努力的曾经。