考試時間1小時4題帶學生證或有效證件有學號和照片的證_第1頁
考試時間1小時4題帶學生證或有效證件有學號和照片的證_第2頁
考試時間1小時4題帶學生證或有效證件有學號和照片的證_第3頁
考試時間1小時4題帶學生證或有效證件有學號和照片的證_第4頁
考試時間1小時4題帶學生證或有效證件有學號和照片的證_第5頁
已閱讀5頁,還剩56頁未讀 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

上機考試復習一、上機考試事項考試范圍:條件判斷、循環(huán)、數組、函數。考試題型:程序填空題。與實驗題完全相同考試日期:6月7日14:00-15:10考試時間:1小時4題帶學生證或有效證件(有學號和照片的證件)帶上機卡,刷卡進入(上機卡卡內余額不能為負值)只能帶文具入場和一張A4草稿紙補考時間:6月7日17:00-18:10注:如果考試時間沖突(下午微積分I),請讓學生在下周四10:00--11:00,12:30--15:30到計算中心316登記.考試時間1小時4題帶學生證或有效證件有學號和照片的證共61頁,您現在瀏覽的是第1頁!二、上機考試系統操作1.考試系統操作過程啟動計算機,以用戶名

del

登錄Windows,系統將自動刪除E盤上的所有文件(夾)

利用瀏覽器進入考試系統機房:網址10.71.5.8(未定)選題復制題程序粘貼題程序到VC編程、調試、保存源程序文件.c遞交源程序文件.c查看程序是否通過考試時間1小時4題帶學生證或有效證件有學號和照片的證共61頁,您現在瀏覽的是第2頁!(3)瀏覽遞交源程序文件的路徑要記住使用盤、工程名、源程序文件名.cVC++編輯的源程序在工程名的文件夾下源程序文件名.c源程序內容改動過,要運行后,再提交。否則源程序要保存過(1)不能改變原程序的輸入/輸出語句,特別要注意有的題目輸出語句在題目解釋處給出,如50008題,輸出語句:printf("%d",i).其它程序可以變動,如增加變量定義,函數可不用函數實現等2.考試系統操作注意(4)工程文件要建在用戶盤,VC++在存儲工程文件的盤需要工作目錄temp(5)考題repeat循環(huán)和用#分割字符串,##表示結束(2)編程要注意考題的特殊解和邊界解考試時間1小時4題帶學生證或有效證件有學號和照片的證共61頁,您現在瀏覽的是第3頁!例求最大值程序填空,不要改變與輸入輸出有關的語句。輸入一個正整數repeat(0<repeat<10),做repeat次下列運算:輸入一個正整數n,再輸入n個整數,輸出最大值。例:括號內是說明輸入3(repeat=3)42123-1000491-183135輸出12395#include<stdio.h>intmain(){intri,repeat;inti,max,n,x;

scanf("%d",&repeat);

