时间:2021-05-20
本文实例为大家分享了C语言实现翻译功能的具体代码,供大家参考,具体内容如下
题目描述:编写一个程序,依次输入英文与汉语拼音,输入两个“ * ”表示输入结束,再输入一段英语句子,打印出其对应汉语拼音。
要求:不得使用<string.h>头文件
题目中要求不得使用<string.h>提醒我们使用其中的函数来编写代码,不过函数的实现需要自己来思考,根据自己的需要可以调整原函数的功能。思路大致是:输入完毕后拿原结构体记录的英文内容与 a 中的单词逐个相比,若相同,则输出结构体中对应的汉语拼音。
#include <stdio.h>#include <stdlib.h>#define M 100struct tran //建立结构体,将英文与对应的汉语拼音存储在一起{ char English[M]; char Chinese[M];}n[M];int my_strlen(char a[]); //声明自定义测量数组长度的函数int my_strcmp(char* str1,char* str2); //声明自定义判断两个字符串是否相同的函数int main(){ int i=1,j,k; char a[M],*p=a; printf("请首先输入英文,然后输入汉语拼音:\n"); while(n[i-1].English[0]!='*'||n[i-1].Chinese[0]!='*') //当输入两个“ * ”时输入终止 { printf("请输入第%d组\t\t",i); scanf("%s%s",n[i].English,n[i].Chinese); i++; } printf("请输入一个句子\n"); getchar(); //接收上一个回车,避免下一个scanf()无法输入 scanf("%[^\n]",a); for(i=0;a[i]!='\0';i++) { if(my_strcmp(p,n[i].English)==1) { p=p+my_strlen(n[i].English)+1; //使p指针后移,指向第二个单词 printf("%s ",n[i].Chinese); i=-1; //使下次循环 i = 0 } } printf("\n"); system("pause"); return 0;} int my_strcmp(char* str1,char* str2){ int flag=0; while(*str1==*str2) { str1++; if(*str1=='\0'||' ') { flag=1; return 1; } else str2++; } if(flag==0) return 0;} int my_strlen(char a[]){ int i,k=0; for(i=0;a[i]!='\0';i++) { k++; } return k;}下面是程序示例:
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。
声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。
本文实例为大家分享了C语言实现翻译功能的具体代码,供大家参考,具体内容如下#include#definenumber100structdate{charchin
本文实例为大家分享了C语言实现航班管理系统的具体代码,供大家参考,具体内容如下#include#include#
好的,首先我先叙述下功能要求:其实很简单,就是Shell中sed命令的C语言实现,实现定位到所需要的字段的那一行,之后修改成需要的内容。但是由于C语言是面向过程
C语言数据结构实现字符串分割的实例以下为“字符串分割”的简单示例:1.用c语言实现的版本#includeintpartition(ch
C语言实现简登录和注册功能,供大家参考,具体内容如下C语言实现注册登录使用链表使用文件版本二:利用链表此版本使用的链表,第一个版本使用的是数组数组版本连接这里我