㈠ c語言編程題,設計英漢詞典的課設題型
#include<stdio.h>
#include<string.h>
#include<malloc.h>
#include<math.h>
#define min(A,B) (A<B?A:B)
#define max(A,B) (A<B?B:A)
typedef struct Dict
{
char en[30];
char zh[30];
struct Dict* next;
} Dict;
int main(void)
{
Dict* head = 0;
int stucount=0;//數量
while(1)
{
printf("輸入操作號:1:詞彙輸入 2:瀏覽 3:漢英 4:英漢 5:刪除 6:退出:");
int quest;
scanf("%d",&quest);
scanf("%*[^ ]");
if(quest==6)break;
else if(quest==1)
{
Dict* newDict = (Dict*)malloc(sizeof(Dict));
printf("請輸入中文:");
scanf("%29s", newDict->zh);
scanf("%*[^ ]");
printf("請輸入英文:");
scanf("%29s", newDict->en);
scanf("%*[^ ]");
//插入鏈表首,這樣最新添加的顯示在最上面,容易看見效果
newDict->next=head;
head=newDict;
++stucount;
}
else if(quest==2)
{
if(head==0)
printf("沒有單詞! ");
else
{
printf("開始瀏覽單詞: ");
while(1)
int st=0,en=min(st+10,stucount);
{
printf("瀏覽:%d個到%d個單詞 ",st+1,en);
Dict* stu = head;
for(int i=0; i<st; ++i)
{
stu=stu->next;
}
for(int i=st; i<en; ++i)
{
printf("中文:%s 英文:%s ",stu->en,stu->zh);
stu=stu->next;
}
printf("輸入操作號:1 向後翻頁;2 向前翻頁;-1 退出:");
int squest;
scanf("%d",&squest);
scanf("%*[^ ]");
if(squest==1)
{
if(en!=stucount) st=en;
}
else if(squest==2)
{
st=max(0,st-10);
}
else if(squest==-1)break;
en=min(st+10,stucount);
}
}
}
else if(quest==3 || quest==4 || quest==5)
{
char a[30];
if(quest==3)printf("請輸入漢語詞彙:");
else if(quest==4) printf("請輸入英語詞彙:");
else if(quest==5) printf("請輸入待刪除的詞彙(漢英均可):");
scanf("%29s", a);
scanf("%*[^ ]");
Dict* stu = head;
Dict* lststu = 0;
int flag=0;
while(stu!=0 && flag==0)
{
if(quest==3)
{
if(strcmp(a,stu->zh)==0)
{
printf("英語為:%s ",stu->en);
flag=1;
}
}
else if(quest==4)
{
if(strcmp(a,stu->en)==0)
{
printf("漢語為:%s ",stu->zh);
flag=1;
}
}
else if(quest==5)
{
if(strcmp(a,stu->en)==0 || strcmp(a,stu->zh)==0)
{
stucount--;
if(lststu!=0)
lststu -> next = stu -> next;
else
head = stu -> next;
printf("已刪除! ");
flag=1;
}
}
lststu=stu;
stu=stu->next;
}
if(flag==0)
{
printf("沒有查到詞彙! ");
}
}
}
return 0;
}
你看看對不對,能不能跑吧。如果有新的需求我可以繼續寫。代碼應該很清晰了,如果你哪不懂可以給你解釋。歡迎追問。
㈡ 求C語言大神幫我翻譯一下這個英文題目!
寫一個需要3個參數的函數
第一個參數是一個字母
第二個參數表示第一個參數(即字母)在一行里被列印的次數
第三個參數表示要列印幾行
比如當函數使用( 'a', 5, 2 )作為參數時輸出的結果應該如下:(兩行,每行5個字母『a』)
aaaaa
aaaaa
㈢ 用c語言編寫電子英漢詞典。
為了保證效率,建議使用哈希結構或者2岔樹結構。
只需要提供插入刪除和檢索功能就可以了。
另外為字典的每個單元定義一個結構。
可以包含左右指針,自己的名詞,及解釋,還可以有其他東西。
然後實現樹型結構的刪除和檢索功能就可以了。這個在數據結構的書上有吧。
然後寫一個主函數就可以了。
㈣ c程序設計中碰到的英譯漢的問題
接受那些不是為程序使用的數據可能導致系統失敗。
應採取以下措施來減少數據輸入錯誤。
如果實用的話應該引入顯式轉型以使設計者的意圖更為明顯。可以創造一些數學或邏輯方面的混合有符號、無符號變數。
意料之外的結果。在有符號的16位整數計數制情況下,十六進制數FFFF就是-1;而在無符號的16位整數計數制下卻是65535。這一點區別會改變結果。
【這些在程序設計方面屬於需要了解的背景知識,在計算機組成方面會詳細講,包括反碼、補碼及用反碼補碼進行加減乘除運算】
㈤ 翻譯一道c語言題目
怎麼這么多啊,我建議你可以用金山快譯試試把它翻譯出來
㈥ 做那個c語言課程設計,題目是英漢詞典,做了兩天不會做,有沒有哪位
這個不是一句兩句就能說清的,下面為你提供電子詞典,其它要你自己想哦!
#include <windows.h>
#include <stdio.h>
#include <malloc.h>
#include <winbase.h>
#include <process.h>
void Search()
{
char ret;
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(ret>0)
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(index<0||index>5); /*選擇項不在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;
}
恩,程序差不多就是這么多了,ITjob官網有c語言的相關文章和帖子,其他論壇或者博客也有。如果上面的回答沒達到你的要求,那就自己再花點時間找找哈。不懂的問題,可以多去幾個渠道找答案,希望能幫到你。
㈦ 題目:簡單的英譯漢C語言程序設計
#include<stdio.h>
main()
int a,b,c,d;
a=1,b=2,c=3=d=4;
printf("c%c%c%c%";a,b,c,d);
㈧ C語言編程題求翻譯
意思是:使用特定數量(可定義,一般為4個)的空格鍵代替編程中的Tab鍵,若是有一組Tab鍵(製表位),說明每n列一個Tab,n應為一個變數或符號參數。
(這樣做的目的是為了讓你的代碼在不同的編輯環境下都能保持統一的縮進、對齊,而不會出現對齊混亂,影響閱讀)
㈨ 幫忙C語言題目翻譯成,這道題要求我干什麼
1
寫程序文件復制拷貝現有的檔案到另一個文件。該計劃應要求使用者輸入源文件名和目標文件的名稱。該文件的副本應當以二進制模式。使用fseek ( )移動的源文件和ftell ( )來判斷文件的大小(如果需要) 。讀取數據從源文件,並寫出讀入的值在目的地文件中循環。讀取和寫入數據塊1024位元組。
2下列程序讀取一個文本文件中包含數字數據存儲在分隔欄的一個空白。收件的代碼和編譯您的計算機上。創建一個文本文件名為myfile.txt載有幾個欄( 3 5例)的數字數據(實數)和測試計劃。
分析代碼,包括評論線,說明如何實現該計劃的任務。修改代碼,以便該計劃還創建一個新的文本文件存儲的地方只有整數部分(拋棄factionary部分)的實際數字儲存在myfile.txt 。新的文件應寫入數據在相同的格式( 3 5欄分隔空間) ,作為原始檔案。包括報表,檢查如果該文件是打開和關閉成功。只提交了最後,評論的代碼。
三
創建一個文本文件,其中包含20行20整數以空格分隔。整數應在0-9的范圍,並以空格分隔。收件程序如下的內容納入了20 20 (二維)陣列的整數。該計劃就應該利用這個數組初始化一個20x21字元數組的每個整數贊同從0到9 ,同一個字元從『 A 』至『 J ' 。例如, 0可與『 A 』 ,而9 ' J ' 。 21字元的每一行中的字元數組應該是空字元' \ 0 ' ,使數組的數組20字元串。有計劃顯示所產生的(圖片)的一系列字元(印刷行了行字元串)在屏幕上,並把它寫在一個文本文件。
哪裡不對再修改!
㈩ C語言英譯漢字典代碼怎麼改成漢譯英代碼
if(!strcmp(give,english)){
這一句改成
if(!strcmp(give,chinese)){
就行了。