for(ri=1;ri<=repeat;ri++){scanf("%d",&n);/*---------*/printf("%d\n",max);}}考試時間1小時4題帶學生證或有效證件有學號和照片的證共61頁,您現在瀏覽的是第4頁!三、考試系統題庫猜測與分類歸納題庫隨機抽題,每個同學的題目不同。與作業(yè)的編程題疑難程度和類型差不多,關鍵在算法。掌握各種題型的算法,做到舉一反三教學大綱要求掌握的常用算法:分類(排序)算法冒泡、選擇、插入檢索(查找)算法(1)無序數據序列的查找(見遍歷算法)(2)有序數據序列的查找:二分法遍歷算法(1)一維數組和二維數組的遍歷(2)了解單向鏈表的遍歷(3)文件的遍歷簡單的數值計算方法:如多項式函數的計算其它基本算法:如進制轉換考試時間1小時4題帶學生證或有效證件有學號和照片的證共61頁,您現在瀏覽的是第5頁!給出計算精度eps:scanf("%f",&x);scanf("%f",&eps);t=1;e=0;i=1;while(t>eps){e=e+t;t=t*x/i;i++;}注:判斷滿足相加求ex=1+x+x2/2!+x3/3!+…+xn/n!通項t=xi/i!或t=t*x/i初值t=1然后e=e+t給出n項:sacnf(“%f”,&x);t=1;e=1;for(i=1;i<=n;i++){t=t*x/i;e=e+t;}給出之和e求多項式的項數n#include<stdio.h>voidmain(){doublet,e,x;inti;scanf("%lf",&x);scanf("%lf",&e);t=x;i=1;e=e-1;while(e>t){e=e-t;i++;t=t*x/i;}if(e==0)printf("%d\n",i-1);elseprintf("%d-%d\n",i-1,i);}考試時間1小時4題帶學生證或有效證件有學號和照片的證共61頁,您現在瀏覽的是第6頁!2.對數組的遍歷算法數組的下標作為循環(huán)變量,對數組的每個元素依次訪問輸入一個正整數n(1<n<=10),再輸入n個整數,求出數組元素最大值#include<stdio.h>intmain(){inti,n,a[10],max;scanf("%d",&n);for(i=0;i<n;i++)scanf("%lf",&a[i]);max=a[0];for(i=1;i<n;i++) if(max<a[i])max=a[i];printf("%d",max);考試時間1小時4題帶學生證或有效證件有學號和照片的證共61頁,您現在瀏覽的是第7頁!3.求素數即素數:指只能被1和自身整除的正整數輸入一個正整數n,如果它是素數,輸出"YES“,否則輸出"NO"main(){intflag,n;scanf("%d",&n);if(n==1)flag=0;elseif(n==2)flag=1;else{inti;for(i=2;i<n-1;i++)if(n%i==0){flag=0;break;}if(i==n)flag=1;}if(flag) printf("YES\n");else printf("NO\n");}考試時間1小時4題帶學生證或有效證件有學號和照片的證共61頁,您現在瀏覽的是第8頁!給出任何一個大于6的偶數,求出所有素數之和的組合。例如偶數10,素數之和為10=3+7,10=5+5#include"math.h"main(){inti,m,n,k=0;scanf("%d",&m);for(i=2;i<=m/2;i++)if(f(i)>0){n=m-i;if(f(n)>0)printf("%d=%d+%d\n",m,i,n);}}intf(intm){inti,c;c=sqrt((float)m);for(i=2;i<=c;i++)if(m%i==0)break;if(i==c+1)return1;elsereturn0;}考試時間1小時4題帶學生證或有效證件有學號和照片的證共61頁,您現在瀏覽的是第9頁!輸入任意一個整數,輸出該數的全部因子。main(){intx,i;scanf("%d",&x);for(i=1;i<=x/2;i++)if(x%i==0)printf("%d",i);printf("\n");}4.求整數的因子因子:為被該數整除的數因子的范圍:1~整數/2考試時間1小時4題帶學生證或有效證件有學號和照片的證共61頁,您現在瀏覽的是第10頁!將一個正整數分解質因數,例如輸入90,輸入90=2*3*3*5#include"stdio.h"intmain(){longn,j;scanf("%ld",&n);printf("%ld=",n);j=2;while(n>j){if(n%j==0){printf("%ld*",j);n=n/j;}elsej=j+1;}printf("%ld\n",n);}注:因子重復用考試時間1小時4題帶學生證或有效證件有學號和照片的證共61頁,您現在瀏覽的是第11頁!輸入一個整數n,從高位開始逐位分割并輸出它的各位數。voidf(intx){if(x>=10)f(x/10);printf("%-2d",x%10);}voidmain(){intn;scanf("%d",&n);f(n);}voidmain(){intn,m=1,x;scanf("%d",&n);x=n;while(x>=10){x=x/10;m=m*10;}while(m>0){printf("%-2d",n/m);n=n%m;m=m/10;}}考試時間1小時4題帶學生證或有效證件有學號和照片的證共61頁,您現在瀏覽的是第12頁!輸入一個正整數,將其各位數相加,一直加到只剩一位數為止如123456789-->45-->9main(){longx;intn;scanf("%ld",&x);do{n=0;do{n=n+x%10;x=x/10;}while(x!=0);x=n;}while(x>=10);printf("%d\n",n);}考試時間1小時4題帶學生證或有效證件有學號和照片的證共61頁,您現在瀏覽的是第13頁!6.數制轉化(1)整數:除進制數取余正整數n,轉換為x進制數的字符串i=0;while(n>0){y=n%x;if(y>=10)ch[i++]=y+'a'-10;elsech[i++]=y+'0';n=n/x;}ch[i]='\0';需字符串逆序for(j=0;j<i/2;j++){c=ch[j];ch[j]=ch[i-1-j];ch[i-1-j]=c;}printf("%s",ch);先分離,然后個位轉換0~9'0'~'9':y+'0'10~15'A'~'F':y+'A'+10或'a'~'f':y+'a'+10考試時間1小時4題帶學生證或有效證件有學號和照片的證共61頁,您現在瀏覽的是第14頁!x進制字符串a轉為數值dd=0;for(i=0;a[i]!=‘\0’;i++)if(a[i]>=‘0’&&a[i]<=‘9’)d=d*x+a[i]-’0’;elseif(a[i]>=‘A’&&a[i]<=‘F’)d=d*x+a[i]-’A’+10;elsed=d*x+a[i]-’a’+10;printf(“%d”,d);d=0;t=1;n=strlen(a);for(i=n-1;i>=0;i--){if(a[i]>=‘0’&&a[i]<=‘9’)

