c语言编写程序颠倒句子enter a sentence:you can case a swallow can't you?reversal of sentence:you can't swallow a cage can you?

来源:学生作业帮助网 编辑:作业帮 时间:2024/05/08 05:31:36
c语言编写程序颠倒句子enter a sentence:you can case a swallow can't you?reversal of sentence:you can't swallow a cage can you?

c语言编写程序颠倒句子enter a sentence:you can case a swallow can't you?reversal of sentence:you can't swallow a cage can you?
c语言编写程序颠倒句子
enter a sentence:you can case a swallow can't you?
reversal of sentence:you can't swallow a cage can you?

c语言编写程序颠倒句子enter a sentence:you can case a swallow can't you?reversal of sentence:you can't swallow a cage can you?
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include<ctype.h>

#define OK 1
#define M 5


//建单词节点
struct Node{
\x09char *data;
\x09Node *next;
};
char f;
//插入函数
void Insert(Node* &S,char e[])
{

\x09Node *p;
\x09p=(Node *)malloc(sizeof(Node));
\x09p->data = (char *)malloc(strlen(e)+1);
\x09p->next = NULL;
    strcpy(p->data,e);
\x09p->next = S;
\x09S  = p;
}

void Creat(Node* &S)
{
\x09int i = 0,k = 0,j,flag = 1,insert;
\x09char s[20];
\x09char a[2000] = {0};


    printf("\n输入正文:  ");
\x09fflush(stdin); 
\x09gets(a);
    printf("\n原文为:  ");
\x09while(a[i] != NULL)
\x09{
\x09\x09insert = 0;
\x09\x09memset(s, 0, 20);
\x09\x09j = 0;

\x09\x09// 跳过单词前面的前导字符
\x09\x09while(flag&&!isalpha(a[i])||a[i]==39)//39为'的ASCII码
\x09\x09{
\x09\x09\x09i++;
\x09\x09\x09if(a[i]==NULL)
\x09\x09\x09\x09flag = 0;
\x09\x09}

\x09\x09// 当前单词尚未结束,则一直循环
\x09\x09while(flag&&isalpha(a[i])||a[i]==39)
\x09\x09{
\x09\x09\x09insert = 1;
\x09\x09\x09s[j]=tolower(a[i]);
\x09\x09\x09i++;
\x09\x09\x09j++;
\x09\x09}
\x09\x09//单词插入
\x09\x09if(insert)
\x09\x09{
\x09\x09\x09s[i] = '\0';
\x09\x09\x09k++;
\x09\x09\x09printf("%s\t", s);
\x09\x09\x09if(k%5 == 0)
\x09\x09\x09\x09printf("\n");
\x09\x09\x09Insert(S,s);
\x09\x09\x09j++;
\x09\x09}
\x09}
\x09if(!isalpha(a[i-1]))
\x09\x09f = a[i-1];
\x09else
\x09\x09f=' ';
}
//输出正文    
void Print(Node* &T)
{
    if(NULL!=T)
    {
\x09\x09printf("%s ",T->data);
\x09\x09Print(T->next);
\x09}
\x09else
\x09\x09return;
}

int main()
{
    Node *S=NULL;

\x09Creat(S);
\x09printf("\n倒置为:");
\x09Print(S);
\x09printf("%c",f);
\x09printf("\n");
    return 0;
}


2013 5 25 8:16

耗时14min

1L

c语言编写程序颠倒句子enter a sentence:you can case a swallow can't you?reversal of sentence:you can't swallow a cage can you? 编写程序颠倒句子中单词的顺序.How are you?you are How?#includeint main(void){char a[200];char ch;int i,x,y;int j;printf(Enter a sentence:);for(i=0;i C 语言 编写程序,计算分段函数: C语言编写程序四则运算法则 编写C语言程序从n(20 编写以下框图的C语言程序 用C语言编写程序计算S的值,其中s=1+2+3+.+100 用C语言编写程序,求s=1-3+5-7+...-99+101的值 用C语言编写程序,计算S的近似值.第6、7题 用c语言编写一个程序,求和s=1!+3!+5! 用C语言编写程序,求s=1+11+111+1111+11111的值 下列C语言程序哪有错误?用C语言编写编写程序哪有错误? 怎样编写一个计算圆面积S和圆周长L的C语言程序C语言 C语言 编写程序,打印如图所示字符图形ABCDEFGHIBCDEFGHIACDEFGHIZBDEFGHIABCEFGHIABCDFGHIABCDEEFGHIZBCDDEFGHIABCCDEFGHIABBCDEFGHIAABCDEFGHI有几个Z改为A C语言题目...1.编写一个算法和C程序,计算以下等式的结果.S=X*Y*X/10 2.编写一个算法和C程序,显示以下结果:'Finding Nemo' is a great movie!I saw it yesterday.要用curboc程序编辑器来编写!C++的不行!急救啊. 用JAVA语言编写程序19.编写一个译码程序,把一个英语句子译成数字代码.译码规则是以数字 1代替字母 a,数 判断两个数a,b是否为互质数的程序,用C语言编写?程序简短,效率较高. 编写一个C语言程序,关于“统计一条英文句子中字母的个数,在主程序中实现输入输出”