Python新手, 求教问题,还望详解。
我想要实现的功能:
静态存储一页文章,每行不超过80个字符,共N行。存储结构使用线性表。
输入数据的形式和范围:可以输入大写、小写的英文字母、任何数字及标点符号。
用户视角:
1.新建文本
2.浏览输入文本
3.……
4.退出
Please enter the number : 1
Input the text:
用Python 如何实现,不是很清楚?求教!
以下是用C++ 实现的过程。
typedef struct line
{
char *data;
struct line *next;
}LINE;
void Create(LINE * &head)
{
printf ("请输入一页文章,以Ctrl+E为结尾(每行最多输入80字符!):\n");
LINE *p=new LINE; /*首先为链表 建立一个附加表头结点*/
head=p; /*将p付给 表头指针*/
char ch[100];
while(1)
{
gets(ch); /*输入字符串!*/
if(strlen(ch)>80)
{
printf("每行最多输入80字符");
break;
}
if(ch[0]==5)break; /*如果发现输入 ^E,则退出输入*/
p=p->next=new LINE;
p->data=new char[strlen(ch)+1]; /*为结点分配空间 */
strcpy(p->data,ch);
if(ch[strlen(ch)-1]==5) /* 除去最后一个控制符 ^E */
{
p->data[strlen(ch)-1]='\0';
break;
}
}
p->next=NULL; /*最后的一个指针为空 */
head=head->next;
}
算法描述:
存储结构:采用单链表结构存储文章,每个结点存储一行,每行最长不超过80个字符。
用gets函数接收输入,每遇到一个回车换行就新建一个结点,将当前行存入其data域。当发现输入为^E时,在Data的最后加上字符串结束标志,并置当前结点的Next指针域为NULL。