d=d+(a[i]-’0’)*t;elseif(a[i]>=‘A’&&a[i]<=‘F’)d=d+(a[i]-’A’+10)*t;elsed=d+(a[i]-’a’+10)*t;t=t*x;}printf(“%d”,d);a0xn-1+a1xn-2+…+an-3x2+an-2x+an-1(…((a0x+a1)x+a2)x+…+an-2)x+an-1考試時間1小時4題帶學生證或有效證件有學號和照片的證共61頁,您現在瀏覽的是第15頁!例編寫一個十進制字符串轉成十六進制字符串輸出的程序。先將十進制字符串轉成十進制數,再轉成十六進制字符串intcnum(char*p){intd=0;while(*p!='\0')d=d*10+*p++-'0';returnd;}voidmain(){intd;chara[20];gets(a);d=cnum(a);cc(d,a);printf("%s\n",a);}#include"stdio.h"voidcc(intd,charc[]){inty,i=0,j;charch;while(d>0){y=d%16;if(y>9)c[i++]=y-10+'a';elsec[i++]=y+'0';d=d/16;}c[i]='\0';for(j=0;j<i/2;j++){ch=c[j];c[j]=c[i-1-j];c[i-1-j]=ch;}}考試時間1小時4題帶學生證或有效證件有學號和照片的證共61頁,您現在瀏覽的是第16頁!字符串是否為回文(正讀、反讀一樣)如”abcdcba”,若是返回YES

,否返回NO

。

#include<string.h>f(chars[]){inti,j,n=strlen(s);for(i=0,j=n-1;i<n/2;i++,j--)if(s[i]!=s[j])return0;return1;}main(){char*c;gets(c);if(f(c))printf("YES");elseprintf("NO");}7.對稱性判別考試時間1小時4題帶學生證或有效證件有學號和照片的證共61頁,您現在瀏覽的是第17頁!8.矩陣運算主對角線i==j上三角i<=j下三角i>=j副對角線i+j==n-1考試時間1小時4題帶學生證或有效證件有學號和照片的證共61頁,您現在瀏覽的是第18頁!判斷n(n<6)階方陣a是否關于副對角線對稱,副對角線為從矩陣的右上角至左下角的連線.輸入n和a中的元素,如果對稱,輸出"YES",否則,輸出"NO".main(){inta[6][6],i,j,n,flag=1;scanf("%d",&n);for(i=0;i<n;i++)for(j=0;j<n;j++)scanf("%d",&a[i][j]);for(i=0;i<n;i++)for(j=0;j<n-1-i;j++)if(a[i][j]!=a[n-1-j][n-1-i])flag=0;if(flag)printf("YES");elseprintf("NO");printf("\n");}副對角線對稱:a[i][j]==a[n-1-j][n-1-i]考試時間1小時4題帶學生證或有效證件有學號和照片的證共61頁,您現在瀏覽的是第19頁!判斷n(n<6)階方陣a是否關于水平中心線對稱,即行與最后一行對應元素相等,第二行與倒數第二行對應元素相等,......輸入n和a中的元素,如果對稱,輸出"YES",否則,輸出"NO".main(){inta[6][6],i,j,n,flag=1;scanf("%d",&n);for(i=0;i<n;i++)for(j=0;j<n;j++)scanf("%d",&a[i][j]);for(i=0;i<n/2;i++)for(j=0;j<n;j++)if(a[i][j]!=a[n-1-i][j])flag=0;if(flag)printf("YES");elseprintf("NO");printf("\n");}行對稱:a[i][j]==a[n-1-i][j]考試時間1小時4題帶學生證或有效證件有學號和照片的證共61頁,您現在瀏覽的是第20頁!其它:求矩陣的轉置陣。求矩陣主對角線上所有元素的和求矩陣副對角線上所有元素的和求矩陣每一行上所有元素的和。求矩陣每一列上所有元素的和。求矩陣中絕對值最大的元素。求矩陣鞍點形成矩陣輸入a,在線元素為a,其他為a-1考試時間1小時4題帶學生證或有效證件有學號和照片的證共61頁,您現在瀏覽的是第21頁!10.字符串操作輸入字符串s和正整數n,把字符串s的最多前n個字符拷貝到t中去,再輸出t.

