精华内容
下载资源
问答
  • C语言 英文单词排序

    千次阅读 2019-04-28 19:55:59
        ... while (strcmp(a[i],"#")) ... //用复值函数进行复制,排序 (我们用的是选择法排序) strcpy(a[j],a[k]); strcpy(a[k],b[j]); } } for(j=0;j;j++) printf("%s ",a[j]); }    

     

     

    #include<stdio.h>
    #include<string.h>
    main()
    {
    	int i=0,j,k;
    	char a[20][10],b[20][10]; 
    	scanf("%s",a[i]);
    	while (strcmp(a[i],"#"))                  //当输入的字符串不等于#时进行继续输入 (双引号:字符串,单引号:字符);
    	{
    		i++;
    		scanf("%s",a[i]);
    	}
    	for(j=0;j<i;j++)
    	{ 
    	   for(k=j+1;k<i;k++)
    	   if(strlen(a[j])>strlen(a[k]))         //题目要求按照长度进行排序,所以用strlen函数计算字符串长度(函数头文件为string.h) 
    	   {
    	   	   strcpy(b[j],a[j]);               //用复值函数进行复制,排序 (我们用的是选择法排序) 
    	   	   strcpy(a[j],a[k]);
    	   	   strcpy(a[k],b[j]);
    	   }
        }
        for(j=0;j<i;j++)                        
    	printf("%s ",a[j]);
    }

     

     

    展开全文
  • 7-1 英文单词排序 (25 分) 本题要求编写程序,输入若干英文单词,对这些单词按长度从小到大排序后输出。如果长度相同,按照输入的顺序不变。 输入格式: 输入为若干英文单词,每行一个,以#作为输入结束标志。其中...

    7-1 英文单词排序 (25 分)

    本题要求编写程序,输入若干英文单词,对这些单词按长度从小到大排序后输出。如果长度相同,按照输入的顺序不变。

    输入格式:

    输入为若干英文单词,每行一个,以#作为输入结束标志。其中英文单词总数不超过20个,英文单词为长度小于10的仅由小写英文字母组成的字符串。

    输出格式:

    输出为排序后的结果,每个单词后面都额外输出一个空格。

    输入样例:

    blue
    red
    yellow
    green
    purple
    #
    

    输出样例:

    red blue green yellow purple 
    

    Soution:

    #include <stdio.h>
    #include <string.h>
    
    int main(){
        char str[20][10];
        char st[10];
        int i,j,k=0;
        char p[10];
        
        while(1){
            scanf("%s",st);
            if(st[0]=='#'){
                break;
            }
            else{
                strcpy(str[k],st);
                k++;
            }
        }
        for(i=0;i<k-1;i++){
            for(j=0;j<k-1-i;j++){
            if( strlen(str[j]) > strlen(str[j+1]) ){
                strcpy(p,str[j]);
                strcpy(str[j],str[j+1]);
                strcpy(str[j+1],p);
            }
            }
        }
        for(i=0;i<k;i++){
            printf("%s ",str[i]);
        }
        
    }
    
    展开全文
  • C语言单词排序

    2018-04-17 17:34:51
    从一个文本中读入文章,统计其中出现的所有单词出现次数,并按照从小到大的次序排列,在另一个文本中输出结果,保存
  • 满意答案ajuum2d8l推荐于 2017.09.12采纳率:59%等级:10已帮助:674人程序第一次运行时...因为程序在结束之前,对数组中的单词重新排序,并存储到文件中。 #include "stdio.h"---#include "stdlib.h" ---为e...

    满意答案

    02ae427d08e371d7e90d5b995e828d6d.png

    ajuum2d8l

    推荐于 2017.09.12

    02ae427d08e371d7e90d5b995e828d6d.png

    采纳率:59%    等级:10

    已帮助:674人

    程序第一次运行时,会创建一个“word.txt”(不包括引号)的文本文件,然后要求输入单词。若要退出,请不要点DOS窗口的小叉叉,输入d即可。因为程序在结束之前,对数组中的单词重新排序,并存储到文件中。 #include "stdio.h"---

    #include "stdlib.h" ---为exit()函数提供原型; #include "string.h"---字符串处理函数原型; #include "ctype.h"---字符处理函数原型; #define ROWS 256

    #define COLS 32---定义“字典”的大小:可存放256个单词,每个单词的长度不超过31

    static FILE *fp;---定义文件指针:内部链接,文件作用域;

    static char a[ROWS][COLS];---定义数组:内部链接,文件作用域;该数组的作用是将文件的内容复制进来,并加以处理。因为处理数组比处理文件方便。

    char get_option(void);---接收用户的选项,防止误操作。若输入“a;”(不包括引号),那么将视为选项a

    int b(int count);---完成选项b的作用--接收新单词;

    void c(char *pt[], int count);---完成选项c的作用--通过指针对数组排序,实际数组元素位置未改变;

    int check(char arr[], int count);---对输入的单词进行分辨,若输入 ni hao ,将视为单词 ni ,并且提示并剔除重复的单词;

    void storage(char *pt[], int count);---在程序结束之前重新排序存储数组中的单词到文件中。

    #include "stdio.h" #include "stdlib.h" #include "string.h" #include "ctype.h" #define ROWS 256 #define COLS 32 static FILE *fp;

    static char a[ROWS][COLS]; char get_option(void); int b(int count);

    void c(char *pt[], int count); int check(char arr[], int count); void storage(char *pt[], int count); int main(void) {

    int i,count; int start;

    char *pt[ROWS]; char ch, len; char input;

    if((fp=fopen("words.txt","a+"))==NULL) {

    fputs("不能打开或建立文件!\n",stderr); exit(1); }

    fseek(fp,0L,SEEK_END); start=(int)ftell(fp)/32; count=start; rewind(fp);

    if(fread(a,32*sizeof(char),start,fp)==0) { i=0;

    puts("开始创建词库");

    puts("请输入单词(每行一个)");

    puts("在新行输入END结束输入:"); while(i

    fflush(stdin);

    if(strncmp(a[i],"END",3)==0) {

    count+=i; break;

    }

    if(check(a[i], i)) continue; i++; } }

    puts("\t\t*********************欢迎使用字典排版系统*******************\n\n");

    puts(" MENU "); puts("您要做些什么?");

    puts("a. 显示已有的单词 b. 添加新单词"); puts("c. 对已有的单词进行排序 d. 退出");

    puts("\n\n\t\t**********************************************************\n"); while((input=get_option())!='d')

    {

    if(input=='a') { puts("已有的单词:"); for(i=0;i

    {

    printf(" "); puts(a[i]); } }

    if(input=='b')

    {

    puts("开始创建词库");

    puts("请输入新的单词(每行一个)"); puts("在新行输入END结束输入: "); count=b(count); }

    if(input=='c') {

    puts("对单词进行排序:"); c(pt, count);

    for(i=0;i

    printf(" "); puts(pt[i]); } }

    puts("还要做些什么?"); }

    storage(pt,count); fclose(fp);

    puts("谢谢使用,再见!");

    return 0; }

    char get_option(void) {

    char ch;

    while((ch=getchar())'d') {

    while((ch=getchar())!='\n') ;

    puts("请输入a,b,c或者d."); }

    fflush(stdin);

    return ch; }

    int b(int count) { int i;

    i=count;

    while(i

    fflush(stdin); if(check(a[i], i)) continue;

    if(strncmp(a[i],"END",3)==0) {

    count=i; break; } i++; }

    return count; }

    void c(char *pt[], int count) { int i,j;

    char *temp;

    for(i=0;i

    for(i=0;i

    if(strcmp(pt[i],pt[j])>0) {

    temp=pt[i]; pt[i]=pt[j]; pt[j]=temp; } } }

    int check(char arr[], int count) { int i;

    int flag=0;

    for(i=0;i

    printf("%s不是一个单词.\n",arr); flag=1; break; }

    for(i=0;i

    if(strncmp(a[i],a[count],strlen(a[count])+1)==0) {

    puts("重复的单词!"); flag=1; }

    return flag; }

    void storage(char *pt[], int count) { int i,j;

    char ptr[ROWS][COLS];

    c(pt, count);

    for(i=0;i

    for(j=0;pt[i][j]!='\0';j++) ptr[i][j]=pt[i][j];

    fp=fopen("words.txt","w+"); rewind(fp);

    fwrite(ptr,32*sizeof(char),count,fp); }追问: 求问如何才能从文件中获取单词,输出时在另一文件中?

    追答:不客气

    00分享举报

    展开全文
  • C语言实现英文单词排序

    千次阅读 2021-03-09 18:36:54
    C语言实现英文单词排序 输入若干英文单词,对这些单词按长度从小到大排序后输出。如果长度相同,按照输入的顺序不变。 输入格式: 输入为若干英文单词,每行一个,以#作为输入结束标志。其中英文单词总数不超过20...

    用C语言实现英文单词排序

    输入若干英文单词,对这些单词按长度从小到大排序后输出。如果长度相同,按照输入的顺序不变。
    输入格式:
    输入为若干英文单词,每行一个,以#作为输入结束标志。其中英文单词总数不超过20个,英文单词为长度小于10的仅由小写英文字母组成的字符串。
    输出格式:
    输出为排序后的结果,每个单词后面都额外输出一个空格。
    输入样例:

    blue
    red
    yellow
    green
    purple
    #
    

    输出样例

    red blue green yellow purple
    
    #include<stdio.h>
    #include<string.h>
    int main()
    {
    	char str[20][10];
    	char string[10];
    	int i=0,j,k;
    	for (i=0;i<20;i++)
    	{
    		gets(str[i]);
    		if(strcmp(str[i],"#")==0)
    		break;
    	}
    	for(j=0;j<i-1;j++)
    	{
    		for(k=j+1;k<=i-1;k++)
    		{
    			if (strlen(str[j])>strlen(str[k]))
    			{
    				strcpy(string,str[j]);
    				strcpy(str[j],str[k]);
    				strcpy(str[k],string);
    			}
    		}
    	}
    	for(j=0;j<i;j++)
    	{
    		printf("%s ",str[j]);
    	}
    	return 0;
    }
    
    展开全文
  • C语言 单词排序 轻松实现 某著名教师亲自操刀 字符串 数组
  • C语言英文单词

    千次阅读 2018-12-22 10:28:17
    数组: ( operator and expression ) 汉语 英语 字符 character  array 数组 常量 constant 字符串 string   reference 引用 变量 variable 应用 application  element 元素 标识符 identify 指针 pointer ...
  • C语言单词排序问题

    2017-12-18 17:18:26
    问题是这样的[img=... ... 我写的代码是这样的#include <stdio.h> #include <...i++)//选择排序 ...多个空格,重复单词,一开始就有空格这些都没问题,已经解决
  • 英文单词排序c语言版)

    千次阅读 2020-03-25 08:38:51
    本题要求编写程序,输入若干英文单词,对这些单词按长度从小到大排序后输出。如果长度相同,按照输入的顺序不变。 输入格式: 输入为若干英文单词,每行一个,以#作为输入结束标志。其中英文单词总数不超过20个,...
  • 本文题目要求:C语言实现单词小帮手,供大家参考,具体内容如下一、题目分析实验内容:单词小助手,要求完成以下任务:1.改写程序为良好程序风格(文档注释,函数注释,语句注释)。2.将单词测试中的功能完善,可针对...
  • C语言学习记录 前言 一直自己没有学习做笔记的习惯,所以为了加强自己对知识的深入理解,决定将学习笔记写下来,希望...英文单词排序 Problem Description 输入若干有关颜色的英文单词(单词数小于150,每个单词不超...
  • 本文实例为大家分享了C语言实现单词小助手的具体代码,供大家参考,具体内容如下单词小助手(声明:此程序非原创,是在已有程序上进行一些修改和添加)一、题目分析题目要求:1.改写程序为良好程序风格(文档注释,函数...
  • 英文单词小助手的实现步骤,供大家参考,具体内容如下题目需求分析:英文单词小助手是帮助学生背诵单词的软件,用户可以选择背诵的词库,并可以编辑自己的词库,还应有词语预览学习功能。系统可以给出中文,让学生...
  • 这个作业属于那个课程C语言程序设计II这个作业要求在哪里我在这个课程的目标是数组的排序这个作业在哪个具体方面帮助我实现目标数组函数的使用参考文献英文单词排序本题要求编写程序,输入若干英文单词,对这些单词...
  • 该楼层疑似违规已被系统折叠隐藏此楼查看此楼#include#include#define N 50 //单词数上限#define M 26 //单词长度上限void upsort(char word[][M], int n){char word1[N][M], word3[N];for (int i = 0; ifor (int j ...
  • C语言实现快速排序

    2016-11-16 11:46:08
    这是一个用C语言实现的快速排序的程序,它实现了对一个英文文本中的单词排序并将排序结果输出到另外一个文件中。
  • 单词排序C语言

    千次阅读 2020-04-22 13:32:05
    有一个字符串数组包含9个字符串,每个字符串都是一个单词,且每个串的长度均不超过7,要求对单词进行排序后再输出。具体要求如下: 使用二维字符数组存放这9个字符串。 2.为二维字符数组输入数据。 3.输出处理前和...
  • 一个英语字典功能 抽取单词 第一个选择 多少秒切换单词 第二个选择 从那个文件选择 第三个选择 1字典排序 2随机排序 麻烦哪位大佬写写 谢谢 我的代码这样子 铁定是废的。 头文件 ``` #include #...
  • //单词排序问题(马马虎虎,看不太懂) #include<stdio.h> #include <string.h> int main() {char words[5][15]={{’\0’},{’\0’},{’\0’},{’\0’},{’\0’}},temp[15]={0}; int i,j; scanf("%s",...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 16,354
精华内容 6,541
关键字:

c语言英文单词排序

c语言 订阅