


版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、C 上機(jī)題1. 設(shè) y(n) = 1 n<= 1 時(shí); y(n) = -y(n-2)+2*y(n-1) n>1 時(shí)。編一 C 程序,它能對(duì)讀入的任意n(n>=0且n<50),能計(jì)算并輸出y(n)的值。(注:程序命名為 e1_2.exe)#include "stdio.h" int y(n)int n;if (n<=1)return 1;elsereturn (-y(n-2)+2*y(n-1);void main()int n;printf("please input the n :n");scanf("%d&quo
2、t;,&n);printf("y(%d)=%d n",n,y(n);2編一 C 程序,它能讀入一個(gè)字符串 (串長<100,串中可能有空格符 ),計(jì)算并輸出該字符串中十進(jìn)制數(shù)字的個(gè)數(shù)。 (注:程序命名為 e1_3.exe)#include "stdio.h" #include "string.h"#define MAX 100 void main()char aMAX;int n=0,i,j;printf("please input the char :n");gets(a);i=strlen(a);i
3、f (i>=100| i<=0)printf("sorry! there is more than or less than one hundred number n");else if (i<100 && i>0)for(j=0;j<i;j+)if (aj>='0' && aj<='9')n+;printf("the length is :%d n",n);第三題編一 C程序,它能讀入一正整數(shù)n, (n<10),并輸出如下圖形:n n nn
4、( 共 2n-1 個(gè) n)3 3 3 3 32 2 21(可執(zhí)行文件名為 e2_1.exe)#include "stdio.h"void print(int a,int printnum,int charnum ,char printchar)int i,j;for(i=0;i<charnum;i+)printf("%c ",printchar);for(j=i;j<=i+printnum-1;j+)printf("%d ",a);printf("n");int n,printnum,i,charnum
5、;char printchar=' 'printf("please input the n:n");scanf("%d",&n);if (n>=10 | n<=0) printf("please input n again (n<10 and n>0):n");scanf("%d",&n); /*i 為打印的數(shù)字 printnum 為打印數(shù)字的個(gè)數(shù) printchar 為打印的空格 charnum 為打印的空格個(gè)數(shù) */for(i=1,printnum=2*i
6、-1,charnum=n-i;i<=n;i+,printnum+=2,charnum-)print(i,printnum,charnum,printchar);for(i-=2,printnum-=4,charnum=1;i>=1;i-,printnum-=2,charnum+) print(i,printnum,charnum,printchar);4. 編一 C程序,它能讀入矩陣A的行數(shù)L,列數(shù)M,矩陣B的列數(shù)N,矩陣B的行 數(shù)是M。L,M,N值都小于20),以及按行讀入矩陣A的L*M個(gè)元素(整數(shù))及矩陣 B的M*N個(gè)元素(整數(shù)),計(jì)算并輸出A與B的矩陣乘積(按行,列輸出)。(
7、輸 入時(shí),相鄰的兩個(gè)整數(shù)用空格隔開) 。 (可執(zhí)行文件名為 e2_2.exe)#include "stdio.h"#define MAX 20int l,m,n,i,k,j,o,aMAXMAX,bMAXMAX,cMAXMAX,tmp=0;printf("please input the L :n"); scanf("%d",&l);printf("please input the m :n"); scanf("%d",&m);printf("please input t
8、he n :n");scanf("%d",&n);if (l>=20 |l<=0)printf("please input l again (0<l<20):n");scanf("%d",&l);if (m>=20 |m<=0)printf("please input m again (0<m<20):n"); scanf("%d",&m);if (n>=20 |n<=0)printf("pl
9、ease input n again (0<n<20):n"); scanf("%d",&n);printf("please input the number in a%d%d:n",l,m); for(i=0;i<l;i+)for(j=0;j<m;j+)scanf("%d",&aij);printf("please input the number in b%d%d:n",m,n);for(i=0;i<m;i+)for(j=0;j<n;j+)scanf
10、("%d",&bij);for(i=0;i<l;i+)for(k=0;k<n;k+) tmp=0;for(j=0;j<m;j+)tmp+=aij*bjk;cik=tmp;printf("the result is:n");for(o=0;o<i;o+)for(j=0;j<k;j+)printf("%d ",coj);printf("n");5. 編一 C 程序,它能讀入 n(n<200) 個(gè)整數(shù) (以-9999 為結(jié)束標(biāo)記,-9999 不算在內(nèi), 相鄰的兩個(gè)整數(shù)用空格隔開
11、 ),找出第 1 到第 n-1 個(gè)數(shù)中第一個(gè)與第 n 個(gè)數(shù)相等的 那個(gè)數(shù),并輸出該數(shù)讀入時(shí)的序號(hào)(序號(hào)從 1 開始記)。( 可執(zhí)行文件名為 e2_3.exe)#include "stdio.h"#define MAX 200void main()int i,j,n,flag=0,tmp,aMAX;printf("please input the number :n");for(i=0;i<MAX;i+)scanf("%d",&ai);if (ai=-9999)break;n=-i;tmp=ai;for(i=0;i<
12、n && flag=0;i+)if (tmp=ai)j=i;flag=1;break;if (flag=0)printf("Sorry! there is not found!n");elseif(flag=1)printf("the aquality number place is :n");printf("%d",+j);printf("n");6. 編一 C 程序,它能讀入一正整數(shù) n(n<40 ),并輸出如下圖形: A A A AA A A AA A A A共n行,每行n個(gè)A,下一行比
13、上一行右移一列.(注:可執(zhí)行文件名為e3_1.exe) #include "stdio.h"#define MAX 40void main()int n,i,m,j;char printchar=' ',printnum='A'printf("please input the n:n"); scanf("%d",&n);if (n>=40 | n<=0)printf("please input the n again(0<n<%d) :n",MAX);
14、 scanf("%d",&n);for(i=0;i<n;i+)for(j=0;j<=i;j+) printf("%c",printchar); for(m=0;m<n;m+) printf("%c",printnum);printf("n");17 進(jìn)制形式,依次用15、16。(注:可執(zhí)行文7. 編一 C 程序,它能讀入一個(gè)正整數(shù),并輸出該正整數(shù)的A、 B、C、D、E、F、 G 表示 10、11、12、13 、14、 件名為 e3_2.exe)#include "stdio.h&
15、quot;void main()int n,i=0,j,b17;char a17="0123456789ABCDEFG"printf("please input the n :n");scanf("%d",&n);doj=n%17;bi+=j;n=n/17;while(n!=0);for(i-;i>=0;i-)j=bi;printf("%c",aj);printf("n");第八題編一 C程序,它能讀入兩個(gè)整數(shù) m與n,計(jì)算并輸出m與n的絕對(duì)值的最大公約數(shù)及最小公倍數(shù)。 (注:可執(zhí)
16、行文件名為 e3_3.exe) 分析:求最大公約數(shù)的算法思想: (最小公倍數(shù) =兩個(gè)整數(shù)之積 /最大公約數(shù) )對(duì)于已知兩數(shù) m,n,使得m>n ;(2) m 除以 n 得余數(shù) r;若r=0,則n為求得的最大公約數(shù),算法結(jié)束;否則執(zhí)行 ;(4) mn,nr,再重復(fù)執(zhí)行(2)。#include "stdio.h"void main()int nm,r,n,m,t;printf("please input two numbers:n");scanf("%d %d",&m,&n);if (m<0)m*=-1;if
17、(n<0)n*=-1;nm=n*m;if (m<n) t=n; n=m; m=t; r=m%n;while (r!=0) m=n; n=r; r=m%n; printf(" 最大公約數(shù) :%dn",n);printf(" 最小公倍數(shù) :%dn",nm/n);9. 編一 C 程序,它能讀入一個(gè) 13 進(jìn)制數(shù)(用字符串表示,用 A、B、C 分別表 示 10、11 和 12 ),輸出該數(shù)的值(按十進(jìn)制數(shù)輸出) 。如輸入為 3B 時(shí),輸出為 50 。(注:可執(zhí)行文件名為 e4_1.exe)#include "stdio.h"#in
18、clude "stdlib.h"void main(void)char str64,*p;unsigned long x;printf("input the number:n");gets(str);x=strtoul(str,&p,13);printf("the number is %ldn",x);10. 任何進(jìn)制轉(zhuǎn)換成十進(jìn)制#include "stdio.h" #include "stdlib.h" void main(void)char str64,*p;unsigned lon
19、g x;printf("input the number:n"); gets(str);x=strtoul(str,&p,13); /* 只是這里該是幾進(jìn)制就改為幾 */ printf("the number is %ldn",x);11. 題編一 C 程序,它能依次讀入三組 d1、r1、d2、r2、d3、r3 共 18 個(gè)非負(fù)整 數(shù)(其中 0<=r1<d1 ,0<=r2<d2 ,0<=r3<d3 ),對(duì)每組 6 個(gè)非負(fù)整數(shù)依次判斷是 否有正整數(shù) n ,滿足 n%d1=r1 且 n%d2=r2 且 n%d3=r
20、3 ,若有,則輸出其中最 小者;否則,輸出 No 。(輸入整數(shù)時(shí),相鄰的兩個(gè)用空格隔開) 。(注:可執(zhí)行文 件名為 e4_2.exe)#include "stdio.h" void main()int l,i,n,d1,r1,d2,r2,d3,r3;for(i=0;i<=2;i+) l=1;n=1;printf("please input the number (0<=r1=<d1 0<=r2=<d2 0<=r3=<d3):n");/*別犯低級(jí)錯(cuò)誤! scanf( “%dn ”,&n); 千萬別那樣寫 *
21、/scanf("%d %d %d %d %d %d",&d1,&r1,&d2,&r2,&d3,&r3);while(l!=0)&&(n<=d1*d2*d3) )if (n%d1=r1) && (n%d2=r2) && (n%d3=r3) printf("%dn",n);l=0;else n+;if (l!=0)printf("NOn");12. 編一 C程序,它能讀入10個(gè)用空格隔開的整數(shù)n1, n2 ,,n10,對(duì)于i=1 ,2,1
22、0,執(zhí)行:若ni是某個(gè)整數(shù)的5次方,則輸出yes,否則輸出no。#include "stdio.h"void main() int a10,i,j,m,n=10;printf("please enter 10 numbers:n"); for (i=0;i<n;i+) scanf("%d",&ai);for (i=0;i<10;i+)if (ai>0)if (ai=1)printf("%d yes",ai);else m=0;for (j=0;j<=ai/5;j+)if (j*j*j
23、*j*j=ai) m=1;break;if (m=1) printf("%d yes",ai);if (m=0) printf("%d no",ai);else if (ai<0) n=0;for (j=0;j>=ai;j-)if (j*j*j*j*j=ai) n=1;break;if (n=1)printf("%d yes",ai);if (n=0)printf("%d no",ai);elseif (ai=0)printf("%d YES ",ai);printf("n
24、");13. 編一 C程序,它能讀如若干浮點(diǎn)數(shù)f1、f2、fn(以-9999.0為結(jié)束標(biāo)記,-9999.0不算在內(nèi))并輸出在 f2、f3、.fn 這 n-1 個(gè)數(shù)中大于 f1 的數(shù)的個(gè)數(shù)、等于 f1 的數(shù)的個(gè)數(shù)和小于 f1 的數(shù)的個(gè)數(shù)。 (注:可執(zhí)行文件名為 e4_3.exe)include "math.h" #include "stdio.h"void main()float f100,f1;int n=0,i,i1=0,i2=0,i3=0;printf("Please enter float number :n");sc
25、anf("%f",&f1);f0=f1;while (fn!=-9999.0)scanf("%f",&f+n);for (i=1;i<=n-1;i+)if (fi>f1) i1+;elseif (fi<f1) i3+;else i2+;printf(">f1:%dn",i1);printf("=f1:%dn",i2);printf("<f1:%dn",i3);14. 輸入一個(gè)整數(shù)x和一個(gè)正整數(shù)n,求x(x-1)(x-2)(x-3).(x-n+1)的值
26、并輸出.好象上次還考過呢 .用遞歸,這里只給出算法,沒有輸入輸出,沒有溢出處理int Get(int x,int n)if(n = 0) return 1; / 最后一步,相當(dāng)于 x*1else return (x-n+1) * Get(x,n-1);void main()int r;r = Get(-5,3);15. 編一 C 程序,它能讀入若干個(gè)非零浮點(diǎn)數(shù) (相鄰的兩個(gè)數(shù)用空格隔開, 以 0.0 為輸入結(jié)束標(biāo)記 ,0.0 不算在內(nèi)),計(jì)算并輸出這些數(shù)的平均值。 (注:可執(zhí)行文 件名為 e5_1.exe)#include "math.h"#include "st
27、dio.h"void main()float f,s=0.0;int n=0;printf("Please enter float number:n");scanf("%f",&f);if (fabs(f-0.0)<1e-4)printf("No number!n");else while (fabs(f-0.0)>1e-4)n+;s+=f;scanf("%f",&f);if (n!=0)printf("%d number of average is:%fn"
28、;,n,s/n);16. 編一 C 程序,它能反復(fù)讀入正整數(shù)(相鄰的用空格隔開) ,并判斷它是否為 素?cái)?shù)(質(zhì)數(shù)),若是,則輸出“yes”,否則,輸出n'O”,直到讀入1時(shí),程序終止 執(zhí)行。 (注:可執(zhí)行文件名為 e5_2.exe)#include "stdio.h"#define MAX 10000void test (int a) int j,testdiv=2;if (a>2)for(j=0;testdiv<=a/2 && j=0;testdiv+)if (a%testdiv=0)j=1;break;if (j=1 | a<=1
29、) printf("NO ");elseprintf("YES ");void main()int n,i,aMAX;printf("please input the number :n");for(i=0;i<MAX;i+)scanf("%d",&ai);if (ai=1)break;n=i;printf("the result is :n");for(i=0;i<n;i+)test(ai);printf("n");17. 編一 C 程序,它能讀入 21
30、 個(gè)整數(shù)(相鄰的兩個(gè)數(shù)用空格隔開) ,并輸出值為 中間的整數(shù)的值(即恰有 10 個(gè)值小于它,恰有 10 個(gè)值大于它)。(注:可執(zhí)行文 件名為 e5_3.exe)#include "stdio.h"void main()int a21,i,tmp,j;printf("please input the number :n");for(i=0;i<21;i+)scanf("%d",&ai);for(i=0;i<21;i+)for(j=i+1;j<21;j+)if (ai<aj)tmp=ai;ai=aj;aj=
31、tmp;printf("the middle number is :n");printf("%dn",a10);18. 編一個(gè)C程序,它能讀入文件f l.c和f2.c中的所有整數(shù),并把這些 數(shù)按從小到大的次序?qū)懙轿募3.c中,文件中的相鄰兩個(gè)整數(shù)都用空格或換行符隔開 , 相同的數(shù)只能寫一次 ,十個(gè)數(shù)一行 )。(注:可執(zhí)行文件名為 e9_2.exe) #include "stdio.h"#include "stdlib.h"int o=0;/*設(shè)置一個(gè)全局變量使 O 等于去掉重復(fù)數(shù)后的總的數(shù)據(jù)個(gè)數(shù)*/int cle
32、arSort(int a,int quantity) /* 將重復(fù)的數(shù)去掉并且改掉總的數(shù)據(jù)個(gè)數(shù)*/int i,j,m;for(i=0;i<quantity-1;i+)for(j=i+1;j<quantity;j+)if(ai=aj)for(m=j+1;m<=quantity;m+)am-1=am;quantity-;j-;o=quantity;return(quantity) ;void main(void)FILE *fp1,*fp2,*fp3;int a100,b100,i,x,n,j,p,tmp;system("cls"); /* 清屏 */if (
33、fp1=fopen("f1.c","wb")=NULL)printf("the file f1.c can not open !n");exit(0);printf("please input the number in f1.c:n");x=9999;while (x!=-9999)scanf("%d",&x);if (x!=-9999)fwrite(&x,sizeof(int),1,fp1);fclose(fp1);if (fp2=fopen("f2.c"
34、,"wb")=NULL)printf("the file f2.c can not open !n");exit(0);printf("please input the number in f2.c:n");x=9999;while (x!=-9999)scanf("%d",&x);if (x!=-9999)fwrite(&x,sizeof(int),1,fp2);fclose(fp2);if (fp1=fopen("f1.c","rb")=NULL)prin
35、tf("the file f1.c can not open !/n");exit(0);if (fp2=fopen("f2.c","rb")=NULL)printf("can not open the file f2.c!n");exit(0);if (fp3=fopen("f3.c","wb")=NULL)printf("can not open the file f3.c!n");exit(0);i=-1;while(!feof(fp1)fread(
36、&a+i,sizeof(int),1,fp1); /* 將 FP1 文件中的數(shù)據(jù)寫入 a 數(shù)組中 */ fclose(fp1);i-;rewind(fp2);while(!feof(fp2)fread(&a+i,sizeof(int),1,fp2); /* 緊接著 FP1 FP2 也將數(shù)據(jù)寫入 a 數(shù)組中 */ fclose(fp2);n=i;for(j=0;j<n;j+) /* 排序 */for(p=j+1;p<n;p+)if (aj>ap)tmp=aj;aj=ap;ap=tmp;clearSort(a,n); /*調(diào)用子函數(shù) */ fwrite(a,siz
37、eof(int),o,fp3);/*將數(shù)據(jù)寫到文件 FP3 中 */fclose(fp3);if(fp3=fopen("f3.c","rd")=NULL)printf("can not open f3.c !n");exit(0);i=0;while(!feof(fp3)/*這里開始輸出并且每行十個(gè)*/fread(&bi,sizeof(int),1,fp3); /* 將 FP3 文件中的數(shù)據(jù)寫到 B 數(shù)組中 */ printf("%d ",bi+);if(i%10=0)printf("n"
38、;);if (i>=o)break;printf("n");第十九題 編一 C程序,它能讀入一正整數(shù)n,并輸出如下圖形:12 2 23 3 3 3 3AAAA AAAABBBBBBB,BBBBBBBnnnnnnn n nnnnnnnnn(共 2n-1 個(gè) n)BBBBBBBBB.BBBBBBBBBBAAAAAAAAAAAAAA3 3 3 3 32 2 21當(dāng) n>9 時(shí)輸出 A,B C. : <=9 時(shí)輸出 12345.9#include "stdio.h"void print(int num ,char shu,char row,in
39、t rows)/* num 是要輸出的字符的個(gè)數(shù) shu 要輸出的字符 row 是空格 rows 是空格的 個(gè)數(shù) */int m,j;for(m=0;m<rows;m+)printf("%c ",row);j=m;for(;j<m+num;j+)printf("%c ",shu);for(m=0;m<rows;m+)printf("%c ",row); /*到這里還沒換行呢*/printf("n");void print11(int num ,int shu,char row,int rows)i
40、nt m,j;for(m=0;m<rows;m+)printf("%c ",row);j=m;for(;j<m+num;j+)printf("%d ",shu);for(m=0;m<rows;m+)printf("%c ",row);printf("n");void main(void)int i,n,printnum,rows,j;charrownum,a52="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrst uvwxyz",pr
41、intchar;int printchar1;printf("please input the number :n");scanf("%d",&n);for(i=1,printnum=1,printchar='1',rownum='',rows=n-i;i<=n;printnum+=2,i+,rows-,printchar+)if (i<=9)print(printnum,printchar,rownum,rows);elseif (i>9)for(j=0;j<n-9;j+,printnum
42、+=2,rows-,i+)print(printnum,aj,rownum,rows);break;for(printnum-=4,i-=2,rows=1;i>=1;printnum-=2,i-,rows+)if (i>9)for(j=n-11;j>=0;j-,printnum-=2,rows+,i-)print(printnum,aj,rownum,rows);if (i<=9)for(printchar1=i,printnum=2*i-1,rows=n-i;i>=0;printnum-=2,printchar1-,i-,rows +)print11(print
43、num,printchar1,rownum,rows);break;20.編一 C程序,它能計(jì)算并輸出讀入的兩個(gè)無符號(hào)整數(shù)m與n (m細(xì),0<m<1050,0<n<1050 )的差 m-n。#include "stdio.h" #include "string.h"void main()static char m20,n20,mn20;int nl,ml,ms,ns,mns,k,i,j,f;printf("please input two number (0):n");scanf("%s",
44、&m);scanf("%s",&n);ml=strlen(m);nl=strlen(n);if (ml<nl) | (m<n)strcpy(mn,m);k=ml;strcpy(m,n);ml=nl;strcpy(n,mn);nl=k;printf("%s-%s=",m,n);for(i=ml-1,j=nl-1;i>=ml-nl-1;i-,j-)ni=nj;for(i=0;i<ml-nl;i+)ni='0'for(i=ml-1;i>=0;i-)ms=mi-48;ns=ni-48;if(ms>
45、;=ns)mns=ms-ns;f=0;elsemns=ms+10-ns;f=-1;if(ms>=ns)mi=mns+48;elsemi=mns+48;mi-1+=f;k=0;while(mk='0')k+;for(i=k,j=0;i<ml;i+,j+)mnj=mi;printf("%sn",mn);第二十一題 加編一 C程序,它能以字符串形式讀入兩個(gè)無符號(hào)正整數(shù) m和n (兩個(gè)串各占一 行),計(jì)算并輸出這兩個(gè)整數(shù)的和,其中 m 和 n 的值最大可為 1000 億。(注:可 執(zhí)行文件名為 e6_2.exe)#大于1000億就超過了無符號(hào)長整型的數(shù)值
46、范圍范圍是01 0000 00000000無符號(hào)短整型 0 65535無符號(hào)長整形 042 9496 7295所以要數(shù)據(jù)類型轉(zhuǎn)換根據(jù)轉(zhuǎn)換原貝 U char short -> int dun sig ned ->long ->doubleunsignedshort unsigned longfloat所以依據(jù)這個(gè)我們就得轉(zhuǎn)換成 double#include "stdio.h"#include "string.h" void main()char m20,n20,mn20;int ml,nl,ms,ns,mns,k,i,j,f;printf
47、("Please enter 2 number string:n");scanf("%s",&m);scanf("%s",&n);ml=strlen(m);nl=strlen(n);if (ml<nl | m<n)strcpy(mn,m);k=ml;strcpy(m,n);ml=nl;strcpy(n,mn);nl=k;printf("%s+%s=",m,n);for (i=ml-1,j=nl-1;i>=ml-nl-1;i-,j-)ni=nj;for (i=0;i<ml-nl
48、;i+)ni='0'for (i=ml-1;i>=0;i-) ms=mi-48;ns=ni-48;mns=ms+ns;if (mns<10) f=0;else f=1;if (mns<10) mi+=ns;elsemi+=ns-10; /* 向前進(jìn)位 */ mi-1+=f; /*向前一位進(jìn)一 */if(f=1)for (i=ml;i>0;i-)mi=mi-1;m0='1'for(i=0;i<=ml;i+)printf("%c",mi);elsefor(i=0;i<ml;i+)printf("%c&
49、quot;,mi);printf("n");22. 編一 C程序,它能讀入由空格隔開的 5個(gè)正整數(shù),對(duì)每個(gè)正整數(shù)n,判斷,若 n 是完全數(shù)(即 n=d1+d2+.+dk ,其中 d1, d2, .dk 是 n 的所有小于它的因 子,如 6的所有小于它的因子是 1, 2, 3, 6=1+2+3 ,即 6 是完全數(shù)),則輸出yes,否則輸出no。(注:可執(zhí)行文件名為e7_2.exe)#include "stdio.h" void main()int a5,i,j,n;printf("Please enter 5 number:n");fo
50、r (i=0;i<5;i+)scanf("%d",&ai);for (i=0;i<5;i+)n=0;for (j=1;j<ai;j+)if (ai%j=0)n+=j;if (n=ai)printf("%d yes n",ai);else printf("%d non",ai);23. 編一個(gè)C程序,它能讀入一個(gè)學(xué)生登記表(學(xué)生數(shù)v=10 0,并把它按學(xué)號(hào)從小到大排序后輸出,每個(gè)學(xué)生登記項(xiàng)包含學(xué)號(hào)(int型),姓名(字符串),3門課程成績(均為浮點(diǎn)型),當(dāng)讀到學(xué)號(hào)值為1時(shí),表示輸入結(jié)束,1不算在內(nèi)。輸入時(shí),相鄰
51、兩數(shù)據(jù)間用空各隔開。(注:可執(zhí)行文件名為 e8_2.exe)#include <stdio.h>#define STDMAX 100struct Studentint num;char name20;float arith;float language;float chem;void main(void)int i, j, n;struct Student myClassSTDMAX-1, temp;for(i = 0; i<STDMAX-1; +i)printf("Pleace input a student info.n");printf("
52、Exemple:(23 green 90 78 54): ");scanf("%d", &myClassi.num);if(myClassi.num = -1)break;scanf("%s", myC);scanf("%f", &myClassi.arith);scanf("%f", &myClassi.language);scanf("%f", &myClassi.chem);n= i;for(i = 0; i<n-1; +
53、i) / 冒泡排序for(j = i+1; j<n; +j)if(myClassi.num>myClassj.num)temp = myClassi;myClassi = myClassj;myClassj = temp;for(i = 0; i<n; +i)/ 輸出printf("%dt%st%5.2ft%5.2ft%5.2fn",myClassi.num,myC,myClassi.arith,myClassi.language, myClassi.chem);24. 編一 C程序,它能讀入一個(gè)正整數(shù)n (n < 20),再讀入
54、二個(gè)n*n的矩陣(矩 陣元素為整數(shù),輸入時(shí)相鄰的整數(shù)用空格隔開) ,分別判斷每個(gè)矩陣是否為對(duì)稱 矩陣,若是,相應(yīng)輸出為 Yes ,否則為 No 。(注:程序命名為 e10_1.exe) #include "stdio.h"void main()int n,a2020,b2020,i,j;char fa='y',fb='y'printf("Please enter n(<20)=");scanf("%d",&n);printf("n");printf("Plea
55、se enter a%d%d:n",n,n);for (i=0;i<n;i+)for (j=0;j<n;j+)scanf("%d",&aij);printf("Please enter b%d%d:n",n,n);for (i=0;i<n;i+)for (j=0;j<n;j+)scanf("%d",&bij);for (i=0;i<n;i+)for (j=0;j<n;j+)if (ai!=aj)fa='n' ;break;for (i=0;i<n;i+
56、)for (j=0;j<n;j+)if (bi!=bj)fb='n'break;if (fa='y') printf("a%d%d yesn",n,n);else printf("a%d%d non",n,n);if (fb='y') printf("b%d%d yesn",n,n);else printf("b%d%d non",n,n);25. 編一 C 程序,它能讀入三組 a、b、c, a、b、c 分別是三個(gè)一元二次方程 ax2+bx+c=0 的系數(shù)( f
57、loat 型)。求解這三個(gè)方程,若某方程無實(shí)根,則輸出“ No solution ”,否則輸出方程的兩個(gè)實(shí)根。 (注:可執(zhí)行程序命名為 e11_2.exe) #include <stdio.h>#include <math.h>#define NUM 3void equation(float a, float b, float c) double d, x1, x2;d = b*b-4*a*c;if(d<0) elsex1 = (-b+sqrt(d)/2*a;x2 = (-b-sqrt(d)/2*a;printf("x1 = %f, x2 = %fn&q
58、uot;, x1, x2);void main(void)float modNUM3;int i, j;for(i = 0; i<NUM; +i)printf("Input a group of modulus (3 numbers): ");for(j = 0; j<3; +j)scanf("%f", &modij);printf("The %d equation of result is:n", NUM);for(i = 0; i<NUM; +i) equation(modi0, modi1, modi2
59、);26. 編一 C 程序,它能讀入一個(gè)正整數(shù) n(0<n<26 ),并能打印如下圖形,其中最下層為字母A',最上層為2n-1個(gè)n對(duì)應(yīng)的字母。如n=3時(shí),可打印的圖形為:CCCCCBBBA#include "stdio.h"print(char a,int k,int l,char b) int i,j;for(j=0;j<l;j+)printf("%c",b);for(i=0;i<k;i+)printf("%c",a);printf("n");void main()int n,pr
60、intnum,spacenum;char printchar,space=' 'printf("please input the n :n");scanf("%d",&n);if (n<=0 | n>26)scanf("%d",&n);for(printchar=n+64,printnum=2*n-1,spacenum=0;printnum>=1;printchar-,sp acenum+,printnum-=2)print(printchar,printnum,spacenum,sp
61、ace);27. 編一 C 程序,其功能是能把讀入一串英文單詞(以單詞 end 做為結(jié)束標(biāo)記, 單個(gè)單詞字母數(shù)W20),并按字典順序輸出。(注:可執(zhí)行程序命名為e13_1.exe) #include "string.h"#include "stdio.h"void main()char a8020,c20;int i=-1,j,k,n=-1;printf("Please enter a word string:n");do i+;n+;scanf("%s",ai);while (strcmp(ai,"end")!=0);for (k=1;k<n;k+)for (j=n-1,i=0;i<n-k;i+,j-)if (strcmp(aj,aj-1)<0)strcpy(c,aj);strcpy(aj,aj-1);strcpy(aj-1,c);for (i=0;i<n;i+)printf("%s ",ai);printf("n
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 六一活動(dòng)黨史活動(dòng)方案
- 六一活動(dòng)進(jìn)山抓雞活動(dòng)方案
- 六一活誦讀活動(dòng)方案
- 六一詩朗誦活動(dòng)方案
- 六一野炊活動(dòng)方案
- 六安酒會(huì)活動(dòng)策劃方案
- 六年級(jí)小組合作活動(dòng)方案
- 難產(chǎn)試題及答案
- 藥物合成考試試題及答案
- 安全配置考試試題及答案
- 2025年福建三明經(jīng)開區(qū)控股集團(tuán)有限公司子公司招聘筆試沖刺題(帶答案解析)
- 北京市朝陽區(qū)2023-2024學(xué)年三年級(jí)下學(xué)期語文期末考試卷
- 2025年煙花爆竹經(jīng)營單位主要負(fù)責(zé)人模擬考試題及答案
- 租房合同到期交接協(xié)議書
- 2025年馬克思主義基本原理考試復(fù)習(xí)試卷及答案
- 子宮內(nèi)膜異位性疾病護(hù)理
- 理論聯(lián)系實(shí)際談一談如何傳承發(fā)展中華優(yōu)-秀傳統(tǒng)文化?參考答案三
- 酒店拆除工程協(xié)議書
- 2025年遼寧省沈陽市于洪區(qū)中考二模道德與法治歷史試題
- 人工智能芯片研究報(bào)告
- DB43-T 2066-2021 河湖管理范圍劃定技術(shù)規(guī)程
評(píng)論
0/150
提交評(píng)論