main(){chars[100],t[50];inti,n;gets(s);scanf("%d",&n);for(i=0;s[i]!='\0'&&i<n;i++)t[i]=s[i];t[i]='\0';printf("%s\n",t);}考試時間1小時4題帶學生證或有效證件有學號和照片的證共61頁,您現在瀏覽的是第22頁!編一個程序檢查給定字符串S是否滿足下列兩個條件:(1)字符串S中左括號'('的個數與右括號')'的個數相同.(2)從字符串首字符起順序檢查S中的字符,遇到的右括號的個數在任何時候均不超過所遇到的左括號的個數.

如滿足條件,輸出YES;否則,輸出NO.

#include<string.h>intcheck(s)chars[];{intl,r,i;l=0;r=0;i=0;while(s[i]!='\0'){if(s[i]=='(')l++;if(s[i]==')')r++;if(r>l)break;i++;}return(l==r);}main(){chars[100];gets(s);if(check(s))printf("%s","YES");elseprintf("%s","NO");}例:輸入(2+(3*6)-10)輸出YES輸入(2+(3)*6)-10)輸出NO輸入)(A)BC(輸出NO考試時間1小時4題帶學生證或有效證件有學號和照片的證共61頁,您現在瀏覽的是第23頁!#include<stdio.h>intmain(){inti,count;charstr[100],c;gets(str);count=0;c='';for(i=0;str[i]!=‘\0’;i++){if(c==''&&str[i]!='')count++;c=str[i];}printf("count=%d\n",count);}輸入一行字符,統計其單詞的個數,各單詞間以空格為分隔,且空格數可以是多個。算法:判別前一個是空格后一個是字符,統計一個單詞考試時間1小時4題帶學生證或有效證件有學號和照片的證共61頁,您現在瀏覽的是第24頁!設一歌唱評獎晚會上有n(n>20)個評委為歌手打分.評分規(guī)則:每個評委依次打分,再去掉2個最高分和2個最低分,計算余下的分數平均值為歌手的得分.voidsort(intn,doublea[]){inti,j,index;doublet;for(i=0;i<n-1;i++){index=i;for(j=i+1;j<n;j++)if(a[j]<a[index])index=j;t=a[i];a[i]=a[index];a[index]=t;}}main(){inti,n;doublea[20],aver;scanf("%d",&n);for(i=0;i<n;i++)scanf("%lf",&a[i]);sort(n,a);aver=0;for(i=2;i<n-2;i++) aver+=a[i];aver/=n-4;printf("aver=%.2f\n",aver);}考試時間1小時4題帶學生證或有效證件有學號和照片的證共61頁,您現在瀏覽的是第25頁!有一個已排好序的整數數組,今輸入一個數,要求按原來排序的規(guī)律將它插入到數組中main(){inta[20],m,n,i;scanf("%d",&n);for(i=0;i<n;i++)scanf("%d",&a[i]);scanf("%d",&m);a[n]=m;for(i=n-1;i>=0;i--)if(a[i+1]<a[i]){m=a[i+1];a[i+1]=a[i];a[i]=m;}for(i=0;i<=n;i++)printf("%d",a[i]);printf("\n");}考試時間1小時4題帶學生證或有效證件有學號和照片的證共61頁,您現在瀏覽的是第26頁!折半法(二分法)查數對已排序數據序列(小到大或大到小)的查找算法:值區(qū)間不斷折半縮小,直到找到要查的數例a[9]={1,2,3,6,8,9,10,12,14}012345678要求查x=2a的有值區(qū)間0~8折半(0+8)/2=4a[4]=8不是a的區(qū)間分為0~35~8判別有值區(qū)間0~3a的有值區(qū)間0~3折半(0+3)/2=1a[1]=2=x是考試時間1小時4題帶學生證或有效證件有學號和照片的證共61頁,您現在瀏覽的是第27頁!#defineN10#include"stdio.h"voidmain(){inta[N],top=0,bot=N-1,mid=0,x,i;for(i=0;i<N;i++)scanf("%d",&a[i]);scanf("%d",&x);if(x>=a[0]&&x<=a[N-1])while(top<=bot){mid=(top+bot)/2;if(x==a[mid])break;elseif(x<a[mid])bot=mid-1; elsetop=mid+1;}if(x==a[mid])printf("a[%d]=%d\n",mid,a[mid]);elseprintf("nonumber");}考試時間1小時4題帶學生證或有效證件有學號和照片的證共61頁,您現在瀏覽的是第28頁!在字符串中找子字符串。如子字符串存在,輸出YES;否則,輸出NO.#include<string.h>main(){chars[100],c[20];inti,j,flag;gets(s);gets(c);for(i=0;s[i]!='\0';i++){flag=1;for(j=0;c[j]!='\0';j++)if(s[i+j]!=c[j]){flag=0;break;}if(flag)break;}if(flag)printf("YES\n");elseprintf("NO\n");}abcdefghyefg又如,計算一個字符串中子字符串出現的次數。考試時間1小時4題帶學生證或有效證件有學號和照片的證共61頁,您現在瀏覽的是第29頁!年齡問題。有n人坐在一起,問第n個人多少歲?他說比第n-1個人大2歲。問第n-1個人多少歲?他說比第n-2個人大2歲,……,問第3個人多少歲?他說比第2個人大2歲。問第2個人多少歲?他說比第1個人大2歲。最后問第1個人,他說10歲。求第5個人的歲數?用遞歸函數表示intage(intn){intc;if(n==1)c=10;elsec=age(n-1)+2;return(c);}voidmain(){intn;scanf("%d",&n);printf("%d\n",age(n));}#include<stdio.h>voidmain(){inti,n,m=10;scanf("%d",&n);for(i=1;i<n;i++)m=m+2;printf("%d\n",m);}類似有:球體自由落地搬磚頭圍圈報數兌換硬幣考試時間1小時4題帶學生證或有效證件有學號和照片的證共61頁,您現在瀏覽的是第30頁!輸入a,b使a>=bn的n,n為最大的整數#include"stdio.h"longpown(longb,intn)/*求bn*/{inti;longg=1;if(n==0)return1;for(i=1;i<=n;i++) g=g*b;returng;}voidmain(){intn;longa,b;scanf("%ld%ld",&a,&b);n=0;while(a>pown(b,n)) n++;printf("%d\n",--n);}考試時間1小時4題帶學生證或有效證件有學號和照片的證共61頁,您現在瀏覽的是第31頁!找矩陣的鞍點(元素值在該行上最大,在該列上最小)解法一:1.固定i行,在i行找到最大元素的列j=>col2.在col列找到最小元素的行k

