#include
int main()
{
int i=10;
while(i==i--)
printf("哈哈\n");
printf("呵呵\n");
return 0;
}
请问是不是因为变量自身不能与自身自增自减比较才导致不能一直打印哈哈
while(i==i--)
这是C语言未定义行为,你多试几个不同的编译器,会发现结果不同。
i==i--在同一个表达式中多次修改它的值是未定义的行为,改成i-- > 0吧,或者按你需求
不知道你这个问题是否已经解决, 如果还没有解决的话:#include<stdio.h>
#include<stdlib.h> //头文件
#define MaxSize 60 //线性表存储空间的大小
typedef char ElemType; //自定义类型语句
typedef struct{ //线性表的顺序存储表示
ElemType data[MaxSize]; //存储线性中的元素
int length; //存放线性表的长度
}SqList; //线性表顺序存储结构类型名
void CreatList_Sq(SqList *&L,ElemType a[],int n)
{
int i;
L=(SqList *)malloc(sizeof(SqList)); //分配存放线性的空间
for(i=0;i<n;i++)
L->data[i]=a[i];
L->length=n; //令线性表L的长度为n
}
/*bool ListEmpty(SqList *L) //判断是否为空表
{
return(L->length==0);
}*/
void DispList(SqList *L) //输出线性表
{ int i;
/*if (ListEmpty(L))
return;*/
for (i=0;i<L->length;i++)
printf("%d",L->data[i]);
printf("\n");
}
int main()
{
SqList *L;
ElemType a[]={1,2,3,4,5,6,7,8};
CreatList_Sq(L,a,8);
printf("L:");
DispList(L);
return 0;
}