版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
C語言程序設計實驗指導實驗一:C語言的運行環(huán)境及運行C程序的方法(2學一、實驗目的和要求CCC二、實驗內容VisualC++6.0VisualC++6.0VisualC++6.0C三、實驗步驟、過VisualC++6.0點擊桌面開始→所有程序→VisualC++6.0→VisualC++6.0C1、在下圖中先點擊close關閉tipoftheday框3filenew4、在new框中點擊Win32ConsoleApplication,如圖5、在new框中的Projectname中寫文件名,名字自定,如1016、在new框中的Location中選擇文件路徑,中統(tǒng)一寫,例如, 7OK9、在NewProjectInformation框中點擊OK按鈕11projectaddtoprojectnew12、彈出new框,在new框中選C++SourseFile欄13File下面的空白欄起名字,如:first14OK 果,即0error(0),0warning(s)。17、點擊 ,執(zhí)行程序,出現(xiàn)如下結果圖1_2.cpp,1_3.cppbCc、Error錯誤--致命錯的程序不能產生目標程序、執(zhí)行程序,必須修改程序,并重四、源程序、測試數(shù)據(jù)、結果C程序。(#includeintmain(intargc,char*argv[])(不管為什么這樣寫,當作格式記 原因,命令行參數(shù){ oworld!\n”);return0;}#includeintmain(intargc,char{inti=9return0;}#includeintmain(intargc,char{inti=9,j,s;s=i+j;return0;}五、實驗小結和思(1)C(2)C答:C實驗二:數(shù)據(jù)類型、運算符和表達式(2學時一、實驗目的和要求C的算術運算符,以及包含這些運算符的表達式,特別是自增++和自減--運C二、實驗內容VisualC++6.0CC三、實驗步驟、過程VisualC++6.0(1相同5(1相同VisualC++6.0四、源程序、測試數(shù)據(jù)、結果#include<stdio.h>intmain(intargc,char int /*整型數(shù)據(jù)表示char /*/* /*請思考,輸出結果為什么是x=10,y=10,z=10*/ /*請思考,輸出結果為什么是x=8,y=10,z=16/*以下是字符型數(shù)據(jù)的輸出*//*c1=M,c2=4d,c3=115,c4=77*//*c1=M,c2=M,c3=M,c4=M*//*c1=77,c2=77,c3=77,c4=77/*字符型數(shù)據(jù)參與算術運算 /*c=m,c=109*/return0;}在VC中,整型(int型4個字節(jié),函數(shù)sizeof(int)可求得分配空間)的數(shù)據(jù)范圍是 #includeintmain(intargc,char{int printf("b=%d\n",b); printf("b=%d\n",b);return0;}b=-b=7#includeintmain(intargc,char{floata,b;return0;}已知:a=2,b=3,x=3.9,y=2.3(a,b是整型,x,y是浮點型,計算算術表達式(float)(a+b)/2+(int)x%(int)y(要求文件名:2_4.cpp)ar存放結cr的值就是表達式的值。#includeintmain(intargc,char{intfloatx=3.9,y=2.3;floatr;return}#includeintmain(intargc,char{inti,j,m,n;printf("i=%d,j=%d,m=%d,i=%d\n",i,j,m,n);return0;}i=9,j=11,m=9,實驗三:簡單的程序設計及邏輯結構程序設計(2學時一、實驗目的和要求C語言中使用最多的一種語句——Cifswitch二、實驗內容getcharc1、c2putcharprintf函A、B、C、D、E。90分以上為A,81~89分為B,70~79分為C,60~69分為D,60分以下為E。5位的正整數(shù),要求:①求出它是幾位數(shù);②分別打印出每三、實驗步驟、過程VisualC++6.0(1相同4(1相同VisualC++6.0四、源程序、測試數(shù)據(jù)、結果1:#include<stdio.h>intmain(intargc,char{intfloatx=67.8564,y=-charlong unsignedu=65535;return}::#includeintmain(intargc,char{inta,b;floatx,y;charc1,c2;scanf("a=%db=%d",&a,&b);scanf("%f%e",&x,&y);scanf("%cprintf("%d,%d,%.1f,%e,%c,%c\n",a,b,x,y,c1,c2);return0;}getcharc1、c2putcharprintf函#includeintmain(intargc,char{charc1,c2;return0;}注:90A級,81~89B級,70~79C級,60~69D級,60分以下為E(要求文件名:3_3.cpp)#includeintmain(intargc,char{intscore,s;charprintf("pleaseinputscore:");s=score/10;{ 9:grade='A';break; 8:grade='B';case7:grade='C';break;case6:grade='D';break;case5:case4 3 2 1 0:grade='E';break;default:break;}return0;}5位的正整數(shù),要求:①求出它是幾位數(shù),并輸出;②分別#includeintmain(intargc,char{long{elseif(b!=0)printf("4=%ld,%ld,%ld,%ld\nelseprintf("3=%ld,%ld,%ld\n",c,d,e);elseif(d!=0)printf("2=%ld,%ld\n",d,e);elseif(e!=0)printf("1=%ld\nprintf("0=0\n}return}實驗四:循環(huán)控制程序設計(2學時一、實驗目的和要求while語句,do-whilefor二、實驗內容(可選做以下題目mn從鍵盤輸入一個int61,2,3;201,2,4,5,10。1001000VisualC++6.0(1相同5(1相同VisualC++6.0四、源程序、測試數(shù)據(jù)、結果mn,求它們的最大公約數(shù)和最小公倍數(shù)(要求文件名#includeintmain(intargc,char{intx,y,i,m,scanf("%d%d",&x,if(x>{m=}{}
m= m=x>y?y:for(i=1;i<=m;{if((x%i==0)&&(y%i=={max=}}printf(":%d\n",max);printf("lcm:%d\n",x*y/max);return}#includeintmain(intargc,char{intx,y,,lcm,scanf("%d%d",&x,&y);mul=x*y;while{inttmp=x%y;x=y;y=}=x;lcm=mul/;printf(":%d\n",printf("lcm:%d\n",return}從鍵盤輸入一個int61,2,3;201,2,4,5,10(要求文件名:4_2.cpp)#includeintmain(intargc,char{intx,printf("factorsare:\t");for(i=1;i<x;i++){if(x%i=={printf("%d\t",}}return0;}#include<stdio.h>#includeintmain(intargc,char{charintletter=0,digit=0,space=0,other=printf("pleaseinputstring:");while((c=getchar())!='\n'){if(c>='a'&&c<='z'||c>='A'&&c<={}elseif(c>='0'&&c<={}elseif(c=='{}{}}
return}#includeintmain(intargc,char{intfor(number=100;number<1000;{bai=number/shi=(number%100)/10;ge=number%10;if(number==bai*bai*bai+shi*shi*shi+ge*ge*{printf("number=%d\n",}}return}分析:變量cur表示當天的剩余量,pre表示昨天的剩余量,那么據(jù)題意可建立如下的關系:cur=pre/21pre=(cur+1)*2#includeintmain(intargc,char{intday,pre,cur;cur=1;for(day=9;day>=1;day--{pre=(cur+1)*2;cur=pre;}printf("total:%d\n",cur);return0;}實驗五:數(shù)組(2學時一、實驗目的和要求二、實驗內容用選擇法(或冒泡法)10STL擴展:給定兩個有序序列,將這兩個序列歸并到一個序列中,有序。5X4矩陣的鞍點。鞍點即矩陣中的某個元素符合如下條件:在其所三、實驗步驟、過程VisualC++6.0(1相同4(1相同VisualC++6.0四、源程序、測試數(shù)據(jù)、結果用選擇法(或冒泡法)10(要求文件名:5_1.cpp)#includeintmain(intargc,char{intdata[10]={0,49,38,65,7,76,13,27,33,inti,j,k,for(i=0;i<10;{k=i保存最小值的下標for(j=i+1;j<10;j++){if(data[j]<{k=}}//kitemp=data[i];data[i]=data[k];data[k]=temp;}for(i=0;i<10;{printf("%d\t",}return}#includeintmain(intargc,char{intdata[10]={0,49,38,65,7,76,13,27,33,inti,boolfg;//for(i=0;i<10;{fg=for(j=0;j<10-i-1;{if(data[j]>data[j+{inttmp=data[j];data[j]=data[j+1];data[j+1]=tmp;}}fg=}}if{}}for(i=0;i<10;{printf("%d\t",}return}拓展:利用標準類模板庫(STL)sort#include<algorithm>#include<stdio.h>usingnamespaceintmain(intargc,char{intdata[10]={0,49,38,65,7,76,13,27,33,intsort(data,data+for(i=0;i<10;{printf("%d\t",return}#includeintmain(intargc,char{inta[10]={1,3,6,9,11,26,55,79,123},num,i,scanf("%d",for(i=0;i<9;{if(a[i]>{break;//numk}}k=for(i=9;i>k;--i){a[i]=a[i-}a[k]=for(i=0;i<10;{printf("%d\t",return}#includeintmain(intargc,char{inta[10]={1,3,6,9,11,26,55,79,123,245},n=intb[12]={2,4,9,15,20,34,43,51,60,65,123,143},m=intinti,j,i=j=k=while(i<n&&j<{if(a[i]<{}{}}
c[k++]=c[k++]=while(i<{c[k++]=}while(j<{c[k++]=}for(i=0;i<k;{printf("%d\t",}return}strcat(要求文件名:5_3.cpp)#includeintmain(intargc,char{charstr1[100],str2[50];inti,j;scanf("%s",scanf("%s",i=while(str1[i]!={}for(j=0;str2[j]!='\0';j++,{str1[i]=}str1[i]=printf("%s\n",return}編程序找出一個5X4矩陣的鞍點。鞍點即矩陣中的某個元素符合如下條件:在其所簡要解題思路:1)maxnumcolumn,2)在列標為column的所有行中尋找最小值minnum,并保存行標row,3)比較minnum是否maxnum,若相等則(row,column)為鞍點,否則不是。#includeintmain(intargc,char{intarray[4][4]={{11,1,23,{40,56,98,{23,21,12,{45,67,23,introw,column,i,j,minnum,for(i=0;i<4;{maxnum=column=for(j=0;j<4;{if(array[i][j]>{maxnum=array[i][j];column=j;}}minnum=row=for(j=0;j<4;{if(array[j][column]<{minnum=array[j][column];row=j;}}if(minnum=={printf("andian:(%d,%d):%d\n",row+1,column+1,}}return}實驗六:函數(shù)(2學時一、實驗目的和要求二、實驗內容R。strcmp求1-3001-300三、實驗步驟、過程VisualC++6.0(1相同5(1相同VisualC++6.0四、源程序、測試數(shù)據(jù)、結果#include<stdio.h>#includeboolIsPrime(int{inti,tmp=for(i=2;i<=tmp;{if(num%i=={return}}return}intmain(intargc,char{intprintf("pleaseinputanum:\t");scanf("%d",&number);if{}{}
printf("%disprintf("%disnotreturn}(#include (intn,int{int{tmp=n%m;n=m;m=}return}intmain(intargc,char{intn,int,scanf("%d%d",&n,=(n,m);lcm=n*m/printf(":%d\n",printf("lcm:%d\n",return}#include<stdio.h>#includeintTransform(char{intans,len,i,len=strlen(hex);ans=0;for(i=0;i<len;{if(hex[i]>='a'&&hex[i]<={tmp=hex[i]-'a'+}elseif(hex[i]>='A'&&hex[i]<={tmp=hex[i]-'A'+}elseif(hex[i]>='0'&&hex[i]<={tmp=hex[i]-}ans=ans*16+}return}intmain(intargc,char{charintscanf("%s",ans=printf("%d\n",return}#includeconstcharstr[]= intpIndex;//boolStackPush(int{if(pIndex>={return}BasicStack[pIndex]data;return}//bool{if(pIndex<={return}return}int{returnBasicStack[pIndex-}bool{if(pIndex<={return}return}intStackSize(void){return}//void{pIndex=}intmain(intargc,char{intR,N, for(;;){scanf("%d%d",&N,&R);if(0==R&&0==N){} printf("%d轉換為%d進制的結果如下:\n",Nif(N<{N=-N;}//N0if(0=={}//while(N/{tmp=N%R;N=N/R;}{tmp=StackTop();printf("%c",str[tmp]);}}return}#include<stdio.h>#include<string.h>#include<math.h>intprocess(intyear,intmonth,int{intboolfg;intans,ans=}}if(year%4=={if(year%100=={if(year%400=={}{
}{}
fg=fg=fg=}}for(i=0;i<month-1;{ans+=}ans+=if(fg&&month>{}returnintmain(intargc,char{intyear,month,day,scanf("%d%d%d",&year,&month,sum=process(year,month,printf("Thesumdaysis:return}求1-300#include<stdio.h>#includeboolIsPrime(int{inti,if(num=={returntmp=for(i=2;i<=tmp;{if(num%i=={return}}return}doubleAverPrime(intstr,int{intcnt,i;doubleans;ans=cnt=for(i=str;i<=end;{if{printf("%d\t",i);ans+=i;}}returnans/}intmain(intargc,char{intstr,end;doublestr=end=aver=AverPrime(str,printf("aver:%lf\n",return}#includeconstintN=300;boolflag[N];intprime[100],void{inti,j;m=for(i=2;i<N;{if{}prime[m++]=for(j=i+i;j<N;j+={flag[j]=}}}intmain(intargc,char{intdoublesum=for(i=0;i<m;{sum+=prime[i];printf("%d\t",prime[i]);}printf("aver:%lf\n",sum/m);return0;}實驗七:指針(4學時一、實驗目的和要求二、實驗內容str1,str2(26每個字串中不出現(xiàn)相同的字str1,str2的長度len1,str1,str2例輸入 輸出 Agxyz指定輸入 答案 三、實驗步驟、過程VisualC++6.0(1相同5(1相同VisualC++6.0四、源程序、測試數(shù)據(jù)、結果輸入兩個整數(shù),利用指針交換它們的值,拓展,利用交換值。#includevoidswap(int*pa,int{inttmp=*pa=*pb=}intmain(intargc,char{inta,scanf("%d%d",&a,printf("a=%d,b=%d\n",a,swap(&a,printf("a=%d,b=%d\n",a,return}#includevoidswap(int&pa,int{inttmp=pa;pa=pb;pb=tmp;}intmain(intargc,char{inta,scanf("%d%d",&a,printf("a=%d,b=%d\n",a,swap(a,printf("a=%d,b=%d\n",a,return}mainmain(要#include<stdio.h>#includevoidchange(char{intx,x=if(*s>='a'&&*s<={*s-=}for(i=0;i<x-1;i++,{if(*s>='A'&&*s<={*s+=}}}intmain(intargc,char{chara[100],*s;return}#includeintmain(intargc,char{char*str;scanf("%s",str);printf("%s\n",str);return0;}若輸 ReferencecodefortestCreatedonDec.23,author: #include<stdio.h>#include//delcharvoiddelchar(char*str1,char*str2,unsignedintki,unsignedint{unsignedintfor(i=ki;i<strlen(str1);{str1[i]=str1[i+}for(i=kj;i<strlen(str2);{str2[i]=str2[i+}}intmain(intargc,char{charstr1[64],str2[64],strtmp[64];intlen1,len2,tmpflag;unsignedinti,scanf("%s",scanf("%s",len1=strlen(str1);len2=strlen(str2);tmpflag=0;printf("
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2024年耕地租賃合同
- 廣告設備購銷合同2024年
- 合伙企業(yè)協(xié)議格式
- 房地產代理銷售協(xié)議書2024年
- 服裝制造商合作合同
- 2024年二手房屋買賣合同范例
- 擔保合作協(xié)議填寫指南
- 合伙餐館協(xié)議書樣本專業(yè)
- 裝修預算合同范本2024年
- 2024設備搬遷運輸合同
- “珍愛生命,我的責任”主題班會課件
- 幼兒園《塑料袋別捂口鼻》
- JJG 880-2006 濁度計檢定規(guī)程-(高清現(xiàn)行)
- 鐵礦石全鐵含量的的不確定度評定
- 思維導圖模板彩色版
- 自動監(jiān)測數(shù)據(jù)標記及電子督辦規(guī)則考試題
- 合頁式包裝盒-開蓋機構的設計與運動分析
- 石材外墻及鋁合金門窗專項施工方案(169頁)
- 山體爆破施工方案(審核版)
- 福建省義務教育教改示范性建設學校申報表
- 國家電網(wǎng)有限公司十八項電網(wǎng)重大反事故措施修訂版-2018版
評論
0/150
提交評論