=>row3.如i==row,則鞍點為row行col列輸入ai=0;i<n;i++col=0j=1;j<n;j++a[i][col]<a[i][j])col=j10jk=1;k<n;k++a[row][col]>a[k][col]row=k1krow==i輸出i,col輸出NOrow=0i11停001voidmain(){inti,j,k,row,col,flag=0,n;inta[6][6];scanf("%d",&n);for(i=0;i<n;i++)for(j=0;j<n;j++)scanf("%d",&a[i][j]);for(i=0;i<n;i++){col=0;for(j=1;j<n;j++)if(a[i][col]<a[i][j])col=j;row=0;for(k=1;k<n;k++)if(a[i][col]>a[k][col])row=k;if(row==i){flag=1;break;}}if(flag)printf("i=%d,j=%d",row,col);elseprintf("NO");}考試時間1小時4題帶學生證或有效證件有學號和照片的證共61頁,您現在瀏覽的是第32頁!例查找字符程序填空,不要改變與輸入輸出有關的語句。輸入一個字符并回車,再連續(xù)輸入一批以#結束的字符串(字符串的長度不超過80),遇##則全部輸入結束。在每個字符串中查找該字符,如果找到,則輸出該字符在字符串中所對應的最大下標(下標從0開始);否則輸出“NotFound”。#include"stdio.h"#defineMAXLEN80intmain(){intcount,i,k,flag,sub;charcc,ch,oldch,str[MAXLEN];oldch='';cc=getchar();getchar();

while((ch=getchar())!='#'||oldch!='#'){k=0;while(ch!='#'&&k<MAXLEN-1){ str[k++]=ch; ch=getchar();}oldch='#';str[k]='\0';/*---------*/if(flag)printf("%d\n",sub);elseprintf("NotFound\n");}}考試時間1小時4題帶學生證或有效證件有學號和照片的證共61頁,您現在瀏覽的是第33頁!1.多項式計算找出通項循環(huán)控制n項或給定一個數(計算精度)由多項式之和求多項式的項數考試時間1小時4題帶學生證或有效證件有學號和照片的證共61頁,您現在瀏覽的是第34頁!求s=a+aa+aaa+…+aa…….an個a通項t=t*10+a然后s=s+t程序:t=0;s=0;for(i=1;i<=n;i++){t=t*10+a;s=s+t;}printf("%d\n",s);類似:求Fibonacci(斐波那契)數列和分數的序列求s=11+22+33+44+…+NN求s=1+1/2+(1*2)/(2*4)+(2*3)/(3*5)+…等給出之和s求多項式的項數n

