『壹』 用c語言編寫 手機用拼音輸入法的實現
關於嵌入式設備輸入法(手機輸入法) C語言實現
目前我在調試一款設備,類似於手機,有0-9,*,#,確定,退出,上下左右這些鍵。
苦於沒有輸入法。
顯示漢字那一塊目前已搞定,我貼出來原理:
漢字由兩個機內碼組成qh,wh,
第一步:
qh-=0xa0; //機內碼轉成區位碼-0xa0
wh-=0xa0;
第二步:
定位字型檔裡面的字:
offset=(94*(qh-1)+(wh-1))*32; /* 定位字型檔的字 */
第三步:
顯示到屏上面16*16個點一個漢字
for(i=0;i<16;i++)
{
val16=((hzk16[i]<<8)&0xff00) + ((hzk16[i]>>8)&0xff);
for(j=0;j<16;j++)
{
if(val16 & 0x8000) p16[i*nDataWidth+j]=nColor&0xffff;
val16=val16<<1;
}
}
說了半天的顯示其實主題是輸入法,只要能鍵出機內碼就行。
問題的關鍵就在這里了,目前我才剛開始開發。希望喜歡的朋友一起交流。
網上找了些東西參考:
直接在Keil下模擬的T9拼音輸入法(完整版)
嵌入式系統中文輸入法的設計
這兩個東西也比較重要:
漢字編碼原理 文中講了漢字編碼的整下原理,一目瞭然。
點陣漢字顯示 文中講了點陣的漢字的顯示方法,配合上面的代碼理解。
16x16字型檔文件下載,注意右鍵另存為後面把.jpg的改成.bin即可.
用什麼問題可以多多交流。[email protected].或者QQ郡里
手機爆中文輸入法侵權糾紛 幾乎所有品牌捲入
信產部制定手機輸入法標准
附:剛移植了一個51單片機的拼音輸入法,主要就是一個索引表。還得做一些聯想等功能。源碼我共享在郡裡面了。
『貳』 如何用C語言編寫一個簡單的輸入法程序,要求可以輸入
#include<stdio.h>
main()
{
int n;
scanf("%d",&n);
printf("n=%d",n);
}
『叄』 寫c語言代碼的時候一般用什麼輸入法
在C語言中,合法的標識符由數字,字母,下劃線組成。
所有的C語言運算符,均有字母,或英文符號組成。
於是,所有的全形符號,全形字母,以及漢字在C語言代碼中是不允許出現的(注釋中可以有)。
所以,寫C語言代碼的時候,為防止誤輸入,一般用英文輸入法進行輸入。
『肆』 用c語言編寫的代碼程序
c語言的源程序語法結構如下:
#include<stdio.h>//預處理語句
/* 自定義函數1*/
/* 自定義函數2*/
int main()
{
//main()主函數執行調用以上定義的函數的順序
return 0;//執行完畢 退出
}
示例如下:
#include <stdio.h>
int main()
{
printf("welcome to c language!!!\n");
return 0;
}
『伍』 最簡單的C語言代碼
最簡單的C語言代就是輸出「helloWord」,通常是作為初學編程語言時的第一個程序代碼。具體代碼如下:
#include <stdio.h>
int main(){
printf("Hello, World! ");
return 0;
}
(5)c語言輸入法項目代碼擴展閱讀:
1、程序的第一行#include <stdio.h>是預處理器指令,告訴 C 編譯器在實際編譯之前要包含 stdio.h 文件。
2、下一行intmain()是主函數,程序從這里開始執行。
3、下一行printf(...)是C中另一個可用的函數,會在屏幕上顯示消息"Hello,World!"。
4、下一行return0;終止main()函數,並返回值0。
『陸』 C語言中怎樣編寫代碼來代替鍵盤輸入(就是在代碼中給出所需輸入的值)
變數賦初值,如:定義一個整型 int a=0; 定義一個數組 int a[3]={0,1,2}; 定義一個指針 int *p=1;等。好多呢,在你定義數據時就把它的值寫上就不用scanf了
『柒』 c語言編程代碼
兩種方法我寫在一起,可以獨立拆開。
#include <stdio.h>
void finda1(char a[3][10]);
void finda2(char a[3][10]);
void show(char (*p)[10]);
int main()
{
char a[3][10]={{"gehajl"},{"788a987a7"},{"ccabbbabbb"}};
printf("原數組內容: ");
show(a);
printf(" 1、用數組指針的方法(函數finda1): ");
finda1(a);
printf("執行後: ");
show(a);
printf(" --------------------- ");
char b[3][10]={{"gehajl"},{"788a987a7"},{"ccabbbabbb"}};
printf("原數組內容: ");
show(a);
printf(" 2、用指針數組的方法(函數finda2): ");
finda2(b);
printf("執行後: ");
show(b);
return 0;
}
void finda1(char a[3][10])
{
int i,j;
char (*p)[10]=a;
for(i=0;i<3;i++)
for(j=0;j<10;j++)
if(p[i][j]=='a')
printf("發現:第%d行第%d個元素是『a』,已替換 ",i+1,j+1),p[i][j]='1';
}
void finda2(char a[3][10])
{
int i,j;
char *p[3]={&a[0][0],&a[1][0],&a[2][0]};
for(i=0;i<3;i++)
for(j=0;j<10;j++)
if(p[i][j]=='a')
printf("發現:第%d行第%d個元素是『a』,已替換 ",i+1,j+1),p[i][j]='1';
}
void show(char (*p)[10])
{
int i,j;
for(i=0;i<3;i++,printf(" "))
for(j=0;j<10;j++)
printf("%c ",p[i][j]);
}
『捌』 求簡單C語言程序代碼!
輸入2個正整數m和n,求其最大公約數和最小公倍數
#include
#include
int main()
int m,n,p,q,s,r;
printf("請輸入兩個正整數;m,n ");
scanf("%d,%d",&m,&n);
#include<stdio.h>
main()
int a,b,t=0;
scanf("%d %d",&a,&b);
if (a<b)
printf("%d %d %d %d %d",(a+b),(a-b),(a/b),(a*b),(a%b));
}
主要特點
C語言是一種結構化語言,它有著清晰的層次,可按照模塊的方式對程序進行編寫,十分有利於程序的調試,且c語言的處理和表現能力都非常的強大,依靠非常全面的運算符和多樣的數據類型,可以輕易完成各種數據結構的構建,通過指針類型更可對內存直接定址以及對硬體進行直接操作,因此既能夠用於開發系統程序,也可用於開發應用軟體。
以上內容參考:網路-c語言
『玖』 C語言基本代碼,求詳細解釋,越詳細越好。
解釋如下:
#include"stdio.h"//頭文件
#include"math.h"//數學庫函數
double pcos(double a);//聲明子函數
main()//主函數
{
double x,y;//定義x,y這兩個雙精度數據
printf("please input one number:");
//輸出please input one number:
scanf("%lf",&x);//出入一個數據並賦值給x
y=pcos(x);//把x傳入pcos函數,返回值賦值給y
printf("cos of %lf is %lf ",x,y);//輸出cos of x is y
}
double pcos(double a)//定義子函數名,形式參數
{
double b;//定義雙精度數據b
b=cos(a);//計算cos(a),並賦值給b
return b;//返回b的值
}
(9)c語言輸入法項目代碼擴展閱讀:
注釋就是對代碼的解釋和說明,其目的是讓人們能夠更加輕松地了解代碼。注釋是編寫程序時,寫程序的人給一個語句、程序段、函數等的解釋或提示,能提高程序代碼的可讀性。
注釋就是對代碼的解釋和說明。目的是為了讓別人和自己很容易看懂。為了讓別人一看就知道這段代碼是做什麼用的。
正確的程序注釋一般包括序言性注釋和功能性注釋。序言性注釋的主要內容包括模塊的介面、數據的描述和模塊的功能。模塊的功能性注釋的主要內容包括程序段的功能、語句的功能和數據的狀態。
『拾』 求一段C語言或C++拼音輸入法的代碼
#include <iostream>
using namespace std;
#define countof(x) sizeof(x)/sizeof(x[0])
int main()
{
char szText[256];
int nBytes = 0;//位元組數
int nSpace = 0;//空格數
int nRow = 0;//行數
int nAbc = 0;//大小寫字母數
cout<<"請輸入要統計的字元串,以#號結束"<<endl;
cin.get( szText, countof(szText), '#' );
for ( int i = 0; i < strlen(szText); i++ )
{
if ( (szText[i] >= 'a' && szText[i] <= 'z')
|| (szText[i] >= 'A' && szText[i] <= 'Z') )
{
nAbc++;
}
else if ( szText[i] == ' ' )
{
nSpace++;
}
else if ( szText[i] == '\n' )
{
nRow++;
}
nBytes++;
}
cout<<"位元組數:"<<nBytes<<endl;
cout<<"空格數:"<<nSpace<<endl;
cout<<"行數:"<<nRow<<endl;
cout<<"大小寫字母數:"<<nAbc<<endl;
return 0;
}