今天给各位分享c语言字典的知识,其中也会对C语言字典查询编写进行解释,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在开始吧!
本文目录一览:
1、C语言中说的按字典顺序是什么意思?2、用c语言编写电子英汉词典。3、C语言递归实现字典顺序枚4、请问C语言中有类似python中字典的东西吗?5、C语言!!!!字典!!!!!6、C语言中字典排序是什么意思
C语言中说的按字典顺序是什么意思?
就是说,将多个字符串的同一位置的字符按照26个字母的顺序进行比对。a最小,z最大。
a b;
aa ab; 因为第二位置上,前面字符串是a,后面字符串是b,所以是小于关系,以此类推。
C语言排序算法:快速排序:
1、假设我们给一个int数组进行排序,数组中数字初始序列为int a[9]={3,6,5,9,7,1,8,2,4}
2、分析快速排序的原理前,我们先声明一些东西,首先设置一个临时变量用来存放随机取出数组中的一个数,一般我们取数组的第一个元素也就是说temp=a[0],同时设置两个游标分别指向数组第一个元素和最后一个元素。
三、算法的基本运算步骤为:1、依次比较数组的后游标所指与temp的大小,如果tempa[j],则j–,直到遇到第一个tempa[j],则停止移动,将a[j]赋值给a[i]
四、算法的基本运算步骤为:2、依次比较数组的前游标所指与temp的大小,如果tempa[i],则i++,直到遇到第一个tempa[i],则停止移动,将a[i]赋值给a[j]
五、算法运算步骤为:3、判断i是否等于j,如果不相等则循环1、2步,直到i等于j,则完成一次快速排序。
六、算法解释:这样一次循环做完后结果就是比temp小的尽量放在temp前,比temp大的尽量放在temp后。但是这种顺序不是稳定的,会有调整。因此快速排序不是一种稳定的排序。以下是实现程序。
七、一次排序完之后在分别对temp前的数组元素和temp后的数组元素分别进行快排,直到数组元素个数为1则停止。
用c语言编写电子英汉词典。
我用VC写了一个
比较简单的
// 词典.cpp : Defines the entry point for the console application.
//
#include “stdafx.h”
#include windows.h
#include stdio.h
#include malloc.h
#include winbase.h
#include process.h
void Search()
{
char temp[100];
char buffer[2];
char result[100];
printf(“请输入要查询的单词:\n”);
scanf(“%s”,temp);
buffer[0]=temp[0];
buffer[1]=’\0′;
int ret=GetPrivateProfileString(buffer,temp,0,result,100,”./date.ini”);
if(ret0)
printf(“%s\n\n\n\n\n”,result);
else
printf(“对不起,没有您要查找的单词.\n\n\n\n\n”);
}
void InsertItem()
{
char temp[100];
char buffer[2];
char result[100];
printf(“请输入要插入的单词:\n”);
scanf(“%s”,temp);
printf(“请输入单词的解释:\n”);
getchar();
scanf(“%s”,result);
buffer[0]=temp[0];
buffer[1]=’\0′;
int ret=WritePrivateProfileString(buffer,temp,result,”./date.ini”);
if(ret=0)
printf(“插入失败。\n\n\n\n\n”);
else
printf(“插入成功。\n\n\n\n\n”);
}
int main(int argc, char* argv[])
{
int index;
main:
printf(“**************MENU***************\n\n”);
printf(” 1 英译汉\n”);
// printf(“2 汉译英\n”);
printf(” 2 插入新的词条\n”);
// printf(” 3 删除已有词条\n”);
printf(” 3 清空屏幕\n”);
printf(” 4 退出\n\n”);
printf(“**********************************\n”);
do{
printf(“请选择操作(1~4):\n”);
scanf(“%d”,index); /*输入选择项*/
}while(index0||index5); /*选择项不在0~4之间重输*/
switch(index)
{
case 1:
Search();
goto main;
break;
case 2:
InsertItem();
goto main;
break;
case 3:
system(“cls”);
goto main;
break;
case 4:
return 0;
break;
default:
break;
}
return 0;
}
输出:
**************MENU***************
1 英译汉
2 插入新的词条
3 清空屏幕
4 退出
**********************************
请选择操作(1~4):
1
请输入要查询的单词:
bad
adj. 劣质的,有害的,坏的,不利的,不健康的,严重的
**************MENU***************
1 英译汉
2 插入新的词条
3 清空屏幕
4 退出
**********************************
请选择操作(1~4):
2
请输入要插入的单词:
cat
请输入单词的解释:
猫
插入成功。
**************MENU***************
1 英译汉
2 插入新的词条
3 清空屏幕
4 退出
**********************************
请选择操作(1~4):
1
请输入要查询的单词:
cat
猫
**************MENU***************
1 英译汉
2 插入新的词条
3 清空屏幕
4 退出
**********************************
请选择操作(1~4):
4
Press any key to continue
C语言递归实现字典顺序枚
/*本程序排列5个数字,每次输入一个。*/
/*所有的全排列程序都是一样的,请参照本程序以及其中的提示修改。*/
#includestdio.h
main()
{
int ar[5],i,m,n;/*注意改变数组。i、m、n都是循环控制变量。*/
int t1,t2,temp,p;
for(i=0;i=4;i++)/*注意控制输入循环。*/
scanf(“%d”,ar[i]);
for(i=0;i=4;i++)/*注意控制输出循环。*/
printf(“%d”,ar[i]);/*因为在字典序法中,这个数本身是不输出的,所以先输出来。*/
printf(“\n”);
while(1)
{
for(i=3;i=0;i–)/*从倒数第二位找起。*/
if(ar[i]ar[i+1])
{
p=i;
break;
}
t1=ar[p+1];
for(i=p+1;i=4;i++)/*注意循环范围大小需要改变。*/
if(ar[i]ar[p]ar[i]=t1)
{
t1=ar[i];
t2=i;
}
temp=ar[p];
ar[p]=ar[t2];
ar[t2]=temp;
for(m=p+1;m4;m++)/*注意循环范围大小需要改变。*/
for(n=m+1;n=4;n++)/*注意循环范围大小需要改变。*/
if(ar[m]ar[n])
{
temp=ar[m];
ar[m]=ar[n];
ar[n]=temp;
}
for(i=0;i=4;i++)/*注意循环范围大小需要改变。*/
printf(“%d”,ar[i]);
printf(“\n”);
if(ar[0]ar[1]ar[1]ar[2]ar[2]ar[3]ar[3]ar[4])/*写到头*/
break;
}
}
/*这其实是用字典序法求n个数字的全排列,你可以根据本程序的提示修改。最后的那个if语句你可以用循环来判断是否已经从大到小排列。*/
请问C语言中有类似python中字典的东西吗?
没有
可以自己构造
简单说,python 比 c 更高级,就类似与 c 比汇编语言更高级那样
C语言!!!!字典!!!!!
#include iostream
#include map
#include cstdio
#include string
using namespace std ;
mapstring,string m ;
int main( )
{
char s[42] , *p , *q ;
int i ;
while( gets( s ) s[0] != ‘\0’ )
{
p = strtok( s , ” ” ) ;
q = strtok( NULL , ” ” ) ;
m[q] = p ;
}
while( ~scanf(“%s”, s ) )
{
if( m.find( s ) != m.end() )
printf(“%s\n”, m[s].c_str() ) ;
else
printf(“eh\n”) ;
}
return 0 ;
}
C语言中字典排序是什么意思
按照字典的顺序
即按照字母表的顺序,由A-Z
如 Aaa 在Baa之前 , Aaa在Aab之前
同理,Aa在Aaaaa之前(一个为另一个前缀时,短的靠前)
c语言字典的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于C语言字典查询编写、c语言字典的信息别忘了在本站进行查找喔。