n=0;t=0;while(s>t){s-=t;n++;t=10*t+a;}if(s==0)printf("%d\n",n);elseprintf("%d-%d\n",n,n+1);考試時間1小時4題帶學生證或有效證件有學號和照片的證共61頁,您現在瀏覽的是第35頁!輸入一個正整數n(1<n<=10),再輸入n個實數,求出最接近該數組平均值的數組元素。#include<stdio.h>#include<math.h>intmain(){inti,n;doublea[10],aver,def,near;scanf("%d",&n);for(i=0;i<n;i++)scanf("%lf",&a[i]);aver=0.0;for(i=0;i<n;i++) aver+=a[i];aver=aver/n;

near=a[0];def=fabs(aver-a[0]);for(i=1;i<n;i++)if(fabs(aver-a[i])<def){near=a[i];def=fabs(aver-a[i]);}printf("%f\n",near);}類似有求數組的奇數之和、偶數之和求數組的負數之和、正數之和輸入數組,統計相臨大于的次數輸入數組,最小與最后數交換輸入數組,輸出相同值的數組元素考試時間1小時4題帶學生證或有效證件有學號和照片的證共61頁,您現在瀏覽的是第36頁!求n之內的素數之和。

intf(intm){inti,c;if(m==2)return1;c=m-1;for(i=2;i<=c;i++)if(m%i==0)break;if(i==c+1)return1;elsereturn0;}#include"math.h"main(){inti,m,n,k=0;scanf(“%d”,&n);m=0;for(i=2;i<=n;i++)if(f(i)>0)m=m+i;printf("%d\n",m);}}考試時間1小時4題帶學生證或有效證件有學號和照片的證共61頁,您現在瀏覽的是第37頁!給出任何一個正整數,求出小于等于該數的最大素數例如正整數100,最大素數為97#include<stdio.h>main(){intm;scanf("%d",&m);while(m)if(f(m)>0){printf("%d\n",m);break;}elsem--;

}intf(intm){inti,c;if(m==2)return1;c=m-1;for(i=2;i<=c;i++)if(m%i==0)break;if(i==c+1)return1;elsereturn0;}考試時間1小時4題帶學生證或有效證件有學號和照片的證共61頁,您現在瀏覽的是第38頁!求n之內的完數完數:整數的因子之和等于本身main(){intx,i;scanf("%d",&n);for(m=2;m<=n;m++){s=0;for(i=1;i<m/2;i++)if(m%i==0)s=s+i;if(s==m)printf("%d",m);}printf("\n");}考試時間1小時4題帶學生證或有效證件有學號和照片的證共61頁,您現在瀏覽的是第39頁!5.分離整數各位整數nn%10->余數分離最低位n/=10->去掉最低位當n>0循環(huán)分離整數所有的位輸入任意一個正整數,按逆序輸出其各位數字.例:輸入12345,輸出54321voidmain(){intn;scanf("%d",&n);while(n){printf("%-2d",n%10);n=n/10;}}voidf(intx){if(x>0){printf("%d",x%10);f(x/10);}}voidmain(){intn;scanf("%d",&n);f(n);}考試時間1小時4題帶學生證或有效證件有學號和照片的證共61頁,您現在瀏覽的是第40頁!打印水仙花,三位的整數,各位立方之和等于本身如153=13+53+33

