PAT 乙级 1009

PAT 乙级 10091009说反话(20分)将一个英语的句子按照单词的顺序颠倒,我的想法又是用链表

大家好,又见面了,我是你们的朋友全栈君。

1009 说反话 (20 分)

将一个英语的句子按照单词的顺序颠倒,我的想法又是用链表?。先将每个单词找到,按照头插法存下来,然后再将链表输出。有点呆,没事,当练习一下链表。滑稽

代码如下:

#include <stdio.h>
#include <string.h>
#include <stdlib.h>

typedef struct vocabulary
{
	char *str;
	struct vocabulary *next;
}vocab;

void insert(vocab **h,char *str,int len);

int main()
{
	char str[82] = {0};
	char *t;
	int i = 0;
	int n1;
	vocab *h = (vocab *)malloc(sizeof(vocab));
	
	h->next = NULL;
	vocab *p;
	fgets(str,82,stdin);
	n1 = 0;
	do
	{
		if(str[i] == ' ' || str[i] == '\n') //|| i == 79)
		{
			t = (char*)malloc(sizeof(char) * i - n1);
			strncpy(t,str + n1, i - n1);
			insert(&h,t,i - n1);
			free(t);
			n1 = i + 1;
		}
	}while(str[++i]);
	
	p = h->next;
	vocab *pre = h;
	while(p)
	{
		printf("%s",p->str);
		if(p->next)
			putchar(' ');
		pre = pre->next;
		p = pre->next;
		free(pre);
	}

	return 0;
}

void insert(vocab **h,char *str,int len)
{
	vocab *p = (vocab *)malloc(sizeof(vocab));
	p->str = (char*)malloc(sizeof(char) * len);
	p->next = NULL;
	strcpy(p->str,str);
	p->next = (*h)->next;
	(*h)->next = p;
}


版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/145088.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)
blank

相关推荐

  • MySQL · 性能优化· CloudDBA SQL优化建议之统计信息获取

    MySQL · 性能优化· CloudDBA SQL优化建议之统计信息获取

  • qt怎么设置窗口标题_qt自定义标题栏

    qt怎么设置窗口标题_qt自定义标题栏#include”mainwindow.h”#include<QApplication>intmain(intargc,char*argv[]){QApplicationa(argc,argv);MainWindoww;w.setWindowTitle(QString(“参数配置界面”));w.show();…

    2022年10月21日
  • .htaccess文件RewriteRule语法规则

    .htaccess文件RewriteRule语法规则.htaccess文件是运行ApacheWebServer的Web服务器的配置文件,对配置和重定向ApacheWebServer文件系统很有用。请记住.htaccess文件将采用隐藏格式。没有人可以通过URL直接看到它。.htaccess文件有很多用途。在这里,我将讨论.htaccess文件RewriteRule语法规则。RewriteRule语法规则#——位于行首时表示注释。[F]——Forbidden(禁止):命令服务器返回403Forb…

  • Elasticsearch数据库

    Elasticsearch数据库1、什么是Elasticsearch1、概念以及特点        1、Elasticsearch和MongoDB/Redis/Memcache一样,是非关系型数据库。是一个接近实时的搜索平台,从索引这个文档到这个文档能够被搜索到只有一个轻微的延迟,企业应用定位:采用RestfulAPI标准的可扩展和高可用的实时数据分析的全文搜索工具。   2、可拓展:支持一主多从且扩容简易,只要clust…

  • 计算机网络笔记Part1 概述「建议收藏」

    计算机网络笔记Part1 概述「建议收藏」概述1.速率相关性能指标速率定义:连接在计算机网络上的主机在数字信道上传送数据位数的速率单位:b/s,Kb/s,Mb/s,Tb/s,如果用字节表示,则是B/s,KB/s,MB/s,TB/s1Byte=8Bit带宽在计算机网络中,指的是网络设备所支持的最高速度,单位同速率,是理想条件下最高速率吞吐量指的是单位时间内通过某个网络的数据总量个人理解速率就是实际网速,带宽是理论网速(长城宽带警告),吞吐量是一个或多个设备的综合速率,比如说1000m宽带的路由器连着三部手机,每部手机都是10m

  • WPF 使用TextBox做密码输入框

    WPF 使用TextBox做密码输入框密码输入框需要输入的密码不能显示明文,用其他的特殊字符代替显示。显示效果如下:Xaml部分代码如下:

    2022年7月25日

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号