第一篇:C語(yǔ)言編程實(shí)踐題目
題目1
超市按實(shí)價(jià)收取客戶購(gòu)買的全部商品總額,而社區(qū)小店不收取總額中的小數(shù)部分,即不收取角和分。例如,在超市購(gòu)買的全部商品總額為234.90元,那么超市將收取234.90元,但是,如果在社區(qū)小店購(gòu)買的全部商品的總額是234.90元,那么社區(qū)小店僅收取234元。編寫程序,提示依次輸入購(gòu)買的各單件商品的價(jià)格(輸入任意字符結(jié)束輸入過(guò)程),然后分別調(diào)用模擬超市和社區(qū)小店收費(fèi)方式的函數(shù)得到全部商品的實(shí)際價(jià)格和應(yīng)付款。程序運(yùn)行示例:
請(qǐng)依次輸入購(gòu)買商品的價(jià)格(逗號(hào)分隔,并以輸入任意字母結(jié)束輸入過(guò)程):
1.2, 2.5, 3.6, a
實(shí)際價(jià)格總額為7.300000元
需付款(超市):7.300000元
需付款(社區(qū)小店):7.000000元
題目2
編寫程序,對(duì)從鍵盤輸入的任意5個(gè)整數(shù)進(jìn)行排序,然后再?gòu)逆I盤輸入一個(gè)數(shù),要求按排序后的規(guī)律將它插入數(shù)組中。
題目3
從鍵盤上任意輸入一個(gè)字符串S,輸出其中的數(shù)字字符。例如輸入為:sd12we$*55abc8,則 輸出結(jié)果為:12558
題目4
青年歌手參加歌曲大獎(jiǎng)賽,有11個(gè)評(píng)委對(duì)他演唱后進(jìn)行評(píng)分,記分方法是:去掉一個(gè)最高分和一個(gè)最低分后,再求出剩下的評(píng)委給出的分?jǐn)?shù)的平均分作為歌手的得分,試編程求他的最后得分。
題目5
編寫程序,數(shù)組arrayA包括10個(gè)整數(shù),把a(bǔ)rrayA中所有的后項(xiàng)除以前項(xiàng)之商取整后存入數(shù)組arrayB,并按每行3個(gè)元素的格式輸出數(shù)組arrayB。
題目6
如果一個(gè)數(shù)字十進(jìn)制表達(dá)時(shí),不存在連續(xù)兩位相同,則稱之為“不重復(fù)數(shù)”。例如,105、1234和12121都是“不重復(fù)數(shù)”,而11、100和1225不是。編寫程序,從鍵盤輸入一個(gè)正整數(shù)A(A<100000),求得大于A的最小“不重復(fù)數(shù)”。例如,輸入54,輸出56;輸入10,輸出12;輸入21099,輸出21201。
第二篇:編程語(yǔ)言學(xué)習(xí)心得
程序語(yǔ)言學(xué)習(xí)的總結(jié)
通過(guò)兩年的學(xué)習(xí),我們基本上掌握了C語(yǔ)言,C++和C#三個(gè)編程課程。對(duì)于程序設(shè)計(jì)語(yǔ)言的學(xué)習(xí),分為學(xué)習(xí)語(yǔ)法規(guī)定、掌握程序設(shè)計(jì)方法、提高程序開發(fā)能力,這些都必須通過(guò)充分的實(shí)際上機(jī)操作才能完成。課程上的安排除了課堂講授以外,學(xué)院設(shè)有專門課堂到實(shí)驗(yàn)室進(jìn)行上機(jī)操作實(shí)驗(yàn)。
要利用c語(yǔ)言學(xué)到的知識(shí)編寫c語(yǔ)言程序,即把c語(yǔ)言作為工具,通過(guò)上機(jī)才能檢驗(yàn)自己是否掌握c語(yǔ)言、自己編寫的程序是否能夠正確地解題。通過(guò)上機(jī)實(shí)驗(yàn)來(lái)驗(yàn)證自己編制的程序是否正確。在這種思想支配下,可能你會(huì)想辦法去“掩蓋”程序中的錯(cuò)誤,而不是盡可能多地發(fā)現(xiàn)程序中存在的問(wèn)題。自己編好程序上機(jī)調(diào)試運(yùn)行時(shí),可能有很多你想不到的情況發(fā)生,通過(guò)解決這些問(wèn)題,可以逐步提高自己對(duì)c語(yǔ)言的理解和程序開發(fā)能力。
在原有的C語(yǔ)言的基礎(chǔ)知識(shí)之上,初步接觸C++時(shí)感到比較簡(jiǎn)單易懂。但隨著之后的步步深入學(xué)習(xí),C++的不同之處以及其優(yōu)勢(shì)逐。從第二章引入了C++簡(jiǎn)單程序的設(shè)計(jì)。包括一些C++語(yǔ)言的概述,基本數(shù)據(jù)類型和表達(dá)式,數(shù)據(jù)的輸入與輸出,算法的基本東芝結(jié)構(gòu),以及自定義類型數(shù)據(jù)等知識(shí)。此部分多與C語(yǔ)言相似。之后又學(xué)習(xí)了函數(shù)的相關(guān)內(nèi)容,這里學(xué)到了新的知識(shí)要點(diǎn)----函數(shù)重載。該內(nèi)容尤其在現(xiàn)在做課程設(shè)計(jì)的時(shí)候尤為重要。類是C++語(yǔ)言的精華之所在,在學(xué)習(xí)中,我感覺(jué)到類和C語(yǔ)言中的結(jié)構(gòu)體有很大的相似之處,但在類中的構(gòu)造函數(shù)、拷貝構(gòu)造函數(shù)以及類的組合,經(jīng)常弄混淆一些概念。在這之后又學(xué)習(xí)了類的繼承與派生。這使得類與類之間形成了樹狀圖的模型,各子類可以訪問(wèn)到父類的一些數(shù)據(jù)成員,同樣也實(shí)現(xiàn)了數(shù)據(jù)的之間的“共享”。我個(gè)人在編寫派生類的構(gòu)造函數(shù)和拷貝構(gòu)造函數(shù)時(shí),感覺(jué)很不熟練,后面章節(jié)的多態(tài)性主要學(xué)習(xí)了運(yùn)算符的重載,其本質(zhì)就是函數(shù)的重載。
在學(xué)習(xí)C#中,類是具有相同特性和行為的對(duì)象的抽象。它使用關(guān)鍵字class聲明的。在c#中僅允許單個(gè)繼承,類只能從一個(gè)基類繼承實(shí)現(xiàn)。但是一個(gè)類可以實(shí)現(xiàn)一個(gè)以上的接口。對(duì)象是人們要進(jìn)行研究的任何事物,從最簡(jiǎn)單的整數(shù)到復(fù)雜的飛機(jī)等局可以看對(duì)象,它不僅表示具體的事物,還能表示抽象的規(guī)則、計(jì)劃或者事件。接口只是包含方法、委托或事件的簽名。方法的實(shí)現(xiàn)是在實(shí)現(xiàn)接口的類中完成的。接口可以是命名空間或類的成員,并可以包含下列成員:每個(gè)C#可執(zhí)行文件都有一個(gè)入口—Main方法:static void Main()修飾符public表示可以在任何地方訪問(wèn)該方法。所以可以在類的外部調(diào)用它。修飾符static表示方法不能在類的實(shí)例上執(zhí)行,因此不必先實(shí)例化類在調(diào)用。在變量聲明時(shí):變量是類或者結(jié)構(gòu)中的字段,如果沒(méi)有顯示初始化,創(chuàng)建這些變量時(shí),其值就是默認(rèn)的0。變量是方法的局部變量就必須在代碼中顯示初始化,之后才能在語(yǔ)句中使用它們的值。
課堂上要講授許多關(guān)于語(yǔ)法規(guī)則,要使用這些工具解決問(wèn)題,通過(guò)多次上機(jī)練習(xí),對(duì)于語(yǔ)法知識(shí)有了更深刻的認(rèn)識(shí),在理解的基礎(chǔ)上就會(huì)自然而然地掌握。一個(gè)程序從編輯、編譯、連接到運(yùn)行,都要在一定的外部操作環(huán)境下才能進(jìn)行。通過(guò)上機(jī)實(shí)驗(yàn),熟練地掌握開發(fā)環(huán)境,為以后真正編寫計(jì)算機(jī)程序解決實(shí)際問(wèn)題打下基礎(chǔ)。
第三篇:C語(yǔ)言編程
#include(stdio.h)
main()
{ int question[4]={-1,-1,-1,-1},i=0,j=0,k=0,A=0,B=0,answer[4]={0};
char again='y';
while(again=='y'){ srand((int)time(0));
while(i4){ k=(int)rand()%10;
for(j=0;ji;j++)if(k==question[j]){ k=-1;break;}
if(k==-1)continue;question[i]=k;i++;}/*while i*/
for(i=8;i0;i--)/*還有8次機(jī)會(huì)*/
{ A=0;B=0;printf(“n你還剩下%d次機(jī)會(huì)?!?i);
printf(“n請(qǐng)輸入四個(gè)0-9之間的數(shù)字,中間用空格隔開n”);for(j=0;j4;j++)scanf(“%d”,&answer[j]);
for(j=0;j4;j++)
for(k=0;k4;k++)
{ if(answer[j]==question[k]){ if(j==k)A++;else B++;} }/*for*/
if(A==4){ again='0';
printf(“n你贏了,還繼續(xù)猜嗎?(y/n)”);
while(again!='y'&&again!='n')
scanf(“...%c”,&again);break;}/*if*/
printf(“n%dA%dB”,A,B);if(i==1){ again='0';
printf(“n你輸了,正確答案是”);
for(j=0;j4;j++)
printf(“%dt”,question[j]);
printf(“n還繼續(xù)嗎?(y/n)”);
while(again!='y'&&again!='n')scanf(“%c”,&again);
printf(“%c”,again);break;}/*if*/ }/*for changce*/ }/*while again*/ printf(“感謝您玩這個(gè)游戲?!?;}
第四篇:編程 - 題目
第一題:
不使用任何庫(kù),編寫一個(gè)函數(shù)char*remove(const char* src,char c),參數(shù)src為輸入的字符串,長(zhǎng)度不確定,不為空。參數(shù)c為任何可能的字符返回值。Src中刪除了所有字符c的字符串。對(duì)是否通過(guò)動(dòng)態(tài)分配內(nèi)存的方式返回這個(gè)字符串還是使用靜態(tài)的內(nèi)存不做限制。
第二題:
如下這段代碼是否有錯(cuò)誤,如果有,請(qǐng)找出錯(cuò)在哪里寫出原因并改正
Voidf()
{
Charstr[6]=”12345”,Constchar*p1=str,Char *constp2=str
P1[0]=’6’
P2{0}=’7’
P1=NULL
P2=NULL
}
第三題:
調(diào)用函數(shù)Function2之后,x, y, z三個(gè)變量的值是什么?
VoidFunction2(int x,int& y, int* z)
{
X=1;
Y=2
*z=3;
Return;
}
Intx,y,z=0
Function2(x, y, &z);
第四題:
正則表達(dá)式.**123d能與以下哪些選項(xiàng)匹配? CD
A.******123
B.*****_1234
C.******1234
D._*1234
E._*12
3寫出下面的生活場(chǎng)景可以用那種數(shù)據(jù)結(jié)構(gòu)描述
(1)汽車進(jìn)出加油站加油。(2)貨車裝貨、卸貨。____
第六題:
在32位操作系統(tǒng)中A占__ 字節(jié),B占____字節(jié)
structA
{
inta;
int*b
charc;
}
union B
{
inta;
charb;
char * c;
};
閱讀下面的C/C++源代碼,請(qǐng)指出哪些代碼是錯(cuò)誤的或有風(fēng)險(xiǎn),如果有,請(qǐng)指出錯(cuò)誤是什么? const int * foo1()
{
int a = 10;
return &a;
}
const int * foo2()
{
int a = new int(10);
return a;
}
const int * foo3()
{
static int a = 10;
return &a;
}
int main(int artc,char* argv[])
{
const int *p1=foo1();
const int *p2=foo2();
const int *p3=foo3();
return 0;
}
第八題:
調(diào)用函數(shù)Founction2之后,x,y,z三個(gè)變量的值是什么?
void Function2(int x,int &y,int *z)
{
X = 1;
y = 2;
*z=3;
Return;
}
int x,y,z=0;
Function2(x,y,&z);
(必知必會(huì))在32位X86平臺(tái),下述代碼段輸出結(jié)果是? unsigned int i=1;
unsigned int j=2;
printf(“0x%08xn”,i,j);
if(i – j >0){
Printf(“%d>%d”,i,j);
}else{
printf(“%d<=%d”,i,j);
}
輸出為:,第九題:
請(qǐng)指出以下程序中的錯(cuò)誤
Void test1()
{
char string [11];
char *str1=”Sinfor test”;
strcpy(string,str1);
}
第十題:
有數(shù)組定義int a[2][2]={{1},{2,3}};則a[0][1]的值為__A__
A0;B1;C2;D3;
設(shè)有以下定義
Int a=0double b=1.25char c=’a’#define d 2 則下面語(yǔ)句中錯(cuò)誤的是____
Aa++Bb++Cc++Dd++
第十一題:
請(qǐng)問(wèn)運(yùn)行TEST函數(shù)會(huì)有什么樣的結(jié)果
Void test(void)
{
Char*str=(char*)malloc(100);
Strcpy(str,”hello”);
Free(str);
If(str!=NULL)
{
Strcpy(str,”world”);
Printf(str);
}
}
第五篇:vb語(yǔ)言編程教案
課
題:vb語(yǔ)言編程概述 課 時(shí):2課時(shí) 授課時(shí)間:2011.09.05 課堂類型:講授
教學(xué)目的:1.熟悉VB界面和VB集成開發(fā)環(huán)境;
2.在實(shí)際操作中學(xué)會(huì)編簡(jiǎn)單的VB應(yīng)用程序;
教學(xué)要求:1.掌握VB基礎(chǔ)知識(shí)。
2.會(huì)編簡(jiǎn)單的VB應(yīng)用程序。
教學(xué)重點(diǎn):1.熟悉VB集成開發(fā)環(huán)境
2.編寫簡(jiǎn)單VB應(yīng)用程序。
教學(xué)難點(diǎn):在熟悉VB界面的同時(shí)學(xué)習(xí)編寫簡(jiǎn)單VB應(yīng)用程序 教學(xué)方法:講授 教學(xué)過(guò)程:
一、VB簡(jiǎn)介
BASIC是英文Beginner’s All-purpose Symbolic Instruction Code(初學(xué)者通用符號(hào)指令代碼)的縮寫,它是專門為初學(xué)者設(shè)計(jì)的高級(jí)語(yǔ)言。Visual Basic是Microsoft公司于1991年推出的基于窗口的可視化程序設(shè)計(jì)語(yǔ)言。
a.“Visual”是“可視化的”、“形象化的”的意思。b.因此Visual Basic也具有易學(xué)易用的特點(diǎn)
c.目前Visual Basic的最新版本是Visual Basic 6.0(簡(jiǎn)稱VB 6.0)
二、啟動(dòng)VB
1、首先顯示“新建工程”對(duì)話框
直接單擊“打開”按鈕,創(chuàng)建“標(biāo)準(zhǔn)EXE”類型應(yīng)用程序,進(jìn)入集成開發(fā)環(huán)境主界面。
2、集成開發(fā)環(huán)境中的各元素 1)標(biāo)題欄:用來(lái)顯示窗口的標(biāo)題。2)菜單欄 3)工具欄 4)工具箱 5)窗體窗口 6)工程窗口 7)屬性窗口 8)窗體布局窗口
三、通過(guò)一個(gè)簡(jiǎn)單的應(yīng)用程序快速入門
【例1.1(實(shí)訓(xùn)1,p16)】制作一個(gè)的一個(gè)簡(jiǎn)單的應(yīng)用程序的運(yùn)行界面。它由一個(gè)窗體、一個(gè)文本框、一個(gè)標(biāo)簽和一個(gè)命令按鈕組成。當(dāng)用戶單擊命令按鈕“顯示”時(shí),文本框中出現(xiàn)“教你學(xué)VB”。1.新建工程 2.添加文本框Text1 3.添加命令按鈕Command1 4.添加標(biāo)簽Label1 5.設(shè)置屬性 6.編寫事件過(guò)程代碼
前面的工作把應(yīng)用程序的界面設(shè)計(jì)好了,屬性也設(shè)置完畢。但現(xiàn)在應(yīng)用程序并不能實(shí)現(xiàn)實(shí)際的功能。為了使它具有一定的功能,還必須為對(duì)象編寫實(shí)現(xiàn)某一功能的事件過(guò)程代碼。1)雙擊窗體上的“顯示”按鈕,屏幕上出現(xiàn)代碼窗口,程序代碼就在這里編寫。編寫如下事件過(guò)程:
Private Sub Command1_Click()Text1.Text = “歡迎使用VB” End Sub 2)運(yùn)行應(yīng)用程序 3)保存應(yīng)用程序
VB應(yīng)用程序至少有兩種文件需要保存: · 窗體文件(.frm)· 工程文件(.vbp)4)生成EXE文件
四、總結(jié)步驟
設(shè)計(jì)VB應(yīng)用程序主要有以下4個(gè)步驟:(1)設(shè)計(jì)用戶界面。(2)設(shè)置屬性。(3)編寫代碼。(4)保存和運(yùn)行調(diào)試程序,生成EXE文件。
五、知識(shí)延伸
1、只有一個(gè)文本框的實(shí)例 編寫如下事件過(guò)程:
Private Sub Command1_Click()Text1.Text = “教你學(xué)VB“ End Sub
2、多個(gè)文本框時(shí) 編寫如下事件過(guò)程:
Private Sub Command1_Click()Text1.Text = ”教你學(xué)VB“ Text2.Text = “歡迎使用VB“ End Sub
3、按照系統(tǒng)的元件特性分類(分別舉例說(shuō)明)課后實(shí)訓(xùn)1 第二個(gè)命令按鈕:清除 第三個(gè)命令按鈕:退出 步驟:
1.添加2個(gè)命令按鈕 2.雙擊按鈕,進(jìn)入編程狀態(tài) 3.和顯示按鈕命令編程相似 編寫如下事件過(guò)程: Private Sub Command2_Click()Text1.Text = ” “ End Sub Private Sub Command3_Click()End End Sub
4、圖片的加載方法
Private Sub Form_Load()Image1.Picture = LoadPicture(App.Path + “1.BMP”)End Sub
六、小結(jié) 1.熟悉界面。
2.掌握完整編程過(guò)程以及運(yùn)行及調(diào)試程序的過(guò)程。