main(){intn,x,y,s;for(n=101;n<999;n++){x=n;s=0;while(x){y=x%10;s=s+y*y*y;x=x/10;}if(n==s)printf("%d\n",n);}}考試時間1小時4題帶學生證或有效證件有學號和照片的證共61頁,您現在瀏覽的是第41頁!讀入三個正整數m,n和k,判別m,n的高k位是否相等?如相等,輸出"YES",如不相等,輸出"NO".例:輸入12345123563輸出"YES"輸入2345123564輸出"NO"main(){longintm,n;intk,mm[10],nn[10],i,j,a;scanf("%ld%ld%d",&m,&n,&k);i=0;while(m){mm[i++]=m%10;m=m/10;}j=0;while(n){nn[j++]=n%10;n=n/10;}for(a=1;a<=k;a++)if(mm[--i]!=nn[--j])break;if(a>=k+1)printf("YES\n");elseprintf("NO\n");}又如,統計并輸出整數in中數字digit的個數考試時間1小時4題帶學生證或有效證件有學號和照片的證共61頁,您現在瀏覽的是第42頁!例輸入正整數n,輸出7進制相應的字符串后輸出。i=0;while(n>0){y=n%7;ch[i++]=y+'0';n=n/7;}ch[i]='\0';for(j=0;j<i/2;j++){c=ch[j];ch[j]=ch[i-1-j];ch[i-1-j]=c;}printf("%s",ch);考試時間1小時4題帶學生證或有效證件有學號和照片的證共61頁,您現在瀏覽的是第43頁!例輸入一個字符串,內有數字和非數字字符,將其中連續(xù)的數字作為一個整數,依次存放到一維數組。并統計整數的個數和輸出這些整數。如輸入a123x17960?302tab5876得4個整數:123,17960,302,5876#include<stdio.h>main(){chars[80];inti,n=0;longa[10]={0},m=0;gets(s);for(i=0;s[i]!='\0';i++)if(s[i]>='0'&&s[i]<='9')m=m*10+s[i]-'0';elseif(m>0){a[n++]=m;m=0;}printf("\nn=%d\n",n);for(i=0;i<n;i++)printf("%ld",a[i]);printf("\n");}考試時間1小時4題帶學生證或有效證件有學號和照片的證共61頁,您現在瀏覽的是第44頁!(2)小數:乘進制數取整scanf("%f",&s);count=1;ch[0]='0';ch[1]='.';i=2;while(count<=n&&s!=0){d=s*x;if(d>=10)ch[i++]=d+'a'-10;elsech[i++]=d+'0';s=s*x-d;count++;}ch[i]='\0';printf("%s\n",ch);小數s,轉換為x進制數的字符串,保留最多n位小數例讀入1個十進制數s(0<s<1),輸出其二進制數,保留最多六位二進制小數。#include<stdio.h>voidmain(){floats;intd,count;scanf("%f",&s);count=1;printf("0.");while(count<=6&&s>0){d=s*2;printf("%d",d);s=s*2-d;count++;}printf("\n");}考試時間1小時4題帶學生證或有效證件有學號和照片的證共61頁,您現在瀏覽的是第45頁!判別輸入正整數是否對稱,如對稱,輸出”YES”,如不對稱,輸”NO”。例輸入12321,輸出YES輸入12345,輸出NOvoidmain(){longn;inta[20],i=0;scanf("%ld",&n);while(n>0){a[i++]=n%10;n=n/10;}for(n=0;n<i/2;n++)if(a[n]!=a[i-n-1])break;if(n>=i/2)printf("YES");elseprintf("NO");}voidmain(){longn,m=0,x;scanf("%ld",&n);x=n;while(n>0){m=m*10+n%10;n=n/10;}if(x==m)printf("YES");elseprintf("NO");}考試時間1小時4題帶學生證或有效證件有學號和照片的證共61頁,您現在瀏覽的是第46頁!判斷n(n<6)階方陣a是否對稱矩陣.輸入n和a中的元素,如果對稱,輸出"YES",否則,輸出"NO".

對稱矩陣:a[i][j]==a[j][i]main(){inta[6][6],i,j,n,flag=1;scanf("%d",&n);for(i=0;i<n;i++)for(j=0;j<n;j++)scanf("%d",&a[i][j]);for(i=0;i<n;i++)for(j=i+1;j<n;j++)if(a[i][j]!=a[j][i])flag=0;if(flag)printf("YES");elseprintf("NO");printf("\n");}考試時間1小時4題帶學生證或有效證件有學號和照片的證共61頁,您現在瀏覽的是第47頁!判斷n(n<6)階方陣a是否為下三角矩陣,即主對角線以上的元素都為0,主對角線為從矩陣的左上角至右下角的連線.輸入n和a中的元素,如果是下三角矩陣,輸出"YES",否則,輸出"NO".

main(){inta[6][6],i,j,n,flag=1;scanf("%d",&n);for(i=0;i<n;i++)for(j=0;j<n;j++)scanf("%d",&a[i][j]);for(i=0;i<n;i++)for(j=i+1;j<n;j++)if(a[i][j]!=0)flag=0;if(flag)printf("YES");elseprintf("NO");printf("\n");}j>i考試時間1小時4題帶學生證或有效證件有學號和照片的證共61頁,您現在瀏覽的是第48頁!判斷n(n<6)階方陣a是否為行對角占優(yōu)陣,即該矩陣的每一行主對角元素的絕對值都大于或等于同行其它元素絕對值之和.(主對角元素的行下標和列下標相同)輸入n和a中的元素,如果是行對角占優(yōu)陣,輸出"YES",否則,輸出"NO"#include<math.h>main(){inta[6][6],i,j,n,s;scanf("%d",&n);for(i=0;i<n;i++)for(j=0;j<n;j++)scanf("%d",&a[i][j]);for(i=0;i<n;i++){s=0;for(j=0;j<n;j++)if(i!=j)s=s+abs(a[i][j]);if(s>abs(a[i][i]))break;}if(i>=n)printf("YES");elseprintf("NO");printf("\n");}考試時間1小時4題帶學生證或有效證件有學號和照片的證共61頁,您現在瀏覽的是第49頁!將每個字符串中的大寫字母用下面列出的對應大寫字母替換,其余字符不變,輸出替換后的字符串.原字母對應字母A──→ZB──→Y……Y──→BZ──→Ac='A'+'Z'-c;將每個字符串中的數字用下面列出的對應數字替換,其余字符不變,輸出替換后的字符串.原數字對應數字0──→91──→8……8──→19──→0c='0'+'9'-c;9.字符轉換又如設置密碼大小寫字母轉換考試時間1小時4題帶學生證或有效證件有學號和照片的證共61頁,您現在瀏覽的是第50頁!求兩個字符串s1和s2對應位置字符的ACSII值乘積之和.例:輸入1bfzc輸出15680main(){chars[100],t[100];longintd=0;inti,n;gets(s);gets(t);for(i=0;s[i]!='\0'&&t[i]!='\0';i++)d+=t[i]*s[i];printf("%ld\n",d);}考試時間1小時4題帶學生證或有效證件有學號和照片的證共61頁,您現在瀏覽的是第51頁!11.統計輸入一行字符,分別統計出其中的字母、數字、空格和其它字符的個數。

連續(xù)輸入一批以#結束的字符串(字符串的長度不超過80),遇##則全部輸入結束。統計并輸出每個字符串中大寫輔音字母的個數(大寫輔音字母:除'A','E','I','O','U'以外的大寫字母)。#include"stdio.h"intmain(){intcount,i,k;charch,oldch,str[80];oldch='';while((ch=getchar())!='#'||oldch!='#'){k=0;while(ch!='#'&&k<79){str[k++]=ch;ch=getchar();}

oldch='#';str[k]='\0';count=0;for(i=0;str[i]!='\0';i++)if(str[i]>='A'&&str[i]<='Z')if(str[i]!='A'&&str[i]!='E'&&str[i]!='I'&&str[i]!='O'&&str[i]!='U')count++;

printf("%d\n",count);}}考試時間1小時4題帶學生證或有效證件有學號和照片的證共61頁,您現在瀏覽的是第52頁!12.排序氣泡法、選擇法對n個數排序,從小到大main()/*氣泡法*/{inta[20],i,j,t,n;scanf("%d",&n);for(i=0;i<n;i++)scanf("%d",&a[i]);printf("\n");for(i=0;i<n-1;i++)

for(j=0;j<n-1-i;j++)if(a[j]>a[j+1]){t=a[j];a[j]=a[j+1];a[j+1]=t;}for(i=0;i<n;i++)printf("%d",a[i]);printf("\n");}main()/*選擇法*/{inta[20],i,j,t,n;scanf("%d",&n);for(i=0;i<n;i++)scanf("%d",&a[i]);printf("\n");for(i=0;i<n-1;i++)

for(j=i+1;j<n;j++)if(a[i]>a[j]){t=a[j];a[j]=a[i];a[i]=t;}for(i=0;i<n;i++)printf("%d",a[i]);printf("\n");}考試時間1小時4題帶學生證或有效證件有學號和照片的證共61頁,您現在瀏覽的是第53頁!求數組前從小到大的個數main(){inta[20],i,t,n;scanf("%d",&n);for(i=0;i<n;i++)scanf("%d",&a[i]);printf("\n");t=a[0];for(i=1;i<n-1;i++)if(t>a[i])break;elset=a[i];printf("%d\n",i);}考試時間1小時4題帶學生證或有效證件有學號和照片的證共61頁,您現在瀏覽的是第54頁!13.檢索(查找)輸入n個整數存入數組a中,再輸入一個整數x,在數組a中查找x,如果找到則輸出相應元素的最小下標,否則輸出"Notfound"。#include<stdio.h>intmain(void){inti,index,n,x,a[10];scanf("%d",&n);for(i=0;i<n;i++)scanf("%d"

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論