《高级语言程序设计》北大上机试题汇总及答案.docx
《《高级语言程序设计》北大上机试题汇总及答案.docx》由会员分享,可在线阅读,更多相关《《高级语言程序设计》北大上机试题汇总及答案.docx(33页珍藏版)》请在冰豆网上搜索。
《高级语言程序设计》北大上机试题汇总及答案
《高级语言程序设计》北大上机试题汇总
作者名:
不详出自:
网友提供05年7月20日
C语言上机试题:
1
1.题目:
编一C程序,它能读入一个正整数n(n<20),再逐行读入一个n*n的矩阵的元素(矩阵元素为整数,输入时相邻的整数用空格隔开),找出这个矩阵的最大的元素,再输出该元素的行号和列号(行号和列号均从1开始)。
(注:
程序命名为e1_1.exe)
程序设计:
main()
{intn,i,j,a[20][20],max,max_i,max_j;
printf("Pleaseintern=");
scanf("%d",&n);
printf("\n");
printf("Pleaseintera[][]:
\n");
for(i=0;ifor(j=0;jscanf("%d",&a[i][j]);max=a[0][0],max_i=0,max_j=0;for(i=0;ifor(j=0;jif(max{max=a[i][j];max_i=i;max_j=j;}printf("max_i=%d,max_j=%d\n",max_i+1,max_j+1);}2.题目:设y(n)=1n<=1时y(n)=-y(n-2)+2*y(n-1)n>1时编一C程序,它能对读入的任意n(n>=0且n<50),能计算并输出y(n)的值。(注:程序命名为e1_2.exe)程序设计:inty(n)intn;{if(n<=1)return(1);elsereturn(-y(n-2)+2*y(n-1));}main(){intn;printf("Pleaseintern=");scanf("%d",&n);printf("\n");printf("y(%d)=%d\n",n,y(n));}3.题目:编一C程序,它能读入一个字符串(串长<100,串中可能有空格符),计算并输出该字符串中十进制数字的个数。(注:程序命名为e1_3.exe)程序设计:#include"stdio.h"#include"string.h"main(){chara[100];inti,l,num=0;printf("Pleaseinterastring:\n");gets(a);l=strlen(a);for(i=0;iif(a[i]>='0'&&a[i]<='9')num++;printf("Numberis%d\n",num);}C语言上机试题:21.题目:编一C程序,它能读入一正整数n,(n<10),并输出如下图形:(可执行文件名为e2_1.exe)程序设计:main(){staticinta[20][20];intn,i,j,k;printf("Pleaseintern=");scanf("%d",&n);printf("\n");for(i=0;i{k=1;for(j=0;j<2*n-1;j++){if(j>n-i-2)a[i][j]=i+1;if(k<=2*i+1+n-i-2)k++;elsebreak;}}for(i=0;ifor(j=0;j<2*n-1;j++){if(a[i][j]==0)a[i][j]='';elsea[i][j]+=48;}for(i=0;i{printf("\n");for(j=0;j<2*n-1;j++)printf("%c",a[i][j]);}for(i=n-2;i>=0;i--){printf("\n");for(j=0;j<2*n-1;j++)printf("%c",a[i][j]);}printf("\n");}2.题目:编一C程序,它能读入矩阵A的行数L,列数M,矩阵B的列数N,矩阵B的行数是M。L,M,N值都小于20),以及按行读入矩阵A的L*M个元素(整数)及矩阵B的M*N个元素(整数),计算并输出A与B的矩阵乘积(按行,列输出)。(输入时,相邻的两个整数用空格隔开)。(可执行文件名为e2_2.exe)程序设计:main(){inta[20][20],b[20][20],c[20][20],l,m,n,i,j,k;printf("Pleaseintera[l][m]andb[m][n]ofl,m,n:");scanf("%d,%d,%d",&l,&m,&n);printf("\n");printf("Pleaseintera[l][m]:\n");for(i=0;ifor(j=0;jscanf("%d",&a[i][j]);printf("Pleaseinterb[m][n]:\n");for(i=0;ifor(j=0;jscanf("%d",&b[i][j]);for(i=0;ifor(j=0;j{c[i][j]=0;for(k=0;kc[i][j]+=a[i][k]*b[k][j];}printf("c[l][n]=a[l][m]*b[m][n]:");for(i=0;i{printf("\n");for(j=0;jprintf("%-5d",c[i][j]);}printf("\n");}3.题目:编一C程序,它能读入n(n<200)个整数(以-9999为结束标记,-9999不算在内,相邻的两个整数用空格隔开),找出第1到第n-1个数中第一个与第n个数相等的那个数,并输出该数读入时的序号(序号从1开始记)。(可执行文件名为e2_3.exe)程序设计:main(){inta[200],n,i;scanf("%d",&a[0]);if(a[0]!=-9999){for(i=1,n=0;a[i-1]!=-9999;i++,n++)scanf("%d",&a[i]);}printf("%d,%d\n",n,a[n-1]);for(i=0;iif(a[i]==a[n-1]){printf("%d\n",i+1);break;}}C语言上机试题:31.题目:编一C程序,它能读入一正整数n(n<40),并输出如下图形:共n行,每行n个A,下一行比上一行右移一列.(注:可执行文件名为e3_1.exe)程序设计:main(){intn,i,j,k;charch='A',space='';printf("Pleaseintern=");scanf("%d",&n);printf("\n");for(i=0;i{for(j=0;jfor(k=0;kprintf("\n");}}2.题目:编一C程序,它能读入一个正整数,并输出该正整数的17进制形式,依次用A、B、C、D、E、F、G表示10、11、12、13、14、15、16。(注:可执行文件名为e3_2.exe)程序设计:main(){charb[18]={"0123456789ABCDEFG"};intc[64],d,i=0,base=17;longn;printf("Pleaseentern=");scanf("%ld",&n);printf("\n");do{c[i]=n%base;i++;n=n/base;}while(n!=0);printf("Transmitenewbase=17:\n");for(--i;i>=0;--i){d=c[i];printf("%c",b[d]);}printf("%c",'\n');}3.题目:编一C程序,它能读入两个整数m与n,计算并输出m与n的绝对值的最大公约数及最小公倍数。(注:可执行文件名为e3_3.exe)程序设计:main(){intm,n,d,r;printf("Pleaseentermandn:\n");scanf("%d%d",&m,&n);if(m<0)m=-m;if(n<0)n=-n;if(m{r=m;m=n;n=r;}d=m;while(d%n!=0)d+=m;printf("%d\n",d);do{r=m%n;if(r!=0){m=n;n=r;}}while(r!=0);printf("%d\n",n);}C语言上机试题:41.题目:编一C程序,它能读入一个13进制数(用字符串表示,用A、B、C分别表示10、11和12),输出该数的值(按十进制数输出)。如输入为3B时,输出为50。(注:可执行文件名为e4_1.exe)程序设计:main(){chara[40];intn=0,i=0,j,k,s=0;printf("Pleaseentera13basenumber:\n");scanf("%s",a);while(a[i++]!='\0')n++;for(i=n-1;i>=0;i--){if((a[i]>='0')&&(a[i]<='9'))k=a[i]-'0';elseif((a[i]>='A')&&(a[i]<='C'))k=a[i]-55;elseprintf("error!\n");for(j=1;js+=k;}printf("To10basenumberis:\n");printf("%d\n",s);}2.题目:编一C程序,它能依次读入三组d1、r1、d2、r2、d3、r3共18个非负整数(其中0<=r1(输入整数时,相邻的两个用空格隔开)。(注:可执行文件名为e4_2.exe)程序设计:main(){intl,i,n,d1,r1,d2,r2,d3,r3;for(i=0;i<=2;i++){l=1;n=1;printf("Pleaseenterd1>=r1>=0,d2>=r2>=0,d3>=r3>=0:\n");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("%d\n",n);l=0;}elsen++;}if(l!=0)printf("no!\n");}}3.题目:编一C程序,它能读如若干浮点数f1、f2、...fn(以-9999.0为结束标记,-9999.0不算在内)并输出在f2、f3、...fn这n-1个数中大于f1的数的个数、等于f1的数的个数和小于f1的数的个数。(注:可执行文件名为e4_3.exe)程序设计:#include"math.h"main(){floatf[100],f1;intn=0,i,i1=0,i2=0,i3=0;printf("Pleaseenterfloat:\n");scanf("%f",&f1);f[0]=f1;while(abs(f[n]+9999.0)>=1e-4)scanf("%f",&f[++n]);for(i=1;i<=n-1;i++)if(f[i]>f1)i1++;elseif(abs(f[i]-f1)<1e-4)i2++;elsei3++;printf(">f1:%d\n",i1);printf("=f1:%d\n",i2);printf("%d\n",i3);}C语言上机试题:51.题目:编一C程序,它能读入若干个非零浮点数(相邻的两个数用空格隔开,以0.0为输入结束标记,0.0不算在内),计算并输出这些数的平均值。(注:可执行文件名为e5_1.exe)程序设计:#include"math.h"main(){floatf,s=0.0;intn=0;printf("Pleaseenterfloatnumber:\n");scanf("%f",&f);if(fabs(f-0.0)<1e-4)printf("Nonumber!\n");elsewhile(fabs(f-0.0)>1e-4){n++;s+=f;scanf("%f",&f);}if(n!=0)printf("%dnumberofaverageis:%f\n",n,s/n);}2.题目:编一C程序,它能反复读入正整数(相邻的用空格隔开),并判断它是否为素数(质数),若是,则输出"yes",否则,输出"no",直到读入1时,程序终止执行。(注:可执行文件名为e5_2.exe)程序设计:main(){intn,m,f;printf("Pleaseenteranumber:\n");scanf("%d",&n);while(n!=1){f=1;if(n==2)printf("%dyes\n",n);elsefor(m=2;mif(n%m==0){printf("%dno\n",n);f=0;break;}if(n!=2&&f==1)printf("%dyes\n",n);scanf("%d",&n);}}3.题目:编一C程序,它能读入21个整数(相邻的两个数用空格隔开),并输出值为中间的整数的值(即恰有10个值小于它,恰有10个值大于它)。(注:可执行文件名为e5_3.exe)程序设计:main(){inta[21],i,j,k,t;printf("Pleaseenter21numbers:\n");for(i=0;i<21;i++)scanf("%d",&a[i]);for(k=1;k<21;k++)for(j=20,i=0;i<21-k;i++,j--)if(a[j]{t=a[j];a[j]=a[j-1];a[j-1]=t;}printf("Thecenternumberis%d\n",a[10]);}C语言上机试题:61.题目:编一C程序,它能读入一串整数(用空格隔开相邻的两个整数,以-9999为输入结束标记,-9999不算在内),并以与读入次序相反的次序输出。(注:可执行文件名为e6_1.exe)程序设计:main(){inta[100],i=-1,n;printf("Pleaseenternumbers:\n");do{i++;scanf("%d",&a[i]);}while(a[i]!=-9999);n=i-1;for(i=n;i>=0;i--)printf("%d",a[i]);printf("\n");}2.题目:编一C程序,它能以字符串形式读入两个无符号正整数m和n(两个串各占一行),计算并输出这两个整数的和,其中m和n的值最大可为1000亿。(注:可执行文件名为e6_2.exe)程序设计:#include"stdio.h"#include"string.h"main(){charm[20],n[20],mn[20];intml,nl,ms,ns,mns,k,i,j,f;printf("Pleaseenter2numberstring:\n");scanf("%s",m);scanf("%s",n);ml=strlen(m);nl=strlen(n);if(mlfor(i=ml-1,j=nl-1;i>=ml-nl-1;i--,j--)n[i]=n[j];for(i=0;ifor(i=ml-1;i>=0;i--){ms=m[i]-48;ns=n[i]-48;mns=ms+ns;if(mns<10)f=0;elsef=1;if(mns<10)m[i]+=ns;else{m[i]+=ns-10;m[i-1]+=f;}}if(f==0)printf("%s\n",m);else{for(i=ml;i>0;i--)m[i]=m[i-1];m[0]='1';printf("%s\n",m);}}3.题目:编一C程序,它能读入10个浮点数(相邻的两个数用空格隔开),计算并输出其中最大数和最小数之差。(注:可执行文件名为e6_3.exe)程序设计:main(){floatf[9],max,min;inti;printf("Pleaseenter10float:\n");for(i=0;i<10;i++)scanf("%f",&f[i]);max=min=f[0];for(i=0;i<10;i++){if(maxmax=f[i];if(min>f[i])min=f[i];}printf("max=%f,min=%f,max-min=%f\n",max,min,max-min);}C语言上机试题:71.题目:编一C程序,它能读入10个用空格隔开的整数n1,n2,…,n10,对于i=1,2,…10,执行:若ni是某个整数的平方,则输出yes,否则输出no。(注:可执行文件名为e7_1.exe)程序设计:#include"math.h"main(){inta[9],i,j,n;printf("Pleaseenter10number:\n");for(i=0;i<10;i++)scanf("%d",&a[i]);for(i=0;i<10;i++)if(a[i]==1)printf("%dyes\n",a[i]);else{n=(int)(floor(sqrt(a[i])));if(a[i]==n*n)printf("%dyes\n",a[i]);elseprintf("%dno\n",a[i]);}}2.题目:编一C程序,它能读入由空格隔开的5个正整数,对每个正整数n,判断,若n是完全数(即n=d1+d2+..+dk,其中d1,d2,..dk是n的所有小于它的因子,如6的所有小于它的因子是1,2,3,6=1+2+3,即6是完全数),则输出yes,否则输出no。(注:可执行文件名为e7_2.exe)程序设计:main(){inta[5],i,j,n;printf("Pleaseenter5number:\n");for(i=0;i<5;i++)scanf("%d",&a[i]);for(i=0;i<5;i++){n=0;for(j=1;jif(a[i]%j==0)n+=j;if(n==a[i])printf("%dyes\n",a[i]);elseprintf("%dno\n",a[i]);}}3.题目:编一C程序,它能读入一个正整数n(n<10),然后输出如下图形:程序设计:main(){staticinta[20][20];intn,i,j,k;printf("Pleaseintern=");scanf("%d",&n);printf("\n");for(i=0;i{k=1;for(j=0;j<2*n-1;j++){if(j>n-i-2)a[i][j]=i+1;if(k<=2*i+1+n-i-2)k++;elsebreak;}}for(i=0;ifor(j=0;j<2*n-1;j++){if(a[i][j]==0)a[i][j]='';elsea[i][j]+=48;}for(i=0;i{printf("\n");for(j=0;j<2*n-1;j++)printf("%c",a[i][j]);}for(i=n-2;i>=0;i--){printf("\n");for(j=0;j<2*n-1;j++)printf("%c",a[i][j]);}printf("\n");}C语言上机试题:81.题目:编一C程序,它能读入一个正整数n,然后输出如下图形:(注:可执行文件名为e8_1.exe)程序设计:main(){staticchara[80][80];intn,i,j,k;printf("Pleaseintern=");scanf("%d",&n);printf("\n");f
for(j=0;jscanf("%d",&a[i][j]);max=a[0][0],max_i=0,max_j=0;for(i=0;ifor(j=0;jif(max{max=a[i][j];max_i=i;max_j=j;}printf("max_i=%d,max_j=%d\n",max_i+1,max_j+1);}2.题目:设y(n)=1n<=1时y(n)=-y(n-2)+2*y(n-1)n>1时编一C程序,它能对读入的任意n(n>=0且n<50),能计算并输出y(n)的值。(注:程序命名为e1_2.exe)程序设计:inty(n)intn;{if(n<=1)return(1);elsereturn(-y(n-2)+2*y(n-1));}main(){intn;printf("Pleaseintern=");scanf("%d",&n);printf("\n");printf("y(%d)=%d\n",n,y(n));}3.题目:编一C程序,它能读入一个字符串(串长<100,串中可能有空格符),计算并输出该字符串中十进制数字的个数。(注:程序命名为e1_3.exe)程序设计:#include"stdio.h"#include"string.h"main(){chara[100];inti,l,num=0;printf("Pleaseinterastring:\n");gets(a);l=strlen(a);for(i=0;iif(a[i]>='0'&&a[i]<='9')num++;printf("Numberis%d\n",num);}C语言上机试题:21.题目:编一C程序,它能读入一正整数n,(n<10),并输出如下图形:(可执行文件名为e2_1.exe)程序设计:main(){staticinta[20][20];intn,i,j,k;printf("Pleaseintern=");scanf("%d",&n);printf("\n");for(i=0;i{k=1;for(j=0;j<2*n-1;j++){if(j>n-i-2)a[i][j]=i+1;if(k<=2*i+1+n-i-2)k++;elsebreak;}}for(i=0;ifor(j=0;j<2*n-1;j++){if(a[i][j]==0)a[i][j]='';elsea[i][j]+=48;}for(i=0;i{printf("\n");for(j=0;j<2*n-1;j++)printf("%c",a[i][j]);}for(i=n-2;i>=0;i--){printf("\n");for(j=0;j<2*n-1;j++)printf("%c",a[i][j]);}printf("\n");}2.题目:编一C程序,它能读入矩阵A的行数L,列数M,矩阵B的列数N,矩阵B的行数是M。L,M,N值都小于20),以及按行读入矩阵A的L*M个元素(整数)及矩阵B的M*N个元素(整数),计算并输出A与B的矩阵乘积(按行,列输出)。(输入时,相邻的两个整数用空格隔开)。(可执行文件名为e2_2.exe)程序设计:main(){inta[20][20],b[20][20],c[20][20],l,m,n,i,j,k;printf("Pleaseintera[l][m]andb[m][n]ofl,m,n:");scanf("%d,%d,%d",&l,&m,&n);printf("\n");printf("Pleaseintera[l][m]:\n");for(i=0;ifor(j=0;jscanf("%d",&a[i][j]);printf("Pleaseinterb[m][n]:\n");for(i=0;ifor(j=0;jscanf("%d",&b[i][j]);for(i=0;ifor(j=0;j{c[i][j]=0;for(k=0;kc[i][j]+=a[i][k]*b[k][j];}printf("c[l][n]=a[l][m]*b[m][n]:");for(i=0;i{printf("\n");for(j=0;jprintf("%-5d",c[i][j]);}printf("\n");}3.题目:编一C程序,它能读入n(n<200)个整数(以-9999为结束标记,-9999不算在内,相邻的两个整数用空格隔开),找出第1到第n-1个数中第一个与第n个数相等的那个数,并输出该数读入时的序号(序号从1开始记)。(可执行文件名为e2_3.exe)程序设计:main(){inta[200],n,i;scanf("%d",&a[0]);if(a[0]!=-9999){for(i=1,n=0;a[i-1]!=-9999;i++,n++)scanf("%d",&a[i]);}printf("%d,%d\n",n,a[n-1]);for(i=0;iif(a[i]==a[n-1]){printf("%d\n",i+1);break;}}C语言上机试题:31.题目:编一C程序,它能读入一正整数n(n<40),并输出如下图形:共n行,每行n个A,下一行比上一行右移一列.(注:可执行文件名为e3_1.exe)程序设计:main(){intn,i,j,k;charch='A',space='';printf("Pleaseintern=");scanf("%d",&n);printf("\n");for(i=0;i{for(j=0;jfor(k=0;kprintf("\n");}}2.题目:编一C程序,它能读入一个正整数,并输出该正整数的17进制形式,依次用A、B、C、D、E、F、G表示10、11、12、13、14、15、16。(注:可执行文件名为e3_2.exe)程序设计:main(){charb[18]={"0123456789ABCDEFG"};intc[64],d,i=0,base=17;longn;printf("Pleaseentern=");scanf("%ld",&n);printf("\n");do{c[i]=n%base;i++;n=n/base;}while(n!=0);printf("Transmitenewbase=17:\n");for(--i;i>=0;--i){d=c[i];printf("%c",b[d]);}printf("%c",'\n');}3.题目:编一C程序,它能读入两个整数m与n,计算并输出m与n的绝对值的最大公约数及最小公倍数。(注:可执行文件名为e3_3.exe)程序设计:main(){intm,n,d,r;printf("Pleaseentermandn:\n");scanf("%d%d",&m,&n);if(m<0)m=-m;if(n<0)n=-n;if(m{r=m;m=n;n=r;}d=m;while(d%n!=0)d+=m;printf("%d\n",d);do{r=m%n;if(r!=0){m=n;n=r;}}while(r!=0);printf("%d\n",n);}C语言上机试题:41.题目:编一C程序,它能读入一个13进制数(用字符串表示,用A、B、C分别表示10、11和12),输出该数的值(按十进制数输出)。如输入为3B时,输出为50。(注:可执行文件名为e4_1.exe)程序设计:main(){chara[40];intn=0,i=0,j,k,s=0;printf("Pleaseentera13basenumber:\n");scanf("%s",a);while(a[i++]!='\0')n++;for(i=n-1;i>=0;i--){if((a[i]>='0')&&(a[i]<='9'))k=a[i]-'0';elseif((a[i]>='A')&&(a[i]<='C'))k=a[i]-55;elseprintf("error!\n");for(j=1;js+=k;}printf("To10basenumberis:\n");printf("%d\n",s);}2.题目:编一C程序,它能依次读入三组d1、r1、d2、r2、d3、r3共18个非负整数(其中0<=r1(输入整数时,相邻的两个用空格隔开)。(注:可执行文件名为e4_2.exe)程序设计:main(){intl,i,n,d1,r1,d2,r2,d3,r3;for(i=0;i<=2;i++){l=1;n=1;printf("Pleaseenterd1>=r1>=0,d2>=r2>=0,d3>=r3>=0:\n");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("%d\n",n);l=0;}elsen++;}if(l!=0)printf("no!\n");}}3.题目:编一C程序,它能读如若干浮点数f1、f2、...fn(以-9999.0为结束标记,-9999.0不算在内)并输出在f2、f3、...fn这n-1个数中大于f1的数的个数、等于f1的数的个数和小于f1的数的个数。(注:可执行文件名为e4_3.exe)程序设计:#include"math.h"main(){floatf[100],f1;intn=0,i,i1=0,i2=0,i3=0;printf("Pleaseenterfloat:\n");scanf("%f",&f1);f[0]=f1;while(abs(f[n]+9999.0)>=1e-4)scanf("%f",&f[++n]);for(i=1;i<=n-1;i++)if(f[i]>f1)i1++;elseif(abs(f[i]-f1)<1e-4)i2++;elsei3++;printf(">f1:%d\n",i1);printf("=f1:%d\n",i2);printf("%d\n",i3);}C语言上机试题:51.题目:编一C程序,它能读入若干个非零浮点数(相邻的两个数用空格隔开,以0.0为输入结束标记,0.0不算在内),计算并输出这些数的平均值。(注:可执行文件名为e5_1.exe)程序设计:#include"math.h"main(){floatf,s=0.0;intn=0;printf("Pleaseenterfloatnumber:\n");scanf("%f",&f);if(fabs(f-0.0)<1e-4)printf("Nonumber!\n");elsewhile(fabs(f-0.0)>1e-4){n++;s+=f;scanf("%f",&f);}if(n!=0)printf("%dnumberofaverageis:%f\n",n,s/n);}2.题目:编一C程序,它能反复读入正整数(相邻的用空格隔开),并判断它是否为素数(质数),若是,则输出"yes",否则,输出"no",直到读入1时,程序终止执行。(注:可执行文件名为e5_2.exe)程序设计:main(){intn,m,f;printf("Pleaseenteranumber:\n");scanf("%d",&n);while(n!=1){f=1;if(n==2)printf("%dyes\n",n);elsefor(m=2;mif(n%m==0){printf("%dno\n",n);f=0;break;}if(n!=2&&f==1)printf("%dyes\n",n);scanf("%d",&n);}}3.题目:编一C程序,它能读入21个整数(相邻的两个数用空格隔开),并输出值为中间的整数的值(即恰有10个值小于它,恰有10个值大于它)。(注:可执行文件名为e5_3.exe)程序设计:main(){inta[21],i,j,k,t;printf("Pleaseenter21numbers:\n");for(i=0;i<21;i++)scanf("%d",&a[i]);for(k=1;k<21;k++)for(j=20,i=0;i<21-k;i++,j--)if(a[j]{t=a[j];a[j]=a[j-1];a[j-1]=t;}printf("Thecenternumberis%d\n",a[10]);}C语言上机试题:61.题目:编一C程序,它能读入一串整数(用空格隔开相邻的两个整数,以-9999为输入结束标记,-9999不算在内),并以与读入次序相反的次序输出。(注:可执行文件名为e6_1.exe)程序设计:main(){inta[100],i=-1,n;printf("Pleaseenternumbers:\n");do{i++;scanf("%d",&a[i]);}while(a[i]!=-9999);n=i-1;for(i=n;i>=0;i--)printf("%d",a[i]);printf("\n");}2.题目:编一C程序,它能以字符串形式读入两个无符号正整数m和n(两个串各占一行),计算并输出这两个整数的和,其中m和n的值最大可为1000亿。(注:可执行文件名为e6_2.exe)程序设计:#include"stdio.h"#include"string.h"main(){charm[20],n[20],mn[20];intml,nl,ms,ns,mns,k,i,j,f;printf("Pleaseenter2numberstring:\n");scanf("%s",m);scanf("%s",n);ml=strlen(m);nl=strlen(n);if(mlfor(i=ml-1,j=nl-1;i>=ml-nl-1;i--,j--)n[i]=n[j];for(i=0;ifor(i=ml-1;i>=0;i--){ms=m[i]-48;ns=n[i]-48;mns=ms+ns;if(mns<10)f=0;elsef=1;if(mns<10)m[i]+=ns;else{m[i]+=ns-10;m[i-1]+=f;}}if(f==0)printf("%s\n",m);else{for(i=ml;i>0;i--)m[i]=m[i-1];m[0]='1';printf("%s\n",m);}}3.题目:编一C程序,它能读入10个浮点数(相邻的两个数用空格隔开),计算并输出其中最大数和最小数之差。(注:可执行文件名为e6_3.exe)程序设计:main(){floatf[9],max,min;inti;printf("Pleaseenter10float:\n");for(i=0;i<10;i++)scanf("%f",&f[i]);max=min=f[0];for(i=0;i<10;i++){if(maxmax=f[i];if(min>f[i])min=f[i];}printf("max=%f,min=%f,max-min=%f\n",max,min,max-min);}C语言上机试题:71.题目:编一C程序,它能读入10个用空格隔开的整数n1,n2,…,n10,对于i=1,2,…10,执行:若ni是某个整数的平方,则输出yes,否则输出no。(注:可执行文件名为e7_1.exe)程序设计:#include"math.h"main(){inta[9],i,j,n;printf("Pleaseenter10number:\n");for(i=0;i<10;i++)scanf("%d",&a[i]);for(i=0;i<10;i++)if(a[i]==1)printf("%dyes\n",a[i]);else{n=(int)(floor(sqrt(a[i])));if(a[i]==n*n)printf("%dyes\n",a[i]);elseprintf("%dno\n",a[i]);}}2.题目:编一C程序,它能读入由空格隔开的5个正整数,对每个正整数n,判断,若n是完全数(即n=d1+d2+..+dk,其中d1,d2,..dk是n的所有小于它的因子,如6的所有小于它的因子是1,2,3,6=1+2+3,即6是完全数),则输出yes,否则输出no。(注:可执行文件名为e7_2.exe)程序设计:main(){inta[5],i,j,n;printf("Pleaseenter5number:\n");for(i=0;i<5;i++)scanf("%d",&a[i]);for(i=0;i<5;i++){n=0;for(j=1;jif(a[i]%j==0)n+=j;if(n==a[i])printf("%dyes\n",a[i]);elseprintf("%dno\n",a[i]);}}3.题目:编一C程序,它能读入一个正整数n(n<10),然后输出如下图形:程序设计:main(){staticinta[20][20];intn,i,j,k;printf("Pleaseintern=");scanf("%d",&n);printf("\n");for(i=0;i{k=1;for(j=0;j<2*n-1;j++){if(j>n-i-2)a[i][j]=i+1;if(k<=2*i+1+n-i-2)k++;elsebreak;}}for(i=0;ifor(j=0;j<2*n-1;j++){if(a[i][j]==0)a[i][j]='';elsea[i][j]+=48;}for(i=0;i{printf("\n");for(j=0;j<2*n-1;j++)printf("%c",a[i][j]);}for(i=n-2;i>=0;i--){printf("\n");for(j=0;j<2*n-1;j++)printf("%c",a[i][j]);}printf("\n");}C语言上机试题:81.题目:编一C程序,它能读入一个正整数n,然后输出如下图形:(注:可执行文件名为e8_1.exe)程序设计:main(){staticchara[80][80];intn,i,j,k;printf("Pleaseintern=");scanf("%d",&n);printf("\n");f
scanf("%d",&a[i][j]);
max=a[0][0],max_i=0,max_j=0;
for(i=0;ifor(j=0;jif(max{max=a[i][j];max_i=i;max_j=j;}printf("max_i=%d,max_j=%d\n",max_i+1,max_j+1);}2.题目:设y(n)=1n<=1时y(n)=-y(n-2)+2*y(n-1)n>1时编一C程序,它能对读入的任意n(n>=0且n<50),能计算并输出y(n)的值。(注:程序命名为e1_2.exe)程序设计:inty(n)intn;{if(n<=1)return(1);elsereturn(-y(n-2)+2*y(n-1));}main(){intn;printf("Pleaseintern=");scanf("%d",&n);printf("\n");printf("y(%d)=%d\n",n,y(n));}3.题目:编一C程序,它能读入一个字符串(串长<100,串中可能有空格符),计算并输出该字符串中十进制数字的个数。(注:程序命名为e1_3.exe)程序设计:#include"stdio.h"#include"string.h"main(){chara[100];inti,l,num=0;printf("Pleaseinterastring:\n");gets(a);l=strlen(a);for(i=0;iif(a[i]>='0'&&a[i]<='9')num++;printf("Numberis%d\n",num);}C语言上机试题:21.题目:编一C程序,它能读入一正整数n,(n<10),并输出如下图形:(可执行文件名为e2_1.exe)程序设计:main(){staticinta[20][20];intn,i,j,k;printf("Pleaseintern=");scanf("%d",&n);printf("\n");for(i=0;i{k=1;for(j=0;j<2*n-1;j++){if(j>n-i-2)a[i][j]=i+1;if(k<=2*i+1+n-i-2)k++;elsebreak;}}for(i=0;ifor(j=0;j<2*n-1;j++){if(a[i][j]==0)a[i][j]='';elsea[i][j]+=48;}for(i=0;i{printf("\n");for(j=0;j<2*n-1;j++)printf("%c",a[i][j]);}for(i=n-2;i>=0;i--){printf("\n");for(j=0;j<2*n-1;j++)printf("%c",a[i][j]);}printf("\n");}2.题目:编一C程序,它能读入矩阵A的行数L,列数M,矩阵B的列数N,矩阵B的行数是M。L,M,N值都小于20),以及按行读入矩阵A的L*M个元素(整数)及矩阵B的M*N个元素(整数),计算并输出A与B的矩阵乘积(按行,列输出)。(输入时,相邻的两个整数用空格隔开)。(可执行文件名为e2_2.exe)程序设计:main(){inta[20][20],b[20][20],c[20][20],l,m,n,i,j,k;printf("Pleaseintera[l][m]andb[m][n]ofl,m,n:");scanf("%d,%d,%d",&l,&m,&n);printf("\n");printf("Pleaseintera[l][m]:\n");for(i=0;ifor(j=0;jscanf("%d",&a[i][j]);printf("Pleaseinterb[m][n]:\n");for(i=0;ifor(j=0;jscanf("%d",&b[i][j]);for(i=0;ifor(j=0;j{c[i][j]=0;for(k=0;kc[i][j]+=a[i][k]*b[k][j];}printf("c[l][n]=a[l][m]*b[m][n]:");for(i=0;i{printf("\n");for(j=0;jprintf("%-5d",c[i][j]);}printf("\n");}3.题目:编一C程序,它能读入n(n<200)个整数(以-9999为结束标记,-9999不算在内,相邻的两个整数用空格隔开),找出第1到第n-1个数中第一个与第n个数相等的那个数,并输出该数读入时的序号(序号从1开始记)。(可执行文件名为e2_3.exe)程序设计:main(){inta[200],n,i;scanf("%d",&a[0]);if(a[0]!=-9999){for(i=1,n=0;a[i-1]!=-9999;i++,n++)scanf("%d",&a[i]);}printf("%d,%d\n",n,a[n-1]);for(i=0;iif(a[i]==a[n-1]){printf("%d\n",i+1);break;}}C语言上机试题:31.题目:编一C程序,它能读入一正整数n(n<40),并输出如下图形:共n行,每行n个A,下一行比上一行右移一列.(注:可执行文件名为e3_1.exe)程序设计:main(){intn,i,j,k;charch='A',space='';printf("Pleaseintern=");scanf("%d",&n);printf("\n");for(i=0;i{for(j=0;jfor(k=0;kprintf("\n");}}2.题目:编一C程序,它能读入一个正整数,并输出该正整数的17进制形式,依次用A、B、C、D、E、F、G表示10、11、12、13、14、15、16。(注:可执行文件名为e3_2.exe)程序设计:main(){charb[18]={"0123456789ABCDEFG"};intc[64],d,i=0,base=17;longn;printf("Pleaseentern=");scanf("%ld",&n);printf("\n");do{c[i]=n%base;i++;n=n/base;}while(n!=0);printf("Transmitenewbase=17:\n");for(--i;i>=0;--i){d=c[i];printf("%c",b[d]);}printf("%c",'\n');}3.题目:编一C程序,它能读入两个整数m与n,计算并输出m与n的绝对值的最大公约数及最小公倍数。(注:可执行文件名为e3_3.exe)程序设计:main(){intm,n,d,r;printf("Pleaseentermandn:\n");scanf("%d%d",&m,&n);if(m<0)m=-m;if(n<0)n=-n;if(m{r=m;m=n;n=r;}d=m;while(d%n!=0)d+=m;printf("%d\n",d);do{r=m%n;if(r!=0){m=n;n=r;}}while(r!=0);printf("%d\n",n);}C语言上机试题:41.题目:编一C程序,它能读入一个13进制数(用字符串表示,用A、B、C分别表示10、11和12),输出该数的值(按十进制数输出)。如输入为3B时,输出为50。(注:可执行文件名为e4_1.exe)程序设计:main(){chara[40];intn=0,i=0,j,k,s=0;printf("Pleaseentera13basenumber:\n");scanf("%s",a);while(a[i++]!='\0')n++;for(i=n-1;i>=0;i--){if((a[i]>='0')&&(a[i]<='9'))k=a[i]-'0';elseif((a[i]>='A')&&(a[i]<='C'))k=a[i]-55;elseprintf("error!\n");for(j=1;js+=k;}printf("To10basenumberis:\n");printf("%d\n",s);}2.题目:编一C程序,它能依次读入三组d1、r1、d2、r2、d3、r3共18个非负整数(其中0<=r1(输入整数时,相邻的两个用空格隔开)。(注:可执行文件名为e4_2.exe)程序设计:main(){intl,i,n,d1,r1,d2,r2,d3,r3;for(i=0;i<=2;i++){l=1;n=1;printf("Pleaseenterd1>=r1>=0,d2>=r2>=0,d3>=r3>=0:\n");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("%d\n",n);l=0;}elsen++;}if(l!=0)printf("no!\n");}}3.题目:编一C程序,它能读如若干浮点数f1、f2、...fn(以-9999.0为结束标记,-9999.0不算在内)并输出在f2、f3、...fn这n-1个数中大于f1的数的个数、等于f1的数的个数和小于f1的数的个数。(注:可执行文件名为e4_3.exe)程序设计:#include"math.h"main(){floatf[100],f1;intn=0,i,i1=0,i2=0,i3=0;printf("Pleaseenterfloat:\n");scanf("%f",&f1);f[0]=f1;while(abs(f[n]+9999.0)>=1e-4)scanf("%f",&f[++n]);for(i=1;i<=n-1;i++)if(f[i]>f1)i1++;elseif(abs(f[i]-f1)<1e-4)i2++;elsei3++;printf(">f1:%d\n",i1);printf("=f1:%d\n",i2);printf("%d\n",i3);}C语言上机试题:51.题目:编一C程序,它能读入若干个非零浮点数(相邻的两个数用空格隔开,以0.0为输入结束标记,0.0不算在内),计算并输出这些数的平均值。(注:可执行文件名为e5_1.exe)程序设计:#include"math.h"main(){floatf,s=0.0;intn=0;printf("Pleaseenterfloatnumber:\n");scanf("%f",&f);if(fabs(f-0.0)<1e-4)printf("Nonumber!\n");elsewhile(fabs(f-0.0)>1e-4){n++;s+=f;scanf("%f",&f);}if(n!=0)printf("%dnumberofaverageis:%f\n",n,s/n);}2.题目:编一C程序,它能反复读入正整数(相邻的用空格隔开),并判断它是否为素数(质数),若是,则输出"yes",否则,输出"no",直到读入1时,程序终止执行。(注:可执行文件名为e5_2.exe)程序设计:main(){intn,m,f;printf("Pleaseenteranumber:\n");scanf("%d",&n);while(n!=1){f=1;if(n==2)printf("%dyes\n",n);elsefor(m=2;mif(n%m==0){printf("%dno\n",n);f=0;break;}if(n!=2&&f==1)printf("%dyes\n",n);scanf("%d",&n);}}3.题目:编一C程序,它能读入21个整数(相邻的两个数用空格隔开),并输出值为中间的整数的值(即恰有10个值小于它,恰有10个值大于它)。(注:可执行文件名为e5_3.exe)程序设计:main(){inta[21],i,j,k,t;printf("Pleaseenter21numbers:\n");for(i=0;i<21;i++)scanf("%d",&a[i]);for(k=1;k<21;k++)for(j=20,i=0;i<21-k;i++,j--)if(a[j]{t=a[j];a[j]=a[j-1];a[j-1]=t;}printf("Thecenternumberis%d\n",a[10]);}C语言上机试题:61.题目:编一C程序,它能读入一串整数(用空格隔开相邻的两个整数,以-9999为输入结束标记,-9999不算在内),并以与读入次序相反的次序输出。(注:可执行文件名为e6_1.exe)程序设计:main(){inta[100],i=-1,n;printf("Pleaseenternumbers:\n");do{i++;scanf("%d",&a[i]);}while(a[i]!=-9999);n=i-1;for(i=n;i>=0;i--)printf("%d",a[i]);printf("\n");}2.题目:编一C程序,它能以字符串形式读入两个无符号正整数m和n(两个串各占一行),计算并输出这两个整数的和,其中m和n的值最大可为1000亿。(注:可执行文件名为e6_2.exe)程序设计:#include"stdio.h"#include"string.h"main(){charm[20],n[20],mn[20];intml,nl,ms,ns,mns,k,i,j,f;printf("Pleaseenter2numberstring:\n");scanf("%s",m);scanf("%s",n);ml=strlen(m);nl=strlen(n);if(mlfor(i=ml-1,j=nl-1;i>=ml-nl-1;i--,j--)n[i]=n[j];for(i=0;ifor(i=ml-1;i>=0;i--){ms=m[i]-48;ns=n[i]-48;mns=ms+ns;if(mns<10)f=0;elsef=1;if(mns<10)m[i]+=ns;else{m[i]+=ns-10;m[i-1]+=f;}}if(f==0)printf("%s\n",m);else{for(i=ml;i>0;i--)m[i]=m[i-1];m[0]='1';printf("%s\n",m);}}3.题目:编一C程序,它能读入10个浮点数(相邻的两个数用空格隔开),计算并输出其中最大数和最小数之差。(注:可执行文件名为e6_3.exe)程序设计:main(){floatf[9],max,min;inti;printf("Pleaseenter10float:\n");for(i=0;i<10;i++)scanf("%f",&f[i]);max=min=f[0];for(i=0;i<10;i++){if(maxmax=f[i];if(min>f[i])min=f[i];}printf("max=%f,min=%f,max-min=%f\n",max,min,max-min);}C语言上机试题:71.题目:编一C程序,它能读入10个用空格隔开的整数n1,n2,…,n10,对于i=1,2,…10,执行:若ni是某个整数的平方,则输出yes,否则输出no。(注:可执行文件名为e7_1.exe)程序设计:#include"math.h"main(){inta[9],i,j,n;printf("Pleaseenter10number:\n");for(i=0;i<10;i++)scanf("%d",&a[i]);for(i=0;i<10;i++)if(a[i]==1)printf("%dyes\n",a[i]);else{n=(int)(floor(sqrt(a[i])));if(a[i]==n*n)printf("%dyes\n",a[i]);elseprintf("%dno\n",a[i]);}}2.题目:编一C程序,它能读入由空格隔开的5个正整数,对每个正整数n,判断,若n是完全数(即n=d1+d2+..+dk,其中d1,d2,..dk是n的所有小于它的因子,如6的所有小于它的因子是1,2,3,6=1+2+3,即6是完全数),则输出yes,否则输出no。(注:可执行文件名为e7_2.exe)程序设计:main(){inta[5],i,j,n;printf("Pleaseenter5number:\n");for(i=0;i<5;i++)scanf("%d",&a[i]);for(i=0;i<5;i++){n=0;for(j=1;jif(a[i]%j==0)n+=j;if(n==a[i])printf("%dyes\n",a[i]);elseprintf("%dno\n",a[i]);}}3.题目:编一C程序,它能读入一个正整数n(n<10),然后输出如下图形:程序设计:main(){staticinta[20][20];intn,i,j,k;printf("Pleaseintern=");scanf("%d",&n);printf("\n");for(i=0;i{k=1;for(j=0;j<2*n-1;j++){if(j>n-i-2)a[i][j]=i+1;if(k<=2*i+1+n-i-2)k++;elsebreak;}}for(i=0;ifor(j=0;j<2*n-1;j++){if(a[i][j]==0)a[i][j]='';elsea[i][j]+=48;}for(i=0;i{printf("\n");for(j=0;j<2*n-1;j++)printf("%c",a[i][j]);}for(i=n-2;i>=0;i--){printf("\n");for(j=0;j<2*n-1;j++)printf("%c",a[i][j]);}printf("\n");}C语言上机试题:81.题目:编一C程序,它能读入一个正整数n,然后输出如下图形:(注:可执行文件名为e8_1.exe)程序设计:main(){staticchara[80][80];intn,i,j,k;printf("Pleaseintern=");scanf("%d",&n);printf("\n");f
for(j=0;jif(max{max=a[i][j];max_i=i;max_j=j;}printf("max_i=%d,max_j=%d\n",max_i+1,max_j+1);}2.题目:设y(n)=1n<=1时y(n)=-y(n-2)+2*y(n-1)n>1时编一C程序,它能对读入的任意n(n>=0且n<50),能计算并输出y(n)的值。(注:程序命名为e1_2.exe)程序设计:inty(n)intn;{if(n<=1)return(1);elsereturn(-y(n-2)+2*y(n-1));}main(){intn;printf("Pleaseintern=");scanf("%d",&n);printf("\n");printf("y(%d)=%d\n",n,y(n));}3.题目:编一C程序,它能读入一个字符串(串长<100,串中可能有空格符),计算并输出该字符串中十进制数字的个数。(注:程序命名为e1_3.exe)程序设计:#include"stdio.h"#include"string.h"main(){chara[100];inti,l,num=0;printf("Pleaseinterastring:\n");gets(a);l=strlen(a);for(i=0;iif(a[i]>='0'&&a[i]<='9')num++;printf("Numberis%d\n",num);}C语言上机试题:21.题目:编一C程序,它能读入一正整数n,(n<10),并输出如下图形:(可执行文件名为e2_1.exe)程序设计:main(){staticinta[20][20];intn,i,j,k;printf("Pleaseintern=");scanf("%d",&n);printf("\n");for(i=0;i{k=1;for(j=0;j<2*n-1;j++){if(j>n-i-2)a[i][j]=i+1;if(k<=2*i+1+n-i-2)k++;elsebreak;}}for(i=0;ifor(j=0;j<2*n-1;j++){if(a[i][j]==0)a[i][j]='';elsea[i][j]+=48;}for(i=0;i{printf("\n");for(j=0;j<2*n-1;j++)printf("%c",a[i][j]);}for(i=n-2;i>=0;i--){printf("\n");for(j=0;j<2*n-1;j++)printf("%c",a[i][j]);}printf("\n");}2.题目:编一C程序,它能读入矩阵A的行数L,列数M,矩阵B的列数N,矩阵B的行数是M。L,M,N值都小于20),以及按行读入矩阵A的L*M个元素(整数)及矩阵B的M*N个元素(整数),计算并输出A与B的矩阵乘积(按行,列输出)。(输入时,相邻的两个整数用空格隔开)。(可执行文件名为e2_2.exe)程序设计:main(){inta[20][20],b[20][20],c[20][20],l,m,n,i,j,k;printf("Pleaseintera[l][m]andb[m][n]ofl,m,n:");scanf("%d,%d,%d",&l,&m,&n);printf("\n");printf("Pleaseintera[l][m]:\n");for(i=0;ifor(j=0;jscanf("%d",&a[i][j]);printf("Pleaseinterb[m][n]:\n");for(i=0;ifor(j=0;jscanf("%d",&b[i][j]);for(i=0;ifor(j=0;j{c[i][j]=0;for(k=0;kc[i][j]+=a[i][k]*b[k][j];}printf("c[l][n]=a[l][m]*b[m][n]:");for(i=0;i{printf("\n");for(j=0;jprintf("%-5d",c[i][j]);}printf("\n");}3.题目:编一C程序,它能读入n(n<200)个整数(以-9999为结束标记,-9999不算在内,相邻的两个整数用空格隔开),找出第1到第n-1个数中第一个与第n个数相等的那个数,并输出该数读入时的序号(序号从1开始记)。(可执行文件名为e2_3.exe)程序设计:main(){inta[200],n,i;scanf("%d",&a[0]);if(a[0]!=-9999){for(i=1,n=0;a[i-1]!=-9999;i++,n++)scanf("%d",&a[i]);}printf("%d,%d\n",n,a[n-1]);for(i=0;iif(a[i]==a[n-1]){printf("%d\n",i+1);break;}}C语言上机试题:31.题目:编一C程序,它能读入一正整数n(n<40),并输出如下图形:共n行,每行n个A,下一行比上一行右移一列.(注:可执行文件名为e3_1.exe)程序设计:main(){intn,i,j,k;charch='A',space='';printf("Pleaseintern=");scanf("%d",&n);printf("\n");for(i=0;i{for(j=0;jfor(k=0;kprintf("\n");}}2.题目:编一C程序,它能读入一个正整数,并输出该正整数的17进制形式,依次用A、B、C、D、E、F、G表示10、11、12、13、14、15、16。(注:可执行文件名为e3_2.exe)程序设计:main(){charb[18]={"0123456789ABCDEFG"};intc[64],d,i=0,base=17;longn;printf("Pleaseentern=");scanf("%ld",&n);printf("\n");do{c[i]=n%base;i++;n=n/base;}while(n!=0);printf("Transmitenewbase=17:\n");for(--i;i>=0;--i){d=c[i];printf("%c",b[d]);}printf("%c",'\n');}3.题目:编一C程序,它能读入两个整数m与n,计算并输出m与n的绝对值的最大公约数及最小公倍数。(注:可执行文件名为e3_3.exe)程序设计:main(){intm,n,d,r;printf("Pleaseentermandn:\n");scanf("%d%d",&m,&n);if(m<0)m=-m;if(n<0)n=-n;if(m{r=m;m=n;n=r;}d=m;while(d%n!=0)d+=m;printf("%d\n",d);do{r=m%n;if(r!=0){m=n;n=r;}}while(r!=0);printf("%d\n",n);}C语言上机试题:41.题目:编一C程序,它能读入一个13进制数(用字符串表示,用A、B、C分别表示10、11和12),输出该数的值(按十进制数输出)。如输入为3B时,输出为50。(注:可执行文件名为e4_1.exe)程序设计:main(){chara[40];intn=0,i=0,j,k,s=0;printf("Pleaseentera13basenumber:\n");scanf("%s",a);while(a[i++]!='\0')n++;for(i=n-1;i>=0;i--){if((a[i]>='0')&&(a[i]<='9'))k=a[i]-'0';elseif((a[i]>='A')&&(a[i]<='C'))k=a[i]-55;elseprintf("error!\n");for(j=1;js+=k;}printf("To10basenumberis:\n");printf("%d\n",s);}2.题目:编一C程序,它能依次读入三组d1、r1、d2、r2、d3、r3共18个非负整数(其中0<=r1(输入整数时,相邻的两个用空格隔开)。(注:可执行文件名为e4_2.exe)程序设计:main(){intl,i,n,d1,r1,d2,r2,d3,r3;for(i=0;i<=2;i++){l=1;n=1;printf("Pleaseenterd1>=r1>=0,d2>=r2>=0,d3>=r3>=0:\n");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("%d\n",n);l=0;}elsen++;}if(l!=0)printf("no!\n");}}3.题目:编一C程序,它能读如若干浮点数f1、f2、...fn(以-9999.0为结束标记,-9999.0不算在内)并输出在f2、f3、...fn这n-1个数中大于f1的数的个数、等于f1的数的个数和小于f1的数的个数。(注:可执行文件名为e4_3.exe)程序设计:#include"math.h"main(){floatf[100],f1;intn=0,i,i1=0,i2=0,i3=0;printf("Pleaseenterfloat:\n");scanf("%f",&f1);f[0]=f1;while(abs(f[n]+9999.0)>=1e-4)scanf("%f",&f[++n]);for(i=1;i<=n-1;i++)if(f[i]>f1)i1++;elseif(abs(f[i]-f1)<1e-4)i2++;elsei3++;printf(">f1:%d\n",i1);printf("=f1:%d\n",i2);printf("%d\n",i3);}C语言上机试题:51.题目:编一C程序,它能读入若干个非零浮点数(相邻的两个数用空格隔开,以0.0为输入结束标记,0.0不算在内),计算并输出这些数的平均值。(注:可执行文件名为e5_1.exe)程序设计:#include"math.h"main(){floatf,s=0.0;intn=0;printf("Pleaseenterfloatnumber:\n");scanf("%f",&f);if(fabs(f-0.0)<1e-4)printf("Nonumber!\n");elsewhile(fabs(f-0.0)>1e-4){n++;s+=f;scanf("%f",&f);}if(n!=0)printf("%dnumberofaverageis:%f\n",n,s/n);}2.题目:编一C程序,它能反复读入正整数(相邻的用空格隔开),并判断它是否为素数(质数),若是,则输出"yes",否则,输出"no",直到读入1时,程序终止执行。(注:可执行文件名为e5_2.exe)程序设计:main(){intn,m,f;printf("Pleaseenteranumber:\n");scanf("%d",&n);while(n!=1){f=1;if(n==2)printf("%dyes\n",n);elsefor(m=2;mif(n%m==0){printf("%dno\n",n);f=0;break;}if(n!=2&&f==1)printf("%dyes\n",n);scanf("%d",&n);}}3.题目:编一C程序,它能读入21个整数(相邻的两个数用空格隔开),并输出值为中间的整数的值(即恰有10个值小于它,恰有10个值大于它)。(注:可执行文件名为e5_3.exe)程序设计:main(){inta[21],i,j,k,t;printf("Pleaseenter21numbers:\n");for(i=0;i<21;i++)scanf("%d",&a[i]);for(k=1;k<21;k++)for(j=20,i=0;i<21-k;i++,j--)if(a[j]{t=a[j];a[j]=a[j-1];a[j-1]=t;}printf("Thecenternumberis%d\n",a[10]);}C语言上机试题:61.题目:编一C程序,它能读入一串整数(用空格隔开相邻的两个整数,以-9999为输入结束标记,-9999不算在内),并以与读入次序相反的次序输出。(注:可执行文件名为e6_1.exe)程序设计:main(){inta[100],i=-1,n;printf("Pleaseenternumbers:\n");do{i++;scanf("%d",&a[i]);}while(a[i]!=-9999);n=i-1;for(i=n;i>=0;i--)printf("%d",a[i]);printf("\n");}2.题目:编一C程序,它能以字符串形式读入两个无符号正整数m和n(两个串各占一行),计算并输出这两个整数的和,其中m和n的值最大可为1000亿。(注:可执行文件名为e6_2.exe)程序设计:#include"stdio.h"#include"string.h"main(){charm[20],n[20],mn[20];intml,nl,ms,ns,mns,k,i,j,f;printf("Pleaseenter2numberstring:\n");scanf("%s",m);scanf("%s",n);ml=strlen(m);nl=strlen(n);if(mlfor(i=ml-1,j=nl-1;i>=ml-nl-1;i--,j--)n[i]=n[j];for(i=0;ifor(i=ml-1;i>=0;i--){ms=m[i]-48;ns=n[i]-48;mns=ms+ns;if(mns<10)f=0;elsef=1;if(mns<10)m[i]+=ns;else{m[i]+=ns-10;m[i-1]+=f;}}if(f==0)printf("%s\n",m);else{for(i=ml;i>0;i--)m[i]=m[i-1];m[0]='1';printf("%s\n",m);}}3.题目:编一C程序,它能读入10个浮点数(相邻的两个数用空格隔开),计算并输出其中最大数和最小数之差。(注:可执行文件名为e6_3.exe)程序设计:main(){floatf[9],max,min;inti;printf("Pleaseenter10float:\n");for(i=0;i<10;i++)scanf("%f",&f[i]);max=min=f[0];for(i=0;i<10;i++){if(maxmax=f[i];if(min>f[i])min=f[i];}printf("max=%f,min=%f,max-min=%f\n",max,min,max-min);}C语言上机试题:71.题目:编一C程序,它能读入10个用空格隔开的整数n1,n2,…,n10,对于i=1,2,…10,执行:若ni是某个整数的平方,则输出yes,否则输出no。(注:可执行文件名为e7_1.exe)程序设计:#include"math.h"main(){inta[9],i,j,n;printf("Pleaseenter10number:\n");for(i=0;i<10;i++)scanf("%d",&a[i]);for(i=0;i<10;i++)if(a[i]==1)printf("%dyes\n",a[i]);else{n=(int)(floor(sqrt(a[i])));if(a[i]==n*n)printf("%dyes\n",a[i]);elseprintf("%dno\n",a[i]);}}2.题目:编一C程序,它能读入由空格隔开的5个正整数,对每个正整数n,判断,若n是完全数(即n=d1+d2+..+dk,其中d1,d2,..dk是n的所有小于它的因子,如6的所有小于它的因子是1,2,3,6=1+2+3,即6是完全数),则输出yes,否则输出no。(注:可执行文件名为e7_2.exe)程序设计:main(){inta[5],i,j,n;printf("Pleaseenter5number:\n");for(i=0;i<5;i++)scanf("%d",&a[i]);for(i=0;i<5;i++){n=0;for(j=1;jif(a[i]%j==0)n+=j;if(n==a[i])printf("%dyes\n",a[i]);elseprintf("%dno\n",a[i]);}}3.题目:编一C程序,它能读入一个正整数n(n<10),然后输出如下图形:程序设计:main(){staticinta[20][20];intn,i,j,k;printf("Pleaseintern=");scanf("%d",&n);printf("\n");for(i=0;i{k=1;for(j=0;j<2*n-1;j++){if(j>n-i-2)a[i][j]=i+1;if(k<=2*i+1+n-i-2)k++;elsebreak;}}for(i=0;ifor(j=0;j<2*n-1;j++){if(a[i][j]==0)a[i][j]='';elsea[i][j]+=48;}for(i=0;i{printf("\n");for(j=0;j<2*n-1;j++)printf("%c",a[i][j]);}for(i=n-2;i>=0;i--){printf("\n");for(j=0;j<2*n-1;j++)printf("%c",a[i][j]);}printf("\n");}C语言上机试题:81.题目:编一C程序,它能读入一个正整数n,然后输出如下图形:(注:可执行文件名为e8_1.exe)程序设计:main(){staticchara[80][80];intn,i,j,k;printf("Pleaseintern=");scanf("%d",&n);printf("\n");f
if(max{max=a[i][j];max_i=i;max_j=j;}printf("max_i=%d,max_j=%d\n",max_i+1,max_j+1);}2.题目:设y(n)=1n<=1时y(n)=-y(n-2)+2*y(n-1)n>1时编一C程序,它能对读入的任意n(n>=0且n<50),能计算并输出y(n)的值。(注:程序命名为e1_2.exe)程序设计:inty(n)intn;{if(n<=1)return(1);elsereturn(-y(n-2)+2*y(n-1));}main(){intn;printf("Pleaseintern=");scanf("%d",&n);printf("\n");printf("y(%d)=%d\n",n,y(n));}3.题目:编一C程序,它能读入一个字符串(串长<100,串中可能有空格符),计算并输出该字符串中十进制数字的个数。(注:程序命名为e1_3.exe)程序设计:#include"stdio.h"#include"string.h"main(){chara[100];inti,l,num=0;printf("Pleaseinterastring:\n");gets(a);l=strlen(a);for(i=0;iif(a[i]>='0'&&a[i]<='9')num++;printf("Numberis%d\n",num);}C语言上机试题:21.题目:编一C程序,它能读入一正整数n,(n<10),并输出如下图形:(可执行文件名为e2_1.exe)程序设计:main(){staticinta[20][20];intn,i,j,k;printf("Pleaseintern=");scanf("%d",&n);printf("\n");for(i=0;i{k=1;for(j=0;j<2*n-1;j++){if(j>n-i-2)a[i][j]=i+1;if(k<=2*i+1+n-i-2)k++;elsebreak;}}for(i=0;ifor(j=0;j<2*n-1;j++){if(a[i][j]==0)a[i][j]='';elsea[i][j]+=48;}for(i=0;i{printf("\n");for(j=0;j<2*n-1;j++)printf("%c",a[i][j]);}for(i=n-2;i>=0;i--){printf("\n");for(j=0;j<2*n-1;j++)printf("%c",a[i][j]);}printf("\n");}2.题目:编一C程序,它能读入矩阵A的行数L,列数M,矩阵B的列数N,矩阵B的行数是M。L,M,N值都小于20),以及按行读入矩阵A的L*M个元素(整数)及矩阵B的M*N个元素(整数),计算并输出A与B的矩阵乘积(按行,列输出)。(输入时,相邻的两个整数用空格隔开)。(可执行文件名为e2_2.exe)程序设计:main(){inta[20][20],b[20][20],c[20][20],l,m,n,i,j,k;printf("Pleaseintera[l][m]andb[m][n]ofl,m,n:");scanf("%d,%d,%d",&l,&m,&n);printf("\n");printf("Pleaseintera[l][m]:\n");for(i=0;ifor(j=0;jscanf("%d",&a[i][j]);printf("Pleaseinterb[m][n]:\n");for(i=0;ifor(j=0;jscanf("%d",&b[i][j]);for(i=0;ifor(j=0;j{c[i][j]=0;for(k=0;kc[i][j]+=a[i][k]*b[k][j];}printf("c[l][n]=a[l][m]*b[m][n]:");for(i=0;i{printf("\n");for(j=0;jprintf("%-5d",c[i][j]);}printf("\n");}3.题目:编一C程序,它能读入n(n<200)个整数(以-9999为结束标记,-9999不算在内,相邻的两个整数用空格隔开),找出第1到第n-1个数中第一个与第n个数相等的那个数,并输出该数读入时的序号(序号从1开始记)。(可执行文件名为e2_3.exe)程序设计:main(){inta[200],n,i;scanf("%d",&a[0]);if(a[0]!=-9999){for(i=1,n=0;a[i-1]!=-9999;i++,n++)scanf("%d",&a[i]);}printf("%d,%d\n",n,a[n-1]);for(i=0;iif(a[i]==a[n-1]){printf("%d\n",i+1);break;}}C语言上机试题:31.题目:编一C程序,它能读入一正整数n(n<40),并输出如下图形:共n行,每行n个A,下一行比上一行右移一列.(注:可执行文件名为e3_1.exe)程序设计:main(){intn,i,j,k;charch='A',space='';printf("Pleaseintern=");scanf("%d",&n);printf("\n");for(i=0;i{for(j=0;jfor(k=0;kprintf("\n");}}2.题目:编一C程序,它能读入一个正整数,并输出该正整数的17进制形式,依次用A、B、C、D、E、F、G表示10、11、12、13、14、15、16。(注:可执行文件名为e3_2.exe)程序设计:main(){charb[18]={"0123456789ABCDEFG"};intc[64],d,i=0,base=17;longn;printf("Pleaseentern=");scanf("%ld",&n);printf("\n");do{c[i]=n%base;i++;n=n/base;}while(n!=0);printf("Transmitenewbase=17:\n");for(--i;i>=0;--i){d=c[i];printf("%c",b[d]);}printf("%c",'\n');}3.题目:编一C程序,它能读入两个整数m与n,计算并输出m与n的绝对值的最大公约数及最小公倍数。(注:可执行文件名为e3_3.exe)程序设计:main(){intm,n,d,r;printf("Pleaseentermandn:\n");scanf("%d%d",&m,&n);if(m<0)m=-m;if(n<0)n=-n;if(m{r=m;m=n;n=r;}d=m;while(d%n!=0)d+=m;printf("%d\n",d);do{r=m%n;if(r!=0){m=n;n=r;}}while(r!=0);printf("%d\n",n);}C语言上机试题:41.题目:编一C程序,它能读入一个13进制数(用字符串表示,用A、B、C分别表示10、11和12),输出该数的值(按十进制数输出)。如输入为3B时,输出为50。(注:可执行文件名为e4_1.exe)程序设计:main(){chara[40];intn=0,i=0,j,k,s=0;printf("Pleaseentera13basenumber:\n");scanf("%s",a);while(a[i++]!='\0')n++;for(i=n-1;i>=0;i--){if((a[i]>='0')&&(a[i]<='9'))k=a[i]-'0';elseif((a[i]>='A')&&(a[i]<='C'))k=a[i]-55;elseprintf("error!\n");for(j=1;js+=k;}printf("To10basenumberis:\n");printf("%d\n",s);}2.题目:编一C程序,它能依次读入三组d1、r1、d2、r2、d3、r3共18个非负整数(其中0<=r1(输入整数时,相邻的两个用空格隔开)。(注:可执行文件名为e4_2.exe)程序设计:main(){intl,i,n,d1,r1,d2,r2,d3,r3;for(i=0;i<=2;i++){l=1;n=1;printf("Pleaseenterd1>=r1>=0,d2>=r2>=0,d3>=r3>=0:\n");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("%d\n",n);l=0;}elsen++;}if(l!=0)printf("no!\n");}}3.题目:编一C程序,它能读如若干浮点数f1、f2、...fn(以-9999.0为结束标记,-9999.0不算在内)并输出在f2、f3、...fn这n-1个数中大于f1的数的个数、等于f1的数的个数和小于f1的数的个数。(注:可执行文件名为e4_3.exe)程序设计:#include"math.h"main(){floatf[100],f1;intn=0,i,i1=0,i2=0,i3=0;printf("Pleaseenterfloat:\n");scanf("%f",&f1);f[0]=f1;while(abs(f[n]+9999.0)>=1e-4)scanf("%f",&f[++n]);for(i=1;i<=n-1;i++)if(f[i]>f1)i1++;elseif(abs(f[i]-f1)<1e-4)i2++;elsei3++;printf(">f1:%d\n",i1);printf("=f1:%d\n",i2);printf("%d\n",i3);}C语言上机试题:51.题目:编一C程序,它能读入若干个非零浮点数(相邻的两个数用空格隔开,以0.0为输入结束标记,0.0不算在内),计算并输出这些数的平均值。(注:可执行文件名为e5_1.exe)程序设计:#include"math.h"main(){floatf,s=0.0;intn=0;printf("Pleaseenterfloatnumber:\n");scanf("%f",&f);if(fabs(f-0.0)<1e-4)printf("Nonumber!\n");elsewhile(fabs(f-0.0)>1e-4){n++;s+=f;scanf("%f",&f);}if(n!=0)printf("%dnumberofaverageis:%f\n",n,s/n);}2.题目:编一C程序,它能反复读入正整数(相邻的用空格隔开),并判断它是否为素数(质数),若是,则输出"yes",否则,输出"no",直到读入1时,程序终止执行。(注:可执行文件名为e5_2.exe)程序设计:main(){intn,m,f;printf("Pleaseenteranumber:\n");scanf("%d",&n);while(n!=1){f=1;if(n==2)printf("%dyes\n",n);elsefor(m=2;mif(n%m==0){printf("%dno\n",n);f=0;break;}if(n!=2&&f==1)printf("%dyes\n",n);scanf("%d",&n);}}3.题目:编一C程序,它能读入21个整数(相邻的两个数用空格隔开),并输出值为中间的整数的值(即恰有10个值小于它,恰有10个值大于它)。(注:可执行文件名为e5_3.exe)程序设计:main(){inta[21],i,j,k,t;printf("Pleaseenter21numbers:\n");for(i=0;i<21;i++)scanf("%d",&a[i]);for(k=1;k<21;k++)for(j=20,i=0;i<21-k;i++,j--)if(a[j]{t=a[j];a[j]=a[j-1];a[j-1]=t;}printf("Thecenternumberis%d\n",a[10]);}C语言上机试题:61.题目:编一C程序,它能读入一串整数(用空格隔开相邻的两个整数,以-9999为输入结束标记,-9999不算在内),并以与读入次序相反的次序输出。(注:可执行文件名为e6_1.exe)程序设计:main(){inta[100],i=-1,n;printf("Pleaseenternumbers:\n");do{i++;scanf("%d",&a[i]);}while(a[i]!=-9999);n=i-1;for(i=n;i>=0;i--)printf("%d",a[i]);printf("\n");}2.题目:编一C程序,它能以字符串形式读入两个无符号正整数m和n(两个串各占一行),计算并输出这两个整数的和,其中m和n的值最大可为1000亿。(注:可执行文件名为e6_2.exe)程序设计:#include"stdio.h"#include"string.h"main(){charm[20],n[20],mn[20];intml,nl,ms,ns,mns,k,i,j,f;printf("Pleaseenter2numberstring:\n");scanf("%s",m);scanf("%s",n);ml=strlen(m);nl=strlen(n);if(mlfor(i=ml-1,j=nl-1;i>=ml-nl-1;i--,j--)n[i]=n[j];for(i=0;ifor(i=ml-1;i>=0;i--){ms=m[i]-48;ns=n[i]-48;mns=ms+ns;if(mns<10)f=0;elsef=1;if(mns<10)m[i]+=ns;else{m[i]+=ns-10;m[i-1]+=f;}}if(f==0)printf("%s\n",m);else{for(i=ml;i>0;i--)m[i]=m[i-1];m[0]='1';printf("%s\n",m);}}3.题目:编一C程序,它能读入10个浮点数(相邻的两个数用空格隔开),计算并输出其中最大数和最小数之差。(注:可执行文件名为e6_3.exe)程序设计:main(){floatf[9],max,min;inti;printf("Pleaseenter10float:\n");for(i=0;i<10;i++)scanf("%f",&f[i]);max=min=f[0];for(i=0;i<10;i++){if(maxmax=f[i];if(min>f[i])min=f[i];}printf("max=%f,min=%f,max-min=%f\n",max,min,max-min);}C语言上机试题:71.题目:编一C程序,它能读入10个用空格隔开的整数n1,n2,…,n10,对于i=1,2,…10,执行:若ni是某个整数的平方,则输出yes,否则输出no。(注:可执行文件名为e7_1.exe)程序设计:#include"math.h"main(){inta[9],i,j,n;printf("Pleaseenter10number:\n");for(i=0;i<10;i++)scanf("%d",&a[i]);for(i=0;i<10;i++)if(a[i]==1)printf("%dyes\n",a[i]);else{n=(int)(floor(sqrt(a[i])));if(a[i]==n*n)printf("%dyes\n",a[i]);elseprintf("%dno\n",a[i]);}}2.题目:编一C程序,它能读入由空格隔开的5个正整数,对每个正整数n,判断,若n是完全数(即n=d1+d2+..+dk,其中d1,d2,..dk是n的所有小于它的因子,如6的所有小于它的因子是1,2,3,6=1+2+3,即6是完全数),则输出yes,否则输出no。(注:可执行文件名为e7_2.exe)程序设计:main(){inta[5],i,j,n;printf("Pleaseenter5number:\n");for(i=0;i<5;i++)scanf("%d",&a[i]);for(i=0;i<5;i++){n=0;for(j=1;jif(a[i]%j==0)n+=j;if(n==a[i])printf("%dyes\n",a[i]);elseprintf("%dno\n",a[i]);}}3.题目:编一C程序,它能读入一个正整数n(n<10),然后输出如下图形:程序设计:main(){staticinta[20][20];intn,i,j,k;printf("Pleaseintern=");scanf("%d",&n);printf("\n");for(i=0;i{k=1;for(j=0;j<2*n-1;j++){if(j>n-i-2)a[i][j]=i+1;if(k<=2*i+1+n-i-2)k++;elsebreak;}}for(i=0;ifor(j=0;j<2*n-1;j++){if(a[i][j]==0)a[i][j]='';elsea[i][j]+=48;}for(i=0;i{printf("\n");for(j=0;j<2*n-1;j++)printf("%c",a[i][j]);}for(i=n-2;i>=0;i--){printf("\n");for(j=0;j<2*n-1;j++)printf("%c",a[i][j]);}printf("\n");}C语言上机试题:81.题目:编一C程序,它能读入一个正整数n,然后输出如下图形:(注:可执行文件名为e8_1.exe)程序设计:main(){staticchara[80][80];intn,i,j,k;printf("Pleaseintern=");scanf("%d",&n);printf("\n");f
{max=a[i][j];
max_i=i;
max_j=j;
}
printf("max_i=%d,max_j=%d\n",max_i+1,max_j+1);
2.题目:
设y(n)=1n<=1时
y(n)=-y(n-2)+2*y(n-1)n>1时
编一C程序,它能对读入的任意n(n>=0且n<50),能计算并输出y(n)的值。
程序命名为e1_2.exe)
inty(n)
intn;
{if(n<=1)return
(1);
elsereturn(-y(n-2)+2*y(n-1));
{intn;
printf("y(%d)=%d\n",n,y(n));
3.题目:
编一C程序,它能读入一个字符串(串长<100,串中可能有空格符),计算并输出该字符串中十进制数字的个数。
程序命名为e1_3.exe)
#include"stdio.h"
#include"string.h"
{chara[100];
inti,l,num=0;
printf("Pleaseinterastring:
gets(a);
l=strlen(a);
for(i=0;iif(a[i]>='0'&&a[i]<='9')num++;printf("Numberis%d\n",num);}C语言上机试题:21.题目:编一C程序,它能读入一正整数n,(n<10),并输出如下图形:(可执行文件名为e2_1.exe)程序设计:main(){staticinta[20][20];intn,i,j,k;printf("Pleaseintern=");scanf("%d",&n);printf("\n");for(i=0;i{k=1;for(j=0;j<2*n-1;j++){if(j>n-i-2)a[i][j]=i+1;if(k<=2*i+1+n-i-2)k++;elsebreak;}}for(i=0;ifor(j=0;j<2*n-1;j++){if(a[i][j]==0)a[i][j]='';elsea[i][j]+=48;}for(i=0;i{printf("\n");for(j=0;j<2*n-1;j++)printf("%c",a[i][j]);}for(i=n-2;i>=0;i--){printf("\n");for(j=0;j<2*n-1;j++)printf("%c",a[i][j]);}printf("\n");}2.题目:编一C程序,它能读入矩阵A的行数L,列数M,矩阵B的列数N,矩阵B的行数是M。L,M,N值都小于20),以及按行读入矩阵A的L*M个元素(整数)及矩阵B的M*N个元素(整数),计算并输出A与B的矩阵乘积(按行,列输出)。(输入时,相邻的两个整数用空格隔开)。(可执行文件名为e2_2.exe)程序设计:main(){inta[20][20],b[20][20],c[20][20],l,m,n,i,j,k;printf("Pleaseintera[l][m]andb[m][n]ofl,m,n:");scanf("%d,%d,%d",&l,&m,&n);printf("\n");printf("Pleaseintera[l][m]:\n");for(i=0;ifor(j=0;jscanf("%d",&a[i][j]);printf("Pleaseinterb[m][n]:\n");for(i=0;ifor(j=0;jscanf("%d",&b[i][j]);for(i=0;ifor(j=0;j{c[i][j]=0;for(k=0;kc[i][j]+=a[i][k]*b[k][j];}printf("c[l][n]=a[l][m]*b[m][n]:");for(i=0;i{printf("\n");for(j=0;jprintf("%-5d",c[i][j]);}printf("\n");}3.题目:编一C程序,它能读入n(n<200)个整数(以-9999为结束标记,-9999不算在内,相邻的两个整数用空格隔开),找出第1到第n-1个数中第一个与第n个数相等的那个数,并输出该数读入时的序号(序号从1开始记)。(可执行文件名为e2_3.exe)程序设计:main(){inta[200],n,i;scanf("%d",&a[0]);if(a[0]!=-9999){for(i=1,n=0;a[i-1]!=-9999;i++,n++)scanf("%d",&a[i]);}printf("%d,%d\n",n,a[n-1]);for(i=0;iif(a[i]==a[n-1]){printf("%d\n",i+1);break;}}C语言上机试题:31.题目:编一C程序,它能读入一正整数n(n<40),并输出如下图形:共n行,每行n个A,下一行比上一行右移一列.(注:可执行文件名为e3_1.exe)程序设计:main(){intn,i,j,k;charch='A',space='';printf("Pleaseintern=");scanf("%d",&n);printf("\n");for(i=0;i{for(j=0;jfor(k=0;kprintf("\n");}}2.题目:编一C程序,它能读入一个正整数,并输出该正整数的17进制形式,依次用A、B、C、D、E、F、G表示10、11、12、13、14、15、16。(注:可执行文件名为e3_2.exe)程序设计:main(){charb[18]={"0123456789ABCDEFG"};intc[64],d,i=0,base=17;longn;printf("Pleaseentern=");scanf("%ld",&n);printf("\n");do{c[i]=n%base;i++;n=n/base;}while(n!=0);printf("Transmitenewbase=17:\n");for(--i;i>=0;--i){d=c[i];printf("%c",b[d]);}printf("%c",'\n');}3.题目:编一C程序,它能读入两个整数m与n,计算并输出m与n的绝对值的最大公约数及最小公倍数。(注:可执行文件名为e3_3.exe)程序设计:main(){intm,n,d,r;printf("Pleaseentermandn:\n");scanf("%d%d",&m,&n);if(m<0)m=-m;if(n<0)n=-n;if(m{r=m;m=n;n=r;}d=m;while(d%n!=0)d+=m;printf("%d\n",d);do{r=m%n;if(r!=0){m=n;n=r;}}while(r!=0);printf("%d\n",n);}C语言上机试题:41.题目:编一C程序,它能读入一个13进制数(用字符串表示,用A、B、C分别表示10、11和12),输出该数的值(按十进制数输出)。如输入为3B时,输出为50。(注:可执行文件名为e4_1.exe)程序设计:main(){chara[40];intn=0,i=0,j,k,s=0;printf("Pleaseentera13basenumber:\n");scanf("%s",a);while(a[i++]!='\0')n++;for(i=n-1;i>=0;i--){if((a[i]>='0')&&(a[i]<='9'))k=a[i]-'0';elseif((a[i]>='A')&&(a[i]<='C'))k=a[i]-55;elseprintf("error!\n");for(j=1;js+=k;}printf("To10basenumberis:\n");printf("%d\n",s);}2.题目:编一C程序,它能依次读入三组d1、r1、d2、r2、d3、r3共18个非负整数(其中0<=r1(输入整数时,相邻的两个用空格隔开)。(注:可执行文件名为e4_2.exe)程序设计:main(){intl,i,n,d1,r1,d2,r2,d3,r3;for(i=0;i<=2;i++){l=1;n=1;printf("Pleaseenterd1>=r1>=0,d2>=r2>=0,d3>=r3>=0:\n");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("%d\n",n);l=0;}elsen++;}if(l!=0)printf("no!\n");}}3.题目:编一C程序,它能读如若干浮点数f1、f2、...fn(以-9999.0为结束标记,-9999.0不算在内)并输出在f2、f3、...fn这n-1个数中大于f1的数的个数、等于f1的数的个数和小于f1的数的个数。(注:可执行文件名为e4_3.exe)程序设计:#include"math.h"main(){floatf[100],f1;intn=0,i,i1=0,i2=0,i3=0;printf("Pleaseenterfloat:\n");scanf("%f",&f1);f[0]=f1;while(abs(f[n]+9999.0)>=1e-4)scanf("%f",&f[++n]);for(i=1;i<=n-1;i++)if(f[i]>f1)i1++;elseif(abs(f[i]-f1)<1e-4)i2++;elsei3++;printf(">f1:%d\n",i1);printf("=f1:%d\n",i2);printf("%d\n",i3);}C语言上机试题:51.题目:编一C程序,它能读入若干个非零浮点数(相邻的两个数用空格隔开,以0.0为输入结束标记,0.0不算在内),计算并输出这些数的平均值。(注:可执行文件名为e5_1.exe)程序设计:#include"math.h"main(){floatf,s=0.0;intn=0;printf("Pleaseenterfloatnumber:\n");scanf("%f",&f);if(fabs(f-0.0)<1e-4)printf("Nonumber!\n");elsewhile(fabs(f-0.0)>1e-4){n++;s+=f;scanf("%f",&f);}if(n!=0)printf("%dnumberofaverageis:%f\n",n,s/n);}2.题目:编一C程序,它能反复读入正整数(相邻的用空格隔开),并判断它是否为素数(质数),若是,则输出"yes",否则,输出"no",直到读入1时,程序终止执行。(注:可执行文件名为e5_2.exe)程序设计:main(){intn,m,f;printf("Pleaseenteranumber:\n");scanf("%d",&n);while(n!=1){f=1;if(n==2)printf("%dyes\n",n);elsefor(m=2;mif(n%m==0){printf("%dno\n",n);f=0;break;}if(n!=2&&f==1)printf("%dyes\n",n);scanf("%d",&n);}}3.题目:编一C程序,它能读入21个整数(相邻的两个数用空格隔开),并输出值为中间的整数的值(即恰有10个值小于它,恰有10个值大于它)。(注:可执行文件名为e5_3.exe)程序设计:main(){inta[21],i,j,k,t;printf("Pleaseenter21numbers:\n");for(i=0;i<21;i++)scanf("%d",&a[i]);for(k=1;k<21;k++)for(j=20,i=0;i<21-k;i++,j--)if(a[j]{t=a[j];a[j]=a[j-1];a[j-1]=t;}printf("Thecenternumberis%d\n",a[10]);}C语言上机试题:61.题目:编一C程序,它能读入一串整数(用空格隔开相邻的两个整数,以-9999为输入结束标记,-9999不算在内),并以与读入次序相反的次序输出。(注:可执行文件名为e6_1.exe)程序设计:main(){inta[100],i=-1,n;printf("Pleaseenternumbers:\n");do{i++;scanf("%d",&a[i]);}while(a[i]!=-9999);n=i-1;for(i=n;i>=0;i--)printf("%d",a[i]);printf("\n");}2.题目:编一C程序,它能以字符串形式读入两个无符号正整数m和n(两个串各占一行),计算并输出这两个整数的和,其中m和n的值最大可为1000亿。(注:可执行文件名为e6_2.exe)程序设计:#include"stdio.h"#include"string.h"main(){charm[20],n[20],mn[20];intml,nl,ms,ns,mns,k,i,j,f;printf("Pleaseenter2numberstring:\n");scanf("%s",m);scanf("%s",n);ml=strlen(m);nl=strlen(n);if(mlfor(i=ml-1,j=nl-1;i>=ml-nl-1;i--,j--)n[i]=n[j];for(i=0;ifor(i=ml-1;i>=0;i--){ms=m[i]-48;ns=n[i]-48;mns=ms+ns;if(mns<10)f=0;elsef=1;if(mns<10)m[i]+=ns;else{m[i]+=ns-10;m[i-1]+=f;}}if(f==0)printf("%s\n",m);else{for(i=ml;i>0;i--)m[i]=m[i-1];m[0]='1';printf("%s\n",m);}}3.题目:编一C程序,它能读入10个浮点数(相邻的两个数用空格隔开),计算并输出其中最大数和最小数之差。(注:可执行文件名为e6_3.exe)程序设计:main(){floatf[9],max,min;inti;printf("Pleaseenter10float:\n");for(i=0;i<10;i++)scanf("%f",&f[i]);max=min=f[0];for(i=0;i<10;i++){if(maxmax=f[i];if(min>f[i])min=f[i];}printf("max=%f,min=%f,max-min=%f\n",max,min,max-min);}C语言上机试题:71.题目:编一C程序,它能读入10个用空格隔开的整数n1,n2,…,n10,对于i=1,2,…10,执行:若ni是某个整数的平方,则输出yes,否则输出no。(注:可执行文件名为e7_1.exe)程序设计:#include"math.h"main(){inta[9],i,j,n;printf("Pleaseenter10number:\n");for(i=0;i<10;i++)scanf("%d",&a[i]);for(i=0;i<10;i++)if(a[i]==1)printf("%dyes\n",a[i]);else{n=(int)(floor(sqrt(a[i])));if(a[i]==n*n)printf("%dyes\n",a[i]);elseprintf("%dno\n",a[i]);}}2.题目:编一C程序,它能读入由空格隔开的5个正整数,对每个正整数n,判断,若n是完全数(即n=d1+d2+..+dk,其中d1,d2,..dk是n的所有小于它的因子,如6的所有小于它的因子是1,2,3,6=1+2+3,即6是完全数),则输出yes,否则输出no。(注:可执行文件名为e7_2.exe)程序设计:main(){inta[5],i,j,n;printf("Pleaseenter5number:\n");for(i=0;i<5;i++)scanf("%d",&a[i]);for(i=0;i<5;i++){n=0;for(j=1;jif(a[i]%j==0)n+=j;if(n==a[i])printf("%dyes\n",a[i]);elseprintf("%dno\n",a[i]);}}3.题目:编一C程序,它能读入一个正整数n(n<10),然后输出如下图形:程序设计:main(){staticinta[20][20];intn,i,j,k;printf("Pleaseintern=");scanf("%d",&n);printf("\n");for(i=0;i{k=1;for(j=0;j<2*n-1;j++){if(j>n-i-2)a[i][j]=i+1;if(k<=2*i+1+n-i-2)k++;elsebreak;}}for(i=0;ifor(j=0;j<2*n-1;j++){if(a[i][j]==0)a[i][j]='';elsea[i][j]+=48;}for(i=0;i{printf("\n");for(j=0;j<2*n-1;j++)printf("%c",a[i][j]);}for(i=n-2;i>=0;i--){printf("\n");for(j=0;j<2*n-1;j++)printf("%c",a[i][j]);}printf("\n");}C语言上机试题:81.题目:编一C程序,它能读入一个正整数n,然后输出如下图形:(注:可执行文件名为e8_1.exe)程序设计:main(){staticchara[80][80];intn,i,j,k;printf("Pleaseintern=");scanf("%d",&n);printf("\n");f
if(a[i]>='0'&&a[i]<='9')
num++;
printf("Numberis%d\n",num);
2
编一C程序,它能读入一正整数n,(n<10),并输出如下图形:
(可执行文件名为e2_1.exe)
{staticinta[20][20];
intn,i,j,k;
for(i=0;i{k=1;for(j=0;j<2*n-1;j++){if(j>n-i-2)a[i][j]=i+1;if(k<=2*i+1+n-i-2)k++;elsebreak;}}for(i=0;ifor(j=0;j<2*n-1;j++){if(a[i][j]==0)a[i][j]='';elsea[i][j]+=48;}for(i=0;i{printf("\n");for(j=0;j<2*n-1;j++)printf("%c",a[i][j]);}for(i=n-2;i>=0;i--){printf("\n");for(j=0;j<2*n-1;j++)printf("%c",a[i][j]);}printf("\n");}2.题目:编一C程序,它能读入矩阵A的行数L,列数M,矩阵B的列数N,矩阵B的行数是M。L,M,N值都小于20),以及按行读入矩阵A的L*M个元素(整数)及矩阵B的M*N个元素(整数),计算并输出A与B的矩阵乘积(按行,列输出)。(输入时,相邻的两个整数用空格隔开)。(可执行文件名为e2_2.exe)程序设计:main(){inta[20][20],b[20][20],c[20][20],l,m,n,i,j,k;printf("Pleaseintera[l][m]andb[m][n]ofl,m,n:");scanf("%d,%d,%d",&l,&m,&n);printf("\n");printf("Pleaseintera[l][m]:\n");for(i=0;ifor(j=0;jscanf("%d",&a[i][j]);printf("Pleaseinterb[m][n]:\n");for(i=0;ifor(j=0;jscanf("%d",&b[i][j]);for(i=0;ifor(j=0;j{c[i][j]=0;for(k=0;kc[i][j]+=a[i][k]*b[k][j];}printf("c[l][n]=a[l][m]*b[m][n]:");for(i=0;i{printf("\n");for(j=0;jprintf("%-5d",c[i][j]);}printf("\n");}3.题目:编一C程序,它能读入n(n<200)个整数(以-9999为结束标记,-9999不算在内,相邻的两个整数用空格隔开),找出第1到第n-1个数中第一个与第n个数相等的那个数,并输出该数读入时的序号(序号从1开始记)。(可执行文件名为e2_3.exe)程序设计:main(){inta[200],n,i;scanf("%d",&a[0]);if(a[0]!=-9999){for(i=1,n=0;a[i-1]!=-9999;i++,n++)scanf("%d",&a[i]);}printf("%d,%d\n",n,a[n-1]);for(i=0;iif(a[i]==a[n-1]){printf("%d\n",i+1);break;}}C语言上机试题:31.题目:编一C程序,它能读入一正整数n(n<40),并输出如下图形:共n行,每行n个A,下一行比上一行右移一列.(注:可执行文件名为e3_1.exe)程序设计:main(){intn,i,j,k;charch='A',space='';printf("Pleaseintern=");scanf("%d",&n);printf("\n");for(i=0;i{for(j=0;jfor(k=0;kprintf("\n");}}2.题目:编一C程序,它能读入一个正整数,并输出该正整数的17进制形式,依次用A、B、C、D、E、F、G表示10、11、12、13、14、15、16。(注:可执行文件名为e3_2.exe)程序设计:main(){charb[18]={"0123456789ABCDEFG"};intc[64],d,i=0,base=17;longn;printf("Pleaseentern=");scanf("%ld",&n);printf("\n");do{c[i]=n%base;i++;n=n/base;}while(n!=0);printf("Transmitenewbase=17:\n");for(--i;i>=0;--i){d=c[i];printf("%c",b[d]);}printf("%c",'\n');}3.题目:编一C程序,它能读入两个整数m与n,计算并输出m与n的绝对值的最大公约数及最小公倍数。(注:可执行文件名为e3_3.exe)程序设计:main(){intm,n,d,r;printf("Pleaseentermandn:\n");scanf("%d%d",&m,&n);if(m<0)m=-m;if(n<0)n=-n;if(m{r=m;m=n;n=r;}d=m;while(d%n!=0)d+=m;printf("%d\n",d);do{r=m%n;if(r!=0){m=n;n=r;}}while(r!=0);printf("%d\n",n);}C语言上机试题:41.题目:编一C程序,它能读入一个13进制数(用字符串表示,用A、B、C分别表示10、11和12),输出该数的值(按十进制数输出)。如输入为3B时,输出为50。(注:可执行文件名为e4_1.exe)程序设计:main(){chara[40];intn=0,i=0,j,k,s=0;printf("Pleaseentera13basenumber:\n");scanf("%s",a);while(a[i++]!='\0')n++;for(i=n-1;i>=0;i--){if((a[i]>='0')&&(a[i]<='9'))k=a[i]-'0';elseif((a[i]>='A')&&(a[i]<='C'))k=a[i]-55;elseprintf("error!\n");for(j=1;js+=k;}printf("To10basenumberis:\n");printf("%d\n",s);}2.题目:编一C程序,它能依次读入三组d1、r1、d2、r2、d3、r3共18个非负整数(其中0<=r1(输入整数时,相邻的两个用空格隔开)。(注:可执行文件名为e4_2.exe)程序设计:main(){intl,i,n,d1,r1,d2,r2,d3,r3;for(i=0;i<=2;i++){l=1;n=1;printf("Pleaseenterd1>=r1>=0,d2>=r2>=0,d3>=r3>=0:\n");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("%d\n",n);l=0;}elsen++;}if(l!=0)printf("no!\n");}}3.题目:编一C程序,它能读如若干浮点数f1、f2、...fn(以-9999.0为结束标记,-9999.0不算在内)并输出在f2、f3、...fn这n-1个数中大于f1的数的个数、等于f1的数的个数和小于f1的数的个数。(注:可执行文件名为e4_3.exe)程序设计:#include"math.h"main(){floatf[100],f1;intn=0,i,i1=0,i2=0,i3=0;printf("Pleaseenterfloat:\n");scanf("%f",&f1);f[0]=f1;while(abs(f[n]+9999.0)>=1e-4)scanf("%f",&f[++n]);for(i=1;i<=n-1;i++)if(f[i]>f1)i1++;elseif(abs(f[i]-f1)<1e-4)i2++;elsei3++;printf(">f1:%d\n",i1);printf("=f1:%d\n",i2);printf("%d\n",i3);}C语言上机试题:51.题目:编一C程序,它能读入若干个非零浮点数(相邻的两个数用空格隔开,以0.0为输入结束标记,0.0不算在内),计算并输出这些数的平均值。(注:可执行文件名为e5_1.exe)程序设计:#include"math.h"main(){floatf,s=0.0;intn=0;printf("Pleaseenterfloatnumber:\n");scanf("%f",&f);if(fabs(f-0.0)<1e-4)printf("Nonumber!\n");elsewhile(fabs(f-0.0)>1e-4){n++;s+=f;scanf("%f",&f);}if(n!=0)printf("%dnumberofaverageis:%f\n",n,s/n);}2.题目:编一C程序,它能反复读入正整数(相邻的用空格隔开),并判断它是否为素数(质数),若是,则输出"yes",否则,输出"no",直到读入1时,程序终止执行。(注:可执行文件名为e5_2.exe)程序设计:main(){intn,m,f;printf("Pleaseenteranumber:\n");scanf("%d",&n);while(n!=1){f=1;if(n==2)printf("%dyes\n",n);elsefor(m=2;mif(n%m==0){printf("%dno\n",n);f=0;break;}if(n!=2&&f==1)printf("%dyes\n",n);scanf("%d",&n);}}3.题目:编一C程序,它能读入21个整数(相邻的两个数用空格隔开),并输出值为中间的整数的值(即恰有10个值小于它,恰有10个值大于它)。(注:可执行文件名为e5_3.exe)程序设计:main(){inta[21],i,j,k,t;printf("Pleaseenter21numbers:\n");for(i=0;i<21;i++)scanf("%d",&a[i]);for(k=1;k<21;k++)for(j=20,i=0;i<21-k;i++,j--)if(a[j]{t=a[j];a[j]=a[j-1];a[j-1]=t;}printf("Thecenternumberis%d\n",a[10]);}C语言上机试题:61.题目:编一C程序,它能读入一串整数(用空格隔开相邻的两个整数,以-9999为输入结束标记,-9999不算在内),并以与读入次序相反的次序输出。(注:可执行文件名为e6_1.exe)程序设计:main(){inta[100],i=-1,n;printf("Pleaseenternumbers:\n");do{i++;scanf("%d",&a[i]);}while(a[i]!=-9999);n=i-1;for(i=n;i>=0;i--)printf("%d",a[i]);printf("\n");}2.题目:编一C程序,它能以字符串形式读入两个无符号正整数m和n(两个串各占一行),计算并输出这两个整数的和,其中m和n的值最大可为1000亿。(注:可执行文件名为e6_2.exe)程序设计:#include"stdio.h"#include"string.h"main(){charm[20],n[20],mn[20];intml,nl,ms,ns,mns,k,i,j,f;printf("Pleaseenter2numberstring:\n");scanf("%s",m);scanf("%s",n);ml=strlen(m);nl=strlen(n);if(mlfor(i=ml-1,j=nl-1;i>=ml-nl-1;i--,j--)n[i]=n[j];for(i=0;ifor(i=ml-1;i>=0;i--){ms=m[i]-48;ns=n[i]-48;mns=ms+ns;if(mns<10)f=0;elsef=1;if(mns<10)m[i]+=ns;else{m[i]+=ns-10;m[i-1]+=f;}}if(f==0)printf("%s\n",m);else{for(i=ml;i>0;i--)m[i]=m[i-1];m[0]='1';printf("%s\n",m);}}3.题目:编一C程序,它能读入10个浮点数(相邻的两个数用空格隔开),计算并输出其中最大数和最小数之差。(注:可执行文件名为e6_3.exe)程序设计:main(){floatf[9],max,min;inti;printf("Pleaseenter10float:\n");for(i=0;i<10;i++)scanf("%f",&f[i]);max=min=f[0];for(i=0;i<10;i++){if(maxmax=f[i];if(min>f[i])min=f[i];}printf("max=%f,min=%f,max-min=%f\n",max,min,max-min);}C语言上机试题:71.题目:编一C程序,它能读入10个用空格隔开的整数n1,n2,…,n10,对于i=1,2,…10,执行:若ni是某个整数的平方,则输出yes,否则输出no。(注:可执行文件名为e7_1.exe)程序设计:#include"math.h"main(){inta[9],i,j,n;printf("Pleaseenter10number:\n");for(i=0;i<10;i++)scanf("%d",&a[i]);for(i=0;i<10;i++)if(a[i]==1)printf("%dyes\n",a[i]);else{n=(int)(floor(sqrt(a[i])));if(a[i]==n*n)printf("%dyes\n",a[i]);elseprintf("%dno\n",a[i]);}}2.题目:编一C程序,它能读入由空格隔开的5个正整数,对每个正整数n,判断,若n是完全数(即n=d1+d2+..+dk,其中d1,d2,..dk是n的所有小于它的因子,如6的所有小于它的因子是1,2,3,6=1+2+3,即6是完全数),则输出yes,否则输出no。(注:可执行文件名为e7_2.exe)程序设计:main(){inta[5],i,j,n;printf("Pleaseenter5number:\n");for(i=0;i<5;i++)scanf("%d",&a[i]);for(i=0;i<5;i++){n=0;for(j=1;jif(a[i]%j==0)n+=j;if(n==a[i])printf("%dyes\n",a[i]);elseprintf("%dno\n",a[i]);}}3.题目:编一C程序,它能读入一个正整数n(n<10),然后输出如下图形:程序设计:main(){staticinta[20][20];intn,i,j,k;printf("Pleaseintern=");scanf("%d",&n);printf("\n");for(i=0;i{k=1;for(j=0;j<2*n-1;j++){if(j>n-i-2)a[i][j]=i+1;if(k<=2*i+1+n-i-2)k++;elsebreak;}}for(i=0;ifor(j=0;j<2*n-1;j++){if(a[i][j]==0)a[i][j]='';elsea[i][j]+=48;}for(i=0;i{printf("\n");for(j=0;j<2*n-1;j++)printf("%c",a[i][j]);}for(i=n-2;i>=0;i--){printf("\n");for(j=0;j<2*n-1;j++)printf("%c",a[i][j]);}printf("\n");}C语言上机试题:81.题目:编一C程序,它能读入一个正整数n,然后输出如下图形:(注:可执行文件名为e8_1.exe)程序设计:main(){staticchara[80][80];intn,i,j,k;printf("Pleaseintern=");scanf("%d",&n);printf("\n");f
{k=1;
for(j=0;j<2*n-1;j++)
{if(j>n-i-2)a[i][j]=i+1;
if(k<=2*i+1+n-i-2)k++;
elsebreak;
for(i=0;ifor(j=0;j<2*n-1;j++){if(a[i][j]==0)a[i][j]='';elsea[i][j]+=48;}for(i=0;i{printf("\n");for(j=0;j<2*n-1;j++)printf("%c",a[i][j]);}for(i=n-2;i>=0;i--){printf("\n");for(j=0;j<2*n-1;j++)printf("%c",a[i][j]);}printf("\n");}2.题目:编一C程序,它能读入矩阵A的行数L,列数M,矩阵B的列数N,矩阵B的行数是M。L,M,N值都小于20),以及按行读入矩阵A的L*M个元素(整数)及矩阵B的M*N个元素(整数),计算并输出A与B的矩阵乘积(按行,列输出)。(输入时,相邻的两个整数用空格隔开)。(可执行文件名为e2_2.exe)程序设计:main(){inta[20][20],b[20][20],c[20][20],l,m,n,i,j,k;printf("Pleaseintera[l][m]andb[m][n]ofl,m,n:");scanf("%d,%d,%d",&l,&m,&n);printf("\n");printf("Pleaseintera[l][m]:\n");for(i=0;ifor(j=0;jscanf("%d",&a[i][j]);printf("Pleaseinterb[m][n]:\n");for(i=0;ifor(j=0;jscanf("%d",&b[i][j]);for(i=0;ifor(j=0;j{c[i][j]=0;for(k=0;kc[i][j]+=a[i][k]*b[k][j];}printf("c[l][n]=a[l][m]*b[m][n]:");for(i=0;i{printf("\n");for(j=0;jprintf("%-5d",c[i][j]);}printf("\n");}3.题目:编一C程序,它能读入n(n<200)个整数(以-9999为结束标记,-9999不算在内,相邻的两个整数用空格隔开),找出第1到第n-1个数中第一个与第n个数相等的那个数,并输出该数读入时的序号(序号从1开始记)。(可执行文件名为e2_3.exe)程序设计:main(){inta[200],n,i;scanf("%d",&a[0]);if(a[0]!=-9999){for(i=1,n=0;a[i-1]!=-9999;i++,n++)scanf("%d",&a[i]);}printf("%d,%d\n",n,a[n-1]);for(i=0;iif(a[i]==a[n-1]){printf("%d\n",i+1);break;}}C语言上机试题:31.题目:编一C程序,它能读入一正整数n(n<40),并输出如下图形:共n行,每行n个A,下一行比上一行右移一列.(注:可执行文件名为e3_1.exe)程序设计:main(){intn,i,j,k;charch='A',space='';printf("Pleaseintern=");scanf("%d",&n);printf("\n");for(i=0;i{for(j=0;jfor(k=0;kprintf("\n");}}2.题目:编一C程序,它能读入一个正整数,并输出该正整数的17进制形式,依次用A、B、C、D、E、F、G表示10、11、12、13、14、15、16。(注:可执行文件名为e3_2.exe)程序设计:main(){charb[18]={"0123456789ABCDEFG"};intc[64],d,i=0,base=17;longn;printf("Pleaseentern=");scanf("%ld",&n);printf("\n");do{c[i]=n%base;i++;n=n/base;}while(n!=0);printf("Transmitenewbase=17:\n");for(--i;i>=0;--i){d=c[i];printf("%c",b[d]);}printf("%c",'\n');}3.题目:编一C程序,它能读入两个整数m与n,计算并输出m与n的绝对值的最大公约数及最小公倍数。(注:可执行文件名为e3_3.exe)程序设计:main(){intm,n,d,r;printf("Pleaseentermandn:\n");scanf("%d%d",&m,&n);if(m<0)m=-m;if(n<0)n=-n;if(m{r=m;m=n;n=r;}d=m;while(d%n!=0)d+=m;printf("%d\n",d);do{r=m%n;if(r!=0){m=n;n=r;}}while(r!=0);printf("%d\n",n);}C语言上机试题:41.题目:编一C程序,它能读入一个13进制数(用字符串表示,用A、B、C分别表示10、11和12),输出该数的值(按十进制数输出)。如输入为3B时,输出为50。(注:可执行文件名为e4_1.exe)程序设计:main(){chara[40];intn=0,i=0,j,k,s=0;printf("Pleaseentera13basenumber:\n");scanf("%s",a);while(a[i++]!='\0')n++;for(i=n-1;i>=0;i--){if((a[i]>='0')&&(a[i]<='9'))k=a[i]-'0';elseif((a[i]>='A')&&(a[i]<='C'))k=a[i]-55;elseprintf("error!\n");for(j=1;js+=k;}printf("To10basenumberis:\n");printf("%d\n",s);}2.题目:编一C程序,它能依次读入三组d1、r1、d2、r2、d3、r3共18个非负整数(其中0<=r1(输入整数时,相邻的两个用空格隔开)。(注:可执行文件名为e4_2.exe)程序设计:main(){intl,i,n,d1,r1,d2,r2,d3,r3;for(i=0;i<=2;i++){l=1;n=1;printf("Pleaseenterd1>=r1>=0,d2>=r2>=0,d3>=r3>=0:\n");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("%d\n",n);l=0;}elsen++;}if(l!=0)printf("no!\n");}}3.题目:编一C程序,它能读如若干浮点数f1、f2、...fn(以-9999.0为结束标记,-9999.0不算在内)并输出在f2、f3、...fn这n-1个数中大于f1的数的个数、等于f1的数的个数和小于f1的数的个数。(注:可执行文件名为e4_3.exe)程序设计:#include"math.h"main(){floatf[100],f1;intn=0,i,i1=0,i2=0,i3=0;printf("Pleaseenterfloat:\n");scanf("%f",&f1);f[0]=f1;while(abs(f[n]+9999.0)>=1e-4)scanf("%f",&f[++n]);for(i=1;i<=n-1;i++)if(f[i]>f1)i1++;elseif(abs(f[i]-f1)<1e-4)i2++;elsei3++;printf(">f1:%d\n",i1);printf("=f1:%d\n",i2);printf("%d\n",i3);}C语言上机试题:51.题目:编一C程序,它能读入若干个非零浮点数(相邻的两个数用空格隔开,以0.0为输入结束标记,0.0不算在内),计算并输出这些数的平均值。(注:可执行文件名为e5_1.exe)程序设计:#include"math.h"main(){floatf,s=0.0;intn=0;printf("Pleaseenterfloatnumber:\n");scanf("%f",&f);if(fabs(f-0.0)<1e-4)printf("Nonumber!\n");elsewhile(fabs(f-0.0)>1e-4){n++;s+=f;scanf("%f",&f);}if(n!=0)printf("%dnumberofaverageis:%f\n",n,s/n);}2.题目:编一C程序,它能反复读入正整数(相邻的用空格隔开),并判断它是否为素数(质数),若是,则输出"yes",否则,输出"no",直到读入1时,程序终止执行。(注:可执行文件名为e5_2.exe)程序设计:main(){intn,m,f;printf("Pleaseenteranumber:\n");scanf("%d",&n);while(n!=1){f=1;if(n==2)printf("%dyes\n",n);elsefor(m=2;mif(n%m==0){printf("%dno\n",n);f=0;break;}if(n!=2&&f==1)printf("%dyes\n",n);scanf("%d",&n);}}3.题目:编一C程序,它能读入21个整数(相邻的两个数用空格隔开),并输出值为中间的整数的值(即恰有10个值小于它,恰有10个值大于它)。(注:可执行文件名为e5_3.exe)程序设计:main(){inta[21],i,j,k,t;printf("Pleaseenter21numbers:\n");for(i=0;i<21;i++)scanf("%d",&a[i]);for(k=1;k<21;k++)for(j=20,i=0;i<21-k;i++,j--)if(a[j]{t=a[j];a[j]=a[j-1];a[j-1]=t;}printf("Thecenternumberis%d\n",a[10]);}C语言上机试题:61.题目:编一C程序,它能读入一串整数(用空格隔开相邻的两个整数,以-9999为输入结束标记,-9999不算在内),并以与读入次序相反的次序输出。(注:可执行文件名为e6_1.exe)程序设计:main(){inta[100],i=-1,n;printf("Pleaseenternumbers:\n");do{i++;scanf("%d",&a[i]);}while(a[i]!=-9999);n=i-1;for(i=n;i>=0;i--)printf("%d",a[i]);printf("\n");}2.题目:编一C程序,它能以字符串形式读入两个无符号正整数m和n(两个串各占一行),计算并输出这两个整数的和,其中m和n的值最大可为1000亿。(注:可执行文件名为e6_2.exe)程序设计:#include"stdio.h"#include"string.h"main(){charm[20],n[20],mn[20];intml,nl,ms,ns,mns,k,i,j,f;printf("Pleaseenter2numberstring:\n");scanf("%s",m);scanf("%s",n);ml=strlen(m);nl=strlen(n);if(mlfor(i=ml-1,j=nl-1;i>=ml-nl-1;i--,j--)n[i]=n[j];for(i=0;ifor(i=ml-1;i>=0;i--){ms=m[i]-48;ns=n[i]-48;mns=ms+ns;if(mns<10)f=0;elsef=1;if(mns<10)m[i]+=ns;else{m[i]+=ns-10;m[i-1]+=f;}}if(f==0)printf("%s\n",m);else{for(i=ml;i>0;i--)m[i]=m[i-1];m[0]='1';printf("%s\n",m);}}3.题目:编一C程序,它能读入10个浮点数(相邻的两个数用空格隔开),计算并输出其中最大数和最小数之差。(注:可执行文件名为e6_3.exe)程序设计:main(){floatf[9],max,min;inti;printf("Pleaseenter10float:\n");for(i=0;i<10;i++)scanf("%f",&f[i]);max=min=f[0];for(i=0;i<10;i++){if(maxmax=f[i];if(min>f[i])min=f[i];}printf("max=%f,min=%f,max-min=%f\n",max,min,max-min);}C语言上机试题:71.题目:编一C程序,它能读入10个用空格隔开的整数n1,n2,…,n10,对于i=1,2,…10,执行:若ni是某个整数的平方,则输出yes,否则输出no。(注:可执行文件名为e7_1.exe)程序设计:#include"math.h"main(){inta[9],i,j,n;printf("Pleaseenter10number:\n");for(i=0;i<10;i++)scanf("%d",&a[i]);for(i=0;i<10;i++)if(a[i]==1)printf("%dyes\n",a[i]);else{n=(int)(floor(sqrt(a[i])));if(a[i]==n*n)printf("%dyes\n",a[i]);elseprintf("%dno\n",a[i]);}}2.题目:编一C程序,它能读入由空格隔开的5个正整数,对每个正整数n,判断,若n是完全数(即n=d1+d2+..+dk,其中d1,d2,..dk是n的所有小于它的因子,如6的所有小于它的因子是1,2,3,6=1+2+3,即6是完全数),则输出yes,否则输出no。(注:可执行文件名为e7_2.exe)程序设计:main(){inta[5],i,j,n;printf("Pleaseenter5number:\n");for(i=0;i<5;i++)scanf("%d",&a[i]);for(i=0;i<5;i++){n=0;for(j=1;jif(a[i]%j==0)n+=j;if(n==a[i])printf("%dyes\n",a[i]);elseprintf("%dno\n",a[i]);}}3.题目:编一C程序,它能读入一个正整数n(n<10),然后输出如下图形:程序设计:main(){staticinta[20][20];intn,i,j,k;printf("Pleaseintern=");scanf("%d",&n);printf("\n");for(i=0;i{k=1;for(j=0;j<2*n-1;j++){if(j>n-i-2)a[i][j]=i+1;if(k<=2*i+1+n-i-2)k++;elsebreak;}}for(i=0;ifor(j=0;j<2*n-1;j++){if(a[i][j]==0)a[i][j]='';elsea[i][j]+=48;}for(i=0;i{printf("\n");for(j=0;j<2*n-1;j++)printf("%c",a[i][j]);}for(i=n-2;i>=0;i--){printf("\n");for(j=0;j<2*n-1;j++)printf("%c",a[i][j]);}printf("\n");}C语言上机试题:81.题目:编一C程序,它能读入一个正整数n,然后输出如下图形:(注:可执行文件名为e8_1.exe)程序设计:main(){staticchara[80][80];intn,i,j,k;printf("Pleaseintern=");scanf("%d",&n);printf("\n");f
{if(a[i][j]==0)a[i][j]='';
elsea[i][j]+=48;
for(i=0;i{printf("\n");for(j=0;j<2*n-1;j++)printf("%c",a[i][j]);}for(i=n-2;i>=0;i--){printf("\n");for(j=0;j<2*n-1;j++)printf("%c",a[i][j]);}printf("\n");}2.题目:编一C程序,它能读入矩阵A的行数L,列数M,矩阵B的列数N,矩阵B的行数是M。L,M,N值都小于20),以及按行读入矩阵A的L*M个元素(整数)及矩阵B的M*N个元素(整数),计算并输出A与B的矩阵乘积(按行,列输出)。(输入时,相邻的两个整数用空格隔开)。(可执行文件名为e2_2.exe)程序设计:main(){inta[20][20],b[20][20],c[20][20],l,m,n,i,j,k;printf("Pleaseintera[l][m]andb[m][n]ofl,m,n:");scanf("%d,%d,%d",&l,&m,&n);printf("\n");printf("Pleaseintera[l][m]:\n");for(i=0;ifor(j=0;jscanf("%d",&a[i][j]);printf("Pleaseinterb[m][n]:\n");for(i=0;ifor(j=0;jscanf("%d",&b[i][j]);for(i=0;ifor(j=0;j{c[i][j]=0;for(k=0;kc[i][j]+=a[i][k]*b[k][j];}printf("c[l][n]=a[l][m]*b[m][n]:");for(i=0;i{printf("\n");for(j=0;jprintf("%-5d",c[i][j]);}printf("\n");}3.题目:编一C程序,它能读入n(n<200)个整数(以-9999为结束标记,-9999不算在内,相邻的两个整数用空格隔开),找出第1到第n-1个数中第一个与第n个数相等的那个数,并输出该数读入时的序号(序号从1开始记)。(可执行文件名为e2_3.exe)程序设计:main(){inta[200],n,i;scanf("%d",&a[0]);if(a[0]!=-9999){for(i=1,n=0;a[i-1]!=-9999;i++,n++)scanf("%d",&a[i]);}printf("%d,%d\n",n,a[n-1]);for(i=0;iif(a[i]==a[n-1]){printf("%d\n",i+1);break;}}C语言上机试题:31.题目:编一C程序,它能读入一正整数n(n<40),并输出如下图形:共n行,每行n个A,下一行比上一行右移一列.(注:可执行文件名为e3_1.exe)程序设计:main(){intn,i,j,k;charch='A',space='';printf("Pleaseintern=");scanf("%d",&n);printf("\n");for(i=0;i{for(j=0;jfor(k=0;kprintf("\n");}}2.题目:编一C程序,它能读入一个正整数,并输出该正整数的17进制形式,依次用A、B、C、D、E、F、G表示10、11、12、13、14、15、16。(注:可执行文件名为e3_2.exe)程序设计:main(){charb[18]={"0123456789ABCDEFG"};intc[64],d,i=0,base=17;longn;printf("Pleaseentern=");scanf("%ld",&n);printf("\n");do{c[i]=n%base;i++;n=n/base;}while(n!=0);printf("Transmitenewbase=17:\n");for(--i;i>=0;--i){d=c[i];printf("%c",b[d]);}printf("%c",'\n');}3.题目:编一C程序,它能读入两个整数m与n,计算并输出m与n的绝对值的最大公约数及最小公倍数。(注:可执行文件名为e3_3.exe)程序设计:main(){intm,n,d,r;printf("Pleaseentermandn:\n");scanf("%d%d",&m,&n);if(m<0)m=-m;if(n<0)n=-n;if(m{r=m;m=n;n=r;}d=m;while(d%n!=0)d+=m;printf("%d\n",d);do{r=m%n;if(r!=0){m=n;n=r;}}while(r!=0);printf("%d\n",n);}C语言上机试题:41.题目:编一C程序,它能读入一个13进制数(用字符串表示,用A、B、C分别表示10、11和12),输出该数的值(按十进制数输出)。如输入为3B时,输出为50。(注:可执行文件名为e4_1.exe)程序设计:main(){chara[40];intn=0,i=0,j,k,s=0;printf("Pleaseentera13basenumber:\n");scanf("%s",a);while(a[i++]!='\0')n++;for(i=n-1;i>=0;i--){if((a[i]>='0')&&(a[i]<='9'))k=a[i]-'0';elseif((a[i]>='A')&&(a[i]<='C'))k=a[i]-55;elseprintf("error!\n");for(j=1;js+=k;}printf("To10basenumberis:\n");printf("%d\n",s);}2.题目:编一C程序,它能依次读入三组d1、r1、d2、r2、d3、r3共18个非负整数(其中0<=r1(输入整数时,相邻的两个用空格隔开)。(注:可执行文件名为e4_2.exe)程序设计:main(){intl,i,n,d1,r1,d2,r2,d3,r3;for(i=0;i<=2;i++){l=1;n=1;printf("Pleaseenterd1>=r1>=0,d2>=r2>=0,d3>=r3>=0:\n");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("%d\n",n);l=0;}elsen++;}if(l!=0)printf("no!\n");}}3.题目:编一C程序,它能读如若干浮点数f1、f2、...fn(以-9999.0为结束标记,-9999.0不算在内)并输出在f2、f3、...fn这n-1个数中大于f1的数的个数、等于f1的数的个数和小于f1的数的个数。(注:可执行文件名为e4_3.exe)程序设计:#include"math.h"main(){floatf[100],f1;intn=0,i,i1=0,i2=0,i3=0;printf("Pleaseenterfloat:\n");scanf("%f",&f1);f[0]=f1;while(abs(f[n]+9999.0)>=1e-4)scanf("%f",&f[++n]);for(i=1;i<=n-1;i++)if(f[i]>f1)i1++;elseif(abs(f[i]-f1)<1e-4)i2++;elsei3++;printf(">f1:%d\n",i1);printf("=f1:%d\n",i2);printf("%d\n",i3);}C语言上机试题:51.题目:编一C程序,它能读入若干个非零浮点数(相邻的两个数用空格隔开,以0.0为输入结束标记,0.0不算在内),计算并输出这些数的平均值。(注:可执行文件名为e5_1.exe)程序设计:#include"math.h"main(){floatf,s=0.0;intn=0;printf("Pleaseenterfloatnumber:\n");scanf("%f",&f);if(fabs(f-0.0)<1e-4)printf("Nonumber!\n");elsewhile(fabs(f-0.0)>1e-4){n++;s+=f;scanf("%f",&f);}if(n!=0)printf("%dnumberofaverageis:%f\n",n,s/n);}2.题目:编一C程序,它能反复读入正整数(相邻的用空格隔开),并判断它是否为素数(质数),若是,则输出"yes",否则,输出"no",直到读入1时,程序终止执行。(注:可执行文件名为e5_2.exe)程序设计:main(){intn,m,f;printf("Pleaseenteranumber:\n");scanf("%d",&n);while(n!=1){f=1;if(n==2)printf("%dyes\n",n);elsefor(m=2;mif(n%m==0){printf("%dno\n",n);f=0;break;}if(n!=2&&f==1)printf("%dyes\n",n);scanf("%d",&n);}}3.题目:编一C程序,它能读入21个整数(相邻的两个数用空格隔开),并输出值为中间的整数的值(即恰有10个值小于它,恰有10个值大于它)。(注:可执行文件名为e5_3.exe)程序设计:main(){inta[21],i,j,k,t;printf("Pleaseenter21numbers:\n");for(i=0;i<21;i++)scanf("%d",&a[i]);for(k=1;k<21;k++)for(j=20,i=0;i<21-k;i++,j--)if(a[j]{t=a[j];a[j]=a[j-1];a[j-1]=t;}printf("Thecenternumberis%d\n",a[10]);}C语言上机试题:61.题目:编一C程序,它能读入一串整数(用空格隔开相邻的两个整数,以-9999为输入结束标记,-9999不算在内),并以与读入次序相反的次序输出。(注:可执行文件名为e6_1.exe)程序设计:main(){inta[100],i=-1,n;printf("Pleaseenternumbers:\n");do{i++;scanf("%d",&a[i]);}while(a[i]!=-9999);n=i-1;for(i=n;i>=0;i--)printf("%d",a[i]);printf("\n");}2.题目:编一C程序,它能以字符串形式读入两个无符号正整数m和n(两个串各占一行),计算并输出这两个整数的和,其中m和n的值最大可为1000亿。(注:可执行文件名为e6_2.exe)程序设计:#include"stdio.h"#include"string.h"main(){charm[20],n[20],mn[20];intml,nl,ms,ns,mns,k,i,j,f;printf("Pleaseenter2numberstring:\n");scanf("%s",m);scanf("%s",n);ml=strlen(m);nl=strlen(n);if(mlfor(i=ml-1,j=nl-1;i>=ml-nl-1;i--,j--)n[i]=n[j];for(i=0;ifor(i=ml-1;i>=0;i--){ms=m[i]-48;ns=n[i]-48;mns=ms+ns;if(mns<10)f=0;elsef=1;if(mns<10)m[i]+=ns;else{m[i]+=ns-10;m[i-1]+=f;}}if(f==0)printf("%s\n",m);else{for(i=ml;i>0;i--)m[i]=m[i-1];m[0]='1';printf("%s\n",m);}}3.题目:编一C程序,它能读入10个浮点数(相邻的两个数用空格隔开),计算并输出其中最大数和最小数之差。(注:可执行文件名为e6_3.exe)程序设计:main(){floatf[9],max,min;inti;printf("Pleaseenter10float:\n");for(i=0;i<10;i++)scanf("%f",&f[i]);max=min=f[0];for(i=0;i<10;i++){if(maxmax=f[i];if(min>f[i])min=f[i];}printf("max=%f,min=%f,max-min=%f\n",max,min,max-min);}C语言上机试题:71.题目:编一C程序,它能读入10个用空格隔开的整数n1,n2,…,n10,对于i=1,2,…10,执行:若ni是某个整数的平方,则输出yes,否则输出no。(注:可执行文件名为e7_1.exe)程序设计:#include"math.h"main(){inta[9],i,j,n;printf("Pleaseenter10number:\n");for(i=0;i<10;i++)scanf("%d",&a[i]);for(i=0;i<10;i++)if(a[i]==1)printf("%dyes\n",a[i]);else{n=(int)(floor(sqrt(a[i])));if(a[i]==n*n)printf("%dyes\n",a[i]);elseprintf("%dno\n",a[i]);}}2.题目:编一C程序,它能读入由空格隔开的5个正整数,对每个正整数n,判断,若n是完全数(即n=d1+d2+..+dk,其中d1,d2,..dk是n的所有小于它的因子,如6的所有小于它的因子是1,2,3,6=1+2+3,即6是完全数),则输出yes,否则输出no。(注:可执行文件名为e7_2.exe)程序设计:main(){inta[5],i,j,n;printf("Pleaseenter5number:\n");for(i=0;i<5;i++)scanf("%d",&a[i]);for(i=0;i<5;i++){n=0;for(j=1;jif(a[i]%j==0)n+=j;if(n==a[i])printf("%dyes\n",a[i]);elseprintf("%dno\n",a[i]);}}3.题目:编一C程序,它能读入一个正整数n(n<10),然后输出如下图形:程序设计:main(){staticinta[20][20];intn,i,j,k;printf("Pleaseintern=");scanf("%d",&n);printf("\n");for(i=0;i{k=1;for(j=0;j<2*n-1;j++){if(j>n-i-2)a[i][j]=i+1;if(k<=2*i+1+n-i-2)k++;elsebreak;}}for(i=0;ifor(j=0;j<2*n-1;j++){if(a[i][j]==0)a[i][j]='';elsea[i][j]+=48;}for(i=0;i{printf("\n");for(j=0;j<2*n-1;j++)printf("%c",a[i][j]);}for(i=n-2;i>=0;i--){printf("\n");for(j=0;j<2*n-1;j++)printf("%c",a[i][j]);}printf("\n");}C语言上机试题:81.题目:编一C程序,它能读入一个正整数n,然后输出如下图形:(注:可执行文件名为e8_1.exe)程序设计:main(){staticchara[80][80];intn,i,j,k;printf("Pleaseintern=");scanf("%d",&n);printf("\n");f
{printf("\n");
printf("%c",a[i][j]);
for(i=n-2;i>=0;i--)
2.题目:
编一C程序,它能读入矩阵A的行数L,列数M,矩阵B的列数N,矩阵B的行数是M。
L,M,N值都小于20),以及按行读入矩阵A的L*M个元素(整数)及矩阵B的M*N个元素(整数),计算并输出A与B的矩阵乘积(按行,列输出)。
(输入时,相邻的两个整数用空格隔开)。
(可执行文件名为e2_2.exe)
{inta[20][20],b[20][20],c[20][20],l,m,n,i,j,k;
printf("Pleaseintera[l][m]andb[m][n]ofl,m,n:
");
scanf("%d,%d,%d",&l,&m,&n);
printf("Pleaseintera[l][m]:
for(i=0;ifor(j=0;jscanf("%d",&a[i][j]);printf("Pleaseinterb[m][n]:\n");for(i=0;ifor(j=0;jscanf("%d",&b[i][j]);for(i=0;ifor(j=0;j{c[i][j]=0;for(k=0;kc[i][j]+=a[i][k]*b[k][j];}printf("c[l][n]=a[l][m]*b[m][n]:");for(i=0;i{printf("\n");for(j=0;jprintf("%-5d",c[i][j]);}printf("\n");}3.题目:编一C程序,它能读入n(n<200)个整数(以-9999为结束标记,-9999不算在内,相邻的两个整数用空格隔开),找出第1到第n-1个数中第一个与第n个数相等的那个数,并输出该数读入时的序号(序号从1开始记)。(可执行文件名为e2_3.exe)程序设计:main(){inta[200],n,i;scanf("%d",&a[0]);if(a[0]!=-9999){for(i=1,n=0;a[i-1]!=-9999;i++,n++)scanf("%d",&a[i]);}printf("%d,%d\n",n,a[n-1]);for(i=0;iif(a[i]==a[n-1]){printf("%d\n",i+1);break;}}C语言上机试题:31.题目:编一C程序,它能读入一正整数n(n<40),并输出如下图形:共n行,每行n个A,下一行比上一行右移一列.(注:可执行文件名为e3_1.exe)程序设计:main(){intn,i,j,k;charch='A',space='';printf("Pleaseintern=");scanf("%d",&n);printf("\n");for(i=0;i{for(j=0;jfor(k=0;kprintf("\n");}}2.题目:编一C程序,它能读入一个正整数,并输出该正整数的17进制形式,依次用A、B、C、D、E、F、G表示10、11、12、13、14、15、16。(注:可执行文件名为e3_2.exe)程序设计:main(){charb[18]={"0123456789ABCDEFG"};intc[64],d,i=0,base=17;longn;printf("Pleaseentern=");scanf("%ld",&n);printf("\n");do{c[i]=n%base;i++;n=n/base;}while(n!=0);printf("Transmitenewbase=17:\n");for(--i;i>=0;--i){d=c[i];printf("%c",b[d]);}printf("%c",'\n');}3.题目:编一C程序,它能读入两个整数m与n,计算并输出m与n的绝对值的最大公约数及最小公倍数。(注:可执行文件名为e3_3.exe)程序设计:main(){intm,n,d,r;printf("Pleaseentermandn:\n");scanf("%d%d",&m,&n);if(m<0)m=-m;if(n<0)n=-n;if(m{r=m;m=n;n=r;}d=m;while(d%n!=0)d+=m;printf("%d\n",d);do{r=m%n;if(r!=0){m=n;n=r;}}while(r!=0);printf("%d\n",n);}C语言上机试题:41.题目:编一C程序,它能读入一个13进制数(用字符串表示,用A、B、C分别表示10、11和12),输出该数的值(按十进制数输出)。如输入为3B时,输出为50。(注:可执行文件名为e4_1.exe)程序设计:main(){chara[40];intn=0,i=0,j,k,s=0;printf("Pleaseentera13basenumber:\n");scanf("%s",a);while(a[i++]!='\0')n++;for(i=n-1;i>=0;i--){if((a[i]>='0')&&(a[i]<='9'))k=a[i]-'0';elseif((a[i]>='A')&&(a[i]<='C'))k=a[i]-55;elseprintf("error!\n");for(j=1;js+=k;}printf("To10basenumberis:\n");printf("%d\n",s);}2.题目:编一C程序,它能依次读入三组d1、r1、d2、r2、d3、r3共18个非负整数(其中0<=r1(输入整数时,相邻的两个用空格隔开)。(注:可执行文件名为e4_2.exe)程序设计:main(){intl,i,n,d1,r1,d2,r2,d3,r3;for(i=0;i<=2;i++){l=1;n=1;printf("Pleaseenterd1>=r1>=0,d2>=r2>=0,d3>=r3>=0:\n");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("%d\n",n);l=0;}elsen++;}if(l!=0)printf("no!\n");}}3.题目:编一C程序,它能读如若干浮点数f1、f2、...fn(以-9999.0为结束标记,-9999.0不算在内)并输出在f2、f3、...fn这n-1个数中大于f1的数的个数、等于f1的数的个数和小于f1的数的个数。(注:可执行文件名为e4_3.exe)程序设计:#include"math.h"main(){floatf[100],f1;intn=0,i,i1=0,i2=0,i3=0;printf("Pleaseenterfloat:\n");scanf("%f",&f1);f[0]=f1;while(abs(f[n]+9999.0)>=1e-4)scanf("%f",&f[++n]);for(i=1;i<=n-1;i++)if(f[i]>f1)i1++;elseif(abs(f[i]-f1)<1e-4)i2++;elsei3++;printf(">f1:%d\n",i1);printf("=f1:%d\n",i2);printf("%d\n",i3);}C语言上机试题:51.题目:编一C程序,它能读入若干个非零浮点数(相邻的两个数用空格隔开,以0.0为输入结束标记,0.0不算在内),计算并输出这些数的平均值。(注:可执行文件名为e5_1.exe)程序设计:#include"math.h"main(){floatf,s=0.0;intn=0;printf("Pleaseenterfloatnumber:\n");scanf("%f",&f);if(fabs(f-0.0)<1e-4)printf("Nonumber!\n");elsewhile(fabs(f-0.0)>1e-4){n++;s+=f;scanf("%f",&f);}if(n!=0)printf("%dnumberofaverageis:%f\n",n,s/n);}2.题目:编一C程序,它能反复读入正整数(相邻的用空格隔开),并判断它是否为素数(质数),若是,则输出"yes",否则,输出"no",直到读入1时,程序终止执行。(注:可执行文件名为e5_2.exe)程序设计:main(){intn,m,f;printf("Pleaseenteranumber:\n");scanf("%d",&n);while(n!=1){f=1;if(n==2)printf("%dyes\n",n);elsefor(m=2;mif(n%m==0){printf("%dno\n",n);f=0;break;}if(n!=2&&f==1)printf("%dyes\n",n);scanf("%d",&n);}}3.题目:编一C程序,它能读入21个整数(相邻的两个数用空格隔开),并输出值为中间的整数的值(即恰有10个值小于它,恰有10个值大于它)。(注:可执行文件名为e5_3.exe)程序设计:main(){inta[21],i,j,k,t;printf("Pleaseenter21numbers:\n");for(i=0;i<21;i++)scanf("%d",&a[i]);for(k=1;k<21;k++)for(j=20,i=0;i<21-k;i++,j--)if(a[j]{t=a[j];a[j]=a[j-1];a[j-1]=t;}printf("Thecenternumberis%d\n",a[10]);}C语言上机试题:61.题目:编一C程序,它能读入一串整数(用空格隔开相邻的两个整数,以-9999为输入结束标记,-9999不算在内),并以与读入次序相反的次序输出。(注:可执行文件名为e6_1.exe)程序设计:main(){inta[100],i=-1,n;printf("Pleaseenternumbers:\n");do{i++;scanf("%d",&a[i]);}while(a[i]!=-9999);n=i-1;for(i=n;i>=0;i--)printf("%d",a[i]);printf("\n");}2.题目:编一C程序,它能以字符串形式读入两个无符号正整数m和n(两个串各占一行),计算并输出这两个整数的和,其中m和n的值最大可为1000亿。(注:可执行文件名为e6_2.exe)程序设计:#include"stdio.h"#include"string.h"main(){charm[20],n[20],mn[20];intml,nl,ms,ns,mns,k,i,j,f;printf("Pleaseenter2numberstring:\n");scanf("%s",m);scanf("%s",n);ml=strlen(m);nl=strlen(n);if(mlfor(i=ml-1,j=nl-1;i>=ml-nl-1;i--,j--)n[i]=n[j];for(i=0;ifor(i=ml-1;i>=0;i--){ms=m[i]-48;ns=n[i]-48;mns=ms+ns;if(mns<10)f=0;elsef=1;if(mns<10)m[i]+=ns;else{m[i]+=ns-10;m[i-1]+=f;}}if(f==0)printf("%s\n",m);else{for(i=ml;i>0;i--)m[i]=m[i-1];m[0]='1';printf("%s\n",m);}}3.题目:编一C程序,它能读入10个浮点数(相邻的两个数用空格隔开),计算并输出其中最大数和最小数之差。(注:可执行文件名为e6_3.exe)程序设计:main(){floatf[9],max,min;inti;printf("Pleaseenter10float:\n");for(i=0;i<10;i++)scanf("%f",&f[i]);max=min=f[0];for(i=0;i<10;i++){if(maxmax=f[i];if(min>f[i])min=f[i];}printf("max=%f,min=%f,max-min=%f\n",max,min,max-min);}C语言上机试题:71.题目:编一C程序,它能读入10个用空格隔开的整数n1,n2,…,n10,对于i=1,2,…10,执行:若ni是某个整数的平方,则输出yes,否则输出no。(注:可执行文件名为e7_1.exe)程序设计:#include"math.h"main(){inta[9],i,j,n;printf("Pleaseenter10number:\n");for(i=0;i<10;i++)scanf("%d",&a[i]);for(i=0;i<10;i++)if(a[i]==1)printf("%dyes\n",a[i]);else{n=(int)(floor(sqrt(a[i])));if(a[i]==n*n)printf("%dyes\n",a[i]);elseprintf("%dno\n",a[i]);}}2.题目:编一C程序,它能读入由空格隔开的5个正整数,对每个正整数n,判断,若n是完全数(即n=d1+d2+..+dk,其中d1,d2,..dk是n的所有小于它的因子,如6的所有小于它的因子是1,2,3,6=1+2+3,即6是完全数),则输出yes,否则输出no。(注:可执行文件名为e7_2.exe)程序设计:main(){inta[5],i,j,n;printf("Pleaseenter5number:\n");for(i=0;i<5;i++)scanf("%d",&a[i]);for(i=0;i<5;i++){n=0;for(j=1;jif(a[i]%j==0)n+=j;if(n==a[i])printf("%dyes\n",a[i]);elseprintf("%dno\n",a[i]);}}3.题目:编一C程序,它能读入一个正整数n(n<10),然后输出如下图形:程序设计:main(){staticinta[20][20];intn,i,j,k;printf("Pleaseintern=");scanf("%d",&n);printf("\n");for(i=0;i{k=1;for(j=0;j<2*n-1;j++){if(j>n-i-2)a[i][j]=i+1;if(k<=2*i+1+n-i-2)k++;elsebreak;}}for(i=0;ifor(j=0;j<2*n-1;j++){if(a[i][j]==0)a[i][j]='';elsea[i][j]+=48;}for(i=0;i{printf("\n");for(j=0;j<2*n-1;j++)printf("%c",a[i][j]);}for(i=n-2;i>=0;i--){printf("\n");for(j=0;j<2*n-1;j++)printf("%c",a[i][j]);}printf("\n");}C语言上机试题:81.题目:编一C程序,它能读入一个正整数n,然后输出如下图形:(注:可执行文件名为e8_1.exe)程序设计:main(){staticchara[80][80];intn,i,j,k;printf("Pleaseintern=");scanf("%d",&n);printf("\n");f
for(j=0;jscanf("%d",&a[i][j]);printf("Pleaseinterb[m][n]:\n");for(i=0;ifor(j=0;jscanf("%d",&b[i][j]);for(i=0;ifor(j=0;j{c[i][j]=0;for(k=0;kc[i][j]+=a[i][k]*b[k][j];}printf("c[l][n]=a[l][m]*b[m][n]:");for(i=0;i{printf("\n");for(j=0;jprintf("%-5d",c[i][j]);}printf("\n");}3.题目:编一C程序,它能读入n(n<200)个整数(以-9999为结束标记,-9999不算在内,相邻的两个整数用空格隔开),找出第1到第n-1个数中第一个与第n个数相等的那个数,并输出该数读入时的序号(序号从1开始记)。(可执行文件名为e2_3.exe)程序设计:main(){inta[200],n,i;scanf("%d",&a[0]);if(a[0]!=-9999){for(i=1,n=0;a[i-1]!=-9999;i++,n++)scanf("%d",&a[i]);}printf("%d,%d\n",n,a[n-1]);for(i=0;iif(a[i]==a[n-1]){printf("%d\n",i+1);break;}}C语言上机试题:31.题目:编一C程序,它能读入一正整数n(n<40),并输出如下图形:共n行,每行n个A,下一行比上一行右移一列.(注:可执行文件名为e3_1.exe)程序设计:main(){intn,i,j,k;charch='A',space='';printf("Pleaseintern=");scanf("%d",&n);printf("\n");for(i=0;i{for(j=0;jfor(k=0;kprintf("\n");}}2.题目:编一C程序,它能读入一个正整数,并输出该正整数的17进制形式,依次用A、B、C、D、E、F、G表示10、11、12、13、14、15、16。(注:可执行文件名为e3_2.exe)程序设计:main(){charb[18]={"0123456789ABCDEFG"};intc[64],d,i=0,base=17;longn;printf("Pleaseentern=");scanf("%ld",&n);printf("\n");do{c[i]=n%base;i++;n=n/base;}while(n!=0);printf("Transmitenewbase=17:\n");for(--i;i>=0;--i){d=c[i];printf("%c",b[d]);}printf("%c",'\n');}3.题目:编一C程序,它能读入两个整数m与n,计算并输出m与n的绝对值的最大公约数及最小公倍数。(注:可执行文件名为e3_3.exe)程序设计:main(){intm,n,d,r;printf("Pleaseentermandn:\n");scanf("%d%d",&m,&n);if(m<0)m=-m;if(n<0)n=-n;if(m{r=m;m=n;n=r;}d=m;while(d%n!=0)d+=m;printf("%d\n",d);do{r=m%n;if(r!=0){m=n;n=r;}}while(r!=0);printf("%d\n",n);}C语言上机试题:41.题目:编一C程序,它能读入一个13进制数(用字符串表示,用A、B、C分别表示10、11和12),输出该数的值(按十进制数输出)。如输入为3B时,输出为50。(注:可执行文件名为e4_1.exe)程序设计:main(){chara[40];intn=0,i=0,j,k,s=0;printf("Pleaseentera13basenumber:\n");scanf("%s",a);while(a[i++]!='\0')n++;for(i=n-1;i>=0;i--){if((a[i]>='0')&&(a[i]<='9'))k=a[i]-'0';elseif((a[i]>='A')&&(a[i]<='C'))k=a[i]-55;elseprintf("error!\n");for(j=1;js+=k;}printf("To10basenumberis:\n");printf("%d\n",s);}2.题目:编一C程序,它能依次读入三组d1、r1、d2、r2、d3、r3共18个非负整数(其中0<=r1(输入整数时,相邻的两个用空格隔开)。(注:可执行文件名为e4_2.exe)程序设计:main(){intl,i,n,d1,r1,d2,r2,d3,r3;for(i=0;i<=2;i++){l=1;n=1;printf("Pleaseenterd1>=r1>=0,d2>=r2>=0,d3>=r3>=0:\n");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("%d\n",n);l=0;}elsen++;}if(l!=0)printf("no!\n");}}3.题目:编一C程序,它能读如若干浮点数f1、f2、...fn(以-9999.0为结束标记,-9999.0不算在内)并输出在f2、f3、...fn这n-1个数中大于f1的数的个数、等于f1的数的个数和小于f1的数的个数。(注:可执行文件名为e4_3.exe)程序设计:#include"math.h"main(){floatf[100],f1;intn=0,i,i1=0,i2=0,i3=0;printf("Pleaseenterfloat:\n");scanf("%f",&f1);f[0]=f1;while(abs(f[n]+9999.0)>=1e-4)scanf("%f",&f[++n]);for(i=1;i<=n-1;i++)if(f[i]>f1)i1++;elseif(abs(f[i]-f1)<1e-4)i2++;elsei3++;printf(">f1:%d\n",i1);printf("=f1:%d\n",i2);printf("%d\n",i3);}C语言上机试题:51.题目:编一C程序,它能读入若干个非零浮点数(相邻的两个数用空格隔开,以0.0为输入结束标记,0.0不算在内),计算并输出这些数的平均值。(注:可执行文件名为e5_1.exe)程序设计:#include"math.h"main(){floatf,s=0.0;intn=0;printf("Pleaseenterfloatnumber:\n");scanf("%f",&f);if(fabs(f-0.0)<1e-4)printf("Nonumber!\n");elsewhile(fabs(f-0.0)>1e-4){n++;s+=f;scanf("%f",&f);}if(n!=0)printf("%dnumberofaverageis:%f\n",n,s/n);}2.题目:编一C程序,它能反复读入正整数(相邻的用空格隔开),并判断它是否为素数(质数),若是,则输出"yes",否则,输出"no",直到读入1时,程序终止执行。(注:可执行文件名为e5_2.exe)程序设计:main(){intn,m,f;printf("Pleaseenteranumber:\n");scanf("%d",&n);while(n!=1){f=1;if(n==2)printf("%dyes\n",n);elsefor(m=2;mif(n%m==0){printf("%dno\n",n);f=0;break;}if(n!=2&&f==1)printf("%dyes\n",n);scanf("%d",&n);}}3.题目:编一C程序,它能读入21个整数(相邻的两个数用空格隔开),并输出值为中间的整数的值(即恰有10个值小于它,恰有10个值大于它)。(注:可执行文件名为e5_3.exe)程序设计:main(){inta[21],i,j,k,t;printf("Pleaseenter21numbers:\n");for(i=0;i<21;i++)scanf("%d",&a[i]);for(k=1;k<21;k++)for(j=20,i=0;i<21-k;i++,j--)if(a[j]{t=a[j];a[j]=a[j-1];a[j-1]=t;}printf("Thecenternumberis%d\n",a[10]);}C语言上机试题:61.题目:编一C程序,它能读入一串整数(用空格隔开相邻的两个整数,以-9999为输入结束标记,-9999不算在内),并以与读入次序相反的次序输出。(注:可执行文件名为e6_1.exe)程序设计:main(){inta[100],i=-1,n;printf("Pleaseenternumbers:\n");do{i++;scanf("%d",&a[i]);}while(a[i]!=-9999);n=i-1;for(i=n;i>=0;i--)printf("%d",a[i]);printf("\n");}2.题目:编一C程序,它能以字符串形式读入两个无符号正整数m和n(两个串各占一行),计算并输出这两个整数的和,其中m和n的值最大可为1000亿。(注:可执行文件名为e6_2.exe)程序设计:#include"stdio.h"#include"string.h"main(){charm[20],n[20],mn[20];intml,nl,ms,ns,mns,k,i,j,f;printf("Pleaseenter2numberstring:\n");scanf("%s",m);scanf("%s",n);ml=strlen(m);nl=strlen(n);if(mlfor(i=ml-1,j=nl-1;i>=ml-nl-1;i--,j--)n[i]=n[j];for(i=0;ifor(i=ml-1;i>=0;i--){ms=m[i]-48;ns=n[i]-48;mns=ms+ns;if(mns<10)f=0;elsef=1;if(mns<10)m[i]+=ns;else{m[i]+=ns-10;m[i-1]+=f;}}if(f==0)printf("%s\n",m);else{for(i=ml;i>0;i--)m[i]=m[i-1];m[0]='1';printf("%s\n",m);}}3.题目:编一C程序,它能读入10个浮点数(相邻的两个数用空格隔开),计算并输出其中最大数和最小数之差。(注:可执行文件名为e6_3.exe)程序设计:main(){floatf[9],max,min;inti;printf("Pleaseenter10float:\n");for(i=0;i<10;i++)scanf("%f",&f[i]);max=min=f[0];for(i=0;i<10;i++){if(maxmax=f[i];if(min>f[i])min=f[i];}printf("max=%f,min=%f,max-min=%f\n",max,min,max-min);}C语言上机试题:71.题目:编一C程序,它能读入10个用空格隔开的整数n1,n2,…,n10,对于i=1,2,…10,执行:若ni是某个整数的平方,则输出yes,否则输出no。(注:可执行文件名为e7_1.exe)程序设计:#include"math.h"main(){inta[9],i,j,n;printf("Pleaseenter10number:\n");for(i=0;i<10;i++)scanf("%d",&a[i]);for(i=0;i<10;i++)if(a[i]==1)printf("%dyes\n",a[i]);else{n=(int)(floor(sqrt(a[i])));if(a[i]==n*n)printf("%dyes\n",a[i]);elseprintf("%dno\n",a[i]);}}2.题目:编一C程序,它能读入由空格隔开的5个正整数,对每个正整数n,判断,若n是完全数(即n=d1+d2+..+dk,其中d1,d2,..dk是n的所有小于它的因子,如6的所有小于它的因子是1,2,3,6=1+2+3,即6是完全数),则输出yes,否则输出no。(注:可执行文件名为e7_2.exe)程序设计:main(){inta[5],i,j,n;printf("Pleaseenter5number:\n");for(i=0;i<5;i++)scanf("%d",&a[i]);for(i=0;i<5;i++){n=0;for(j=1;jif(a[i]%j==0)n+=j;if(n==a[i])printf("%dyes\n",a[i]);elseprintf("%dno\n",a[i]);}}3.题目:编一C程序,它能读入一个正整数n(n<10),然后输出如下图形:程序设计:main(){staticinta[20][20];intn,i,j,k;printf("Pleaseintern=");scanf("%d",&n);printf("\n");for(i=0;i{k=1;for(j=0;j<2*n-1;j++){if(j>n-i-2)a[i][j]=i+1;if(k<=2*i+1+n-i-2)k++;elsebreak;}}for(i=0;ifor(j=0;j<2*n-1;j++){if(a[i][j]==0)a[i][j]='';elsea[i][j]+=48;}for(i=0;i{printf("\n");for(j=0;j<2*n-1;j++)printf("%c",a[i][j]);}for(i=n-2;i>=0;i--){printf("\n");for(j=0;j<2*n-1;j++)printf("%c",a[i][j]);}printf("\n");}C语言上机试题:81.题目:编一C程序,它能读入一个正整数n,然后输出如下图形:(注:可执行文件名为e8_1.exe)程序设计:main(){staticchara[80][80];intn,i,j,k;printf("Pleaseintern=");scanf("%d",&n);printf("\n");f
printf("Pleaseinterb[m][n]:
for(i=0;ifor(j=0;jscanf("%d",&b[i][j]);for(i=0;ifor(j=0;j{c[i][j]=0;for(k=0;kc[i][j]+=a[i][k]*b[k][j];}printf("c[l][n]=a[l][m]*b[m][n]:");for(i=0;i{printf("\n");for(j=0;jprintf("%-5d",c[i][j]);}printf("\n");}3.题目:编一C程序,它能读入n(n<200)个整数(以-9999为结束标记,-9999不算在内,相邻的两个整数用空格隔开),找出第1到第n-1个数中第一个与第n个数相等的那个数,并输出该数读入时的序号(序号从1开始记)。(可执行文件名为e2_3.exe)程序设计:main(){inta[200],n,i;scanf("%d",&a[0]);if(a[0]!=-9999){for(i=1,n=0;a[i-1]!=-9999;i++,n++)scanf("%d",&a[i]);}printf("%d,%d\n",n,a[n-1]);for(i=0;iif(a[i]==a[n-1]){printf("%d\n",i+1);break;}}C语言上机试题:31.题目:编一C程序,它能读入一正整数n(n<40),并输出如下图形:共n行,每行n个A,下一行比上一行右移一列.(注:可执行文件名为e3_1.exe)程序设计:main(){intn,i,j,k;charch='A',space='';printf("Pleaseintern=");scanf("%d",&n);printf("\n");for(i=0;i{for(j=0;jfor(k=0;kprintf("\n");}}2.题目:编一C程序,它能读入一个正整数,并输出该正整数的17进制形式,依次用A、B、C、D、E、F、G表示10、11、12、13、14、15、16。(注:可执行文件名为e3_2.exe)程序设计:main(){charb[18]={"0123456789ABCDEFG"};intc[64],d,i=0,base=17;longn;printf("Pleaseentern=");scanf("%ld",&n);printf("\n");do{c[i]=n%base;i++;n=n/base;}while(n!=0);printf("Transmitenewbase=17:\n");for(--i;i>=0;--i){d=c[i];printf("%c",b[d]);}printf("%c",'\n');}3.题目:编一C程序,它能读入两个整数m与n,计算并输出m与n的绝对值的最大公约数及最小公倍数。(注:可执行文件名为e3_3.exe)程序设计:main(){intm,n,d,r;printf("Pleaseentermandn:\n");scanf("%d%d",&m,&n);if(m<0)m=-m;if(n<0)n=-n;if(m{r=m;m=n;n=r;}d=m;while(d%n!=0)d+=m;printf("%d\n",d);do{r=m%n;if(r!=0){m=n;n=r;}}while(r!=0);printf("%d\n",n);}C语言上机试题:41.题目:编一C程序,它能读入一个13进制数(用字符串表示,用A、B、C分别表示10、11和12),输出该数的值(按十进制数输出)。如输入为3B时,输出为50。(注:可执行文件名为e4_1.exe)程序设计:main(){chara[40];intn=0,i=0,j,k,s=0;printf("Pleaseentera13basenumber:\n");scanf("%s",a);while(a[i++]!='\0')n++;for(i=n-1;i>=0;i--){if((a[i]>='0')&&(a[i]<='9'))k=a[i]-'0';elseif((a[i]>='A')&&(a[i]<='C'))k=a[i]-55;elseprintf("error!\n");for(j=1;js+=k;}printf("To10basenumberis:\n");printf("%d\n",s);}2.题目:编一C程序,它能依次读入三组d1、r1、d2、r2、d3、r3共18个非负整数(其中0<=r1(输入整数时,相邻的两个用空格隔开)。(注:可执行文件名为e4_2.exe)程序设计:main(){intl,i,n,d1,r1,d2,r2,d3,r3;for(i=0;i<=2;i++){l=1;n=1;printf("Pleaseenterd1>=r1>=0,d2>=r2>=0,d3>=r3>=0:\n");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("%d\n",n);l=0;}elsen++;}if(l!=0)printf("no!\n");}}3.题目:编一C程序,它能读如若干浮点数f1、f2、...fn(以-9999.0为结束标记,-9999.0不算在内)并输出在f2、f3、...fn这n-1个数中大于f1的数的个数、等于f1的数的个数和小于f1的数的个数。(注:可执行文件名为e4_3.exe)程序设计:#include"math.h"main(){floatf[100],f1;intn=0,i,i1=0,i2=0,i3=0;printf("Pleaseenterfloat:\n");scanf("%f",&f1);f[0]=f1;while(abs(f[n]+9999.0)>=1e-4)scanf("%f",&f[++n]);for(i=1;i<=n-1;i++)if(f[i]>f1)i1++;elseif(abs(f[i]-f1)<1e-4)i2++;elsei3++;printf(">f1:%d\n",i1);printf("=f1:%d\n",i2);printf("%d\n",i3);}C语言上机试题:51.题目:编一C程序,它能读入若干个非零浮点数(相邻的两个数用空格隔开,以0.0为输入结束标记,0.0不算在内),计算并输出这些数的平均值。(注:可执行文件名为e5_1.exe)程序设计:#include"math.h"main(){floatf,s=0.0;intn=0;printf("Pleaseenterfloatnumber:\n");scanf("%f",&f);if(fabs(f-0.0)<1e-4)printf("Nonumber!\n");elsewhile(fabs(f-0.0)>1e-4){n++;s+=f;scanf("%f",&f);}if(n!=0)printf("%dnumberofaverageis:%f\n",n,s/n);}2.题目:编一C程序,它能反复读入正整数(相邻的用空格隔开),并判断它是否为素数(质数),若是,则输出"yes",否则,输出"no",直到读入1时,程序终止执行。(注:可执行文件名为e5_2.exe)程序设计:main(){intn,m,f;printf("Pleaseenteranumber:\n");scanf("%d",&n);while(n!=1){f=1;if(n==2)printf("%dyes\n",n);elsefor(m=2;mif(n%m==0){printf("%dno\n",n);f=0;break;}if(n!=2&&f==1)printf("%dyes\n",n);scanf("%d",&n);}}3.题目:编一C程序,它能读入21个整数(相邻的两个数用空格隔开),并输出值为中间的整数的值(即恰有10个值小于它,恰有10个值大于它)。(注:可执行文件名为e5_3.exe)程序设计:main(){inta[21],i,j,k,t;printf("Pleaseenter21numbers:\n");for(i=0;i<21;i++)scanf("%d",&a[i]);for(k=1;k<21;k++)for(j=20,i=0;i<21-k;i++,j--)if(a[j]{t=a[j];a[j]=a[j-1];a[j-1]=t;}printf("Thecenternumberis%d\n",a[10]);}C语言上机试题:61.题目:编一C程序,它能读入一串整数(用空格隔开相邻的两个整数,以-9999为输入结束标记,-9999不算在内),并以与读入次序相反的次序输出。(注:可执行文件名为e6_1.exe)程序设计:main(){inta[100],i=-1,n;printf("Pleaseenternumbers:\n");do{i++;scanf("%d",&a[i]);}while(a[i]!=-9999);n=i-1;for(i=n;i>=0;i--)printf("%d",a[i]);printf("\n");}2.题目:编一C程序,它能以字符串形式读入两个无符号正整数m和n(两个串各占一行),计算并输出这两个整数的和,其中m和n的值最大可为1000亿。(注:可执行文件名为e6_2.exe)程序设计:#include"stdio.h"#include"string.h"main(){charm[20],n[20],mn[20];intml,nl,ms,ns,mns,k,i,j,f;printf("Pleaseenter2numberstring:\n");scanf("%s",m);scanf("%s",n);ml=strlen(m);nl=strlen(n);if(mlfor(i=ml-1,j=nl-1;i>=ml-nl-1;i--,j--)n[i]=n[j];for(i=0;ifor(i=ml-1;i>=0;i--){ms=m[i]-48;ns=n[i]-48;mns=ms+ns;if(mns<10)f=0;elsef=1;if(mns<10)m[i]+=ns;else{m[i]+=ns-10;m[i-1]+=f;}}if(f==0)printf("%s\n",m);else{for(i=ml;i>0;i--)m[i]=m[i-1];m[0]='1';printf("%s\n",m);}}3.题目:编一C程序,它能读入10个浮点数(相邻的两个数用空格隔开),计算并输出其中最大数和最小数之差。(注:可执行文件名为e6_3.exe)程序设计:main(){floatf[9],max,min;inti;printf("Pleaseenter10float:\n");for(i=0;i<10;i++)scanf("%f",&f[i]);max=min=f[0];for(i=0;i<10;i++){if(maxmax=f[i];if(min>f[i])min=f[i];}printf("max=%f,min=%f,max-min=%f\n",max,min,max-min);}C语言上机试题:71.题目:编一C程序,它能读入10个用空格隔开的整数n1,n2,…,n10,对于i=1,2,…10,执行:若ni是某个整数的平方,则输出yes,否则输出no。(注:可执行文件名为e7_1.exe)程序设计:#include"math.h"main(){inta[9],i,j,n;printf("Pleaseenter10number:\n");for(i=0;i<10;i++)scanf("%d",&a[i]);for(i=0;i<10;i++)if(a[i]==1)printf("%dyes\n",a[i]);else{n=(int)(floor(sqrt(a[i])));if(a[i]==n*n)printf("%dyes\n",a[i]);elseprintf("%dno\n",a[i]);}}2.题目:编一C程序,它能读入由空格隔开的5个正整数,对每个正整数n,判断,若n是完全数(即n=d1+d2+..+dk,其中d1,d2,..dk是n的所有小于它的因子,如6的所有小于它的因子是1,2,3,6=1+2+3,即6是完全数),则输出yes,否则输出no。(注:可执行文件名为e7_2.exe)程序设计:main(){inta[5],i,j,n;printf("Pleaseenter5number:\n");for(i=0;i<5;i++)scanf("%d",&a[i]);for(i=0;i<5;i++){n=0;for(j=1;jif(a[i]%j==0)n+=j;if(n==a[i])printf("%dyes\n",a[i]);elseprintf("%dno\n",a[i]);}}3.题目:编一C程序,它能读入一个正整数n(n<10),然后输出如下图形:程序设计:main(){staticinta[20][20];intn,i,j,k;printf("Pleaseintern=");scanf("%d",&n);printf("\n");for(i=0;i{k=1;for(j=0;j<2*n-1;j++){if(j>n-i-2)a[i][j]=i+1;if(k<=2*i+1+n-i-2)k++;elsebreak;}}for(i=0;ifor(j=0;j<2*n-1;j++){if(a[i][j]==0)a[i][j]='';elsea[i][j]+=48;}for(i=0;i{printf("\n");for(j=0;j<2*n-1;j++)printf("%c",a[i][j]);}for(i=n-2;i>=0;i--){printf("\n");for(j=0;j<2*n-1;j++)printf("%c",a[i][j]);}printf("\n");}C语言上机试题:81.题目:编一C程序,它能读入一个正整数n,然后输出如下图形:(注:可执行文件名为e8_1.exe)程序设计:main(){staticchara[80][80];intn,i,j,k;printf("Pleaseintern=");scanf("%d",&n);printf("\n");f
for(j=0;jscanf("%d",&b[i][j]);for(i=0;ifor(j=0;j{c[i][j]=0;for(k=0;kc[i][j]+=a[i][k]*b[k][j];}printf("c[l][n]=a[l][m]*b[m][n]:");for(i=0;i{printf("\n");for(j=0;jprintf("%-5d",c[i][j]);}printf("\n");}3.题目:编一C程序,它能读入n(n<200)个整数(以-9999为结束标记,-9999不算在内,相邻的两个整数用空格隔开),找出第1到第n-1个数中第一个与第n个数相等的那个数,并输出该数读入时的序号(序号从1开始记)。(可执行文件名为e2_3.exe)程序设计:main(){inta[200],n,i;scanf("%d",&a[0]);if(a[0]!=-9999){for(i=1,n=0;a[i-1]!=-9999;i++,n++)scanf("%d",&a[i]);}printf("%d,%d\n",n,a[n-1]);for(i=0;iif(a[i]==a[n-1]){printf("%d\n",i+1);break;}}C语言上机试题:31.题目:编一C程序,它能读入一正整数n(n<40),并输出如下图形:共n行,每行n个A,下一行比上一行右移一列.(注:可执行文件名为e3_1.exe)程序设计:main(){intn,i,j,k;charch='A',space='';printf("Pleaseintern=");scanf("%d",&n);printf("\n");for(i=0;i{for(j=0;jfor(k=0;kprintf("\n");}}2.题目:编一C程序,它能读入一个正整数,并输出该正整数的17进制形式,依次用A、B、C、D、E、F、G表示10、11、12、13、14、15、16。(注:可执行文件名为e3_2.exe)程序设计:main(){charb[18]={"0123456789ABCDEFG"};intc[64],d,i=0,base=17;longn;printf("Pleaseentern=");scanf("%ld",&n);printf("\n");do{c[i]=n%base;i++;n=n/base;}while(n!=0);printf("Transmitenewbase=17:\n");for(--i;i>=0;--i){d=c[i];printf("%c",b[d]);}printf("%c",'\n');}3.题目:编一C程序,它能读入两个整数m与n,计算并输出m与n的绝对值的最大公约数及最小公倍数。(注:可执行文件名为e3_3.exe)程序设计:main(){intm,n,d,r;printf("Pleaseentermandn:\n");scanf("%d%d",&m,&n);if(m<0)m=-m;if(n<0)n=-n;if(m{r=m;m=n;n=r;}d=m;while(d%n!=0)d+=m;printf("%d\n",d);do{r=m%n;if(r!=0){m=n;n=r;}}while(r!=0);printf("%d\n",n);}C语言上机试题:41.题目:编一C程序,它能读入一个13进制数(用字符串表示,用A、B、C分别表示10、11和12),输出该数的值(按十进制数输出)。如输入为3B时,输出为50。(注:可执行文件名为e4_1.exe)程序设计:main(){chara[40];intn=0,i=0,j,k,s=0;printf("Pleaseentera13basenumber:\n");scanf("%s",a);while(a[i++]!='\0')n++;for(i=n-1;i>=0;i--){if((a[i]>='0')&&(a[i]<='9'))k=a[i]-'0';elseif((a[i]>='A')&&(a[i]<='C'))k=a[i]-55;elseprintf("error!\n");for(j=1;js+=k;}printf("To10basenumberis:\n");printf("%d\n",s);}2.题目:编一C程序,它能依次读入三组d1、r1、d2、r2、d3、r3共18个非负整数(其中0<=r1(输入整数时,相邻的两个用空格隔开)。(注:可执行文件名为e4_2.exe)程序设计:main(){intl,i,n,d1,r1,d2,r2,d3,r3;for(i=0;i<=2;i++){l=1;n=1;printf("Pleaseenterd1>=r1>=0,d2>=r2>=0,d3>=r3>=0:\n");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("%d\n",n);l=0;}elsen++;}if(l!=0)printf("no!\n");}}3.题目:编一C程序,它能读如若干浮点数f1、f2、...fn(以-9999.0为结束标记,-9999.0不算在内)并输出在f2、f3、...fn这n-1个数中大于f1的数的个数、等于f1的数的个数和小于f1的数的个数。(注:可执行文件名为e4_3.exe)程序设计:#include"math.h"main(){floatf[100],f1;intn=0,i,i1=0,i2=0,i3=0;printf("Pleaseenterfloat:\n");scanf("%f",&f1);f[0]=f1;while(abs(f[n]+9999.0)>=1e-4)scanf("%f",&f[++n]);for(i=1;i<=n-1;i++)if(f[i]>f1)i1++;elseif(abs(f[i]-f1)<1e-4)i2++;elsei3++;printf(">f1:%d\n",i1);printf("=f1:%d\n",i2);printf("%d\n",i3);}C语言上机试题:51.题目:编一C程序,它能读入若干个非零浮点数(相邻的两个数用空格隔开,以0.0为输入结束标记,0.0不算在内),计算并输出这些数的平均值。(注:可执行文件名为e5_1.exe)程序设计:#include"math.h"main(){floatf,s=0.0;intn=0;printf("Pleaseenterfloatnumber:\n");scanf("%f",&f);if(fabs(f-0.0)<1e-4)printf("Nonumber!\n");elsewhile(fabs(f-0.0)>1e-4){n++;s+=f;scanf("%f",&f);}if(n!=0)printf("%dnumberofaverageis:%f\n",n,s/n);}2.题目:编一C程序,它能反复读入正整数(相邻的用空格隔开),并判断它是否为素数(质数),若是,则输出"yes",否则,输出"no",直到读入1时,程序终止执行。(注:可执行文件名为e5_2.exe)程序设计:main(){intn,m,f;printf("Pleaseenteranumber:\n");scanf("%d",&n);while(n!=1){f=1;if(n==2)printf("%dyes\n",n);elsefor(m=2;mif(n%m==0){printf("%dno\n",n);f=0;break;}if(n!=2&&f==1)printf("%dyes\n",n);scanf("%d",&n);}}3.题目:编一C程序,它能读入21个整数(相邻的两个数用空格隔开),并输出值为中间的整数的值(即恰有10个值小于它,恰有10个值大于它)。(注:可执行文件名为e5_3.exe)程序设计:main(){inta[21],i,j,k,t;printf("Pleaseenter21numbers:\n");for(i=0;i<21;i++)scanf("%d",&a[i]);for(k=1;k<21;k++)for(j=20,i=0;i<21-k;i++,j--)if(a[j]{t=a[j];a[j]=a[j-1];a[j-1]=t;}printf("Thecenternumberis%d\n",a[10]);}C语言上机试题:61.题目:编一C程序,它能读入一串整数(用空格隔开相邻的两个整数,以-9999为输入结束标记,-9999不算在内),并以与读入次序相反的次序输出。(注:可执行文件名为e6_1.exe)程序设计:main(){inta[100],i=-1,n;printf("Pleaseenternumbers:\n");do{i++;scanf("%d",&a[i]);}while(a[i]!=-9999);n=i-1;for(i=n;i>=0;i--)printf("%d",a[i]);printf("\n");}2.题目:编一C程序,它能以字符串形式读入两个无符号正整数m和n(两个串各占一行),计算并输出这两个整数的和,其中m和n的值最大可为1000亿。(注:可执行文件名为e6_2.exe)程序设计:#include"stdio.h"#include"string.h"main(){charm[20],n[20],mn[20];intml,nl,ms,ns,mns,k,i,j,f;printf("Pleaseenter2numberstring:\n");scanf("%s",m);scanf("%s",n);ml=strlen(m);nl=strlen(n);if(mlfor(i=ml-1,j=nl-1;i>=ml-nl-1;i--,j--)n[i]=n[j];for(i=0;ifor(i=ml-1;i>=0;i--){ms=m[i]-48;ns=n[i]-48;mns=ms+ns;if(mns<10)f=0;elsef=1;if(mns<10)m[i]+=ns;else{m[i]+=ns-10;m[i-1]+=f;}}if(f==0)printf("%s\n",m);else{for(i=ml;i>0;i--)m[i]=m[i-1];m[0]='1';printf("%s\n",m);}}3.题目:编一C程序,它能读入10个浮点数(相邻的两个数用空格隔开),计算并输出其中最大数和最小数之差。(注:可执行文件名为e6_3.exe)程序设计:main(){floatf[9],max,min;inti;printf("Pleaseenter10float:\n");for(i=0;i<10;i++)scanf("%f",&f[i]);max=min=f[0];for(i=0;i<10;i++){if(maxmax=f[i];if(min>f[i])min=f[i];}printf("max=%f,min=%f,max-min=%f\n",max,min,max-min);}C语言上机试题:71.题目:编一C程序,它能读入10个用空格隔开的整数n1,n2,…,n10,对于i=1,2,…10,执行:若ni是某个整数的平方,则输出yes,否则输出no。(注:可执行文件名为e7_1.exe)程序设计:#include"math.h"main(){inta[9],i,j,n;printf("Pleaseenter10number:\n");for(i=0;i<10;i++)scanf("%d",&a[i]);for(i=0;i<10;i++)if(a[i]==1)printf("%dyes\n",a[i]);else{n=(int)(floor(sqrt(a[i])));if(a[i]==n*n)printf("%dyes\n",a[i]);elseprintf("%dno\n",a[i]);}}2.题目:编一C程序,它能读入由空格隔开的5个正整数,对每个正整数n,判断,若n是完全数(即n=d1+d2+..+dk,其中d1,d2,..dk是n的所有小于它的因子,如6的所有小于它的因子是1,2,3,6=1+2+3,即6是完全数),则输出yes,否则输出no。(注:可执行文件名为e7_2.exe)程序设计:main(){inta[5],i,j,n;printf("Pleaseenter5number:\n");for(i=0;i<5;i++)scanf("%d",&a[i]);for(i=0;i<5;i++){n=0;for(j=1;jif(a[i]%j==0)n+=j;if(n==a[i])printf("%dyes\n",a[i]);elseprintf("%dno\n",a[i]);}}3.题目:编一C程序,它能读入一个正整数n(n<10),然后输出如下图形:程序设计:main(){staticinta[20][20];intn,i,j,k;printf("Pleaseintern=");scanf("%d",&n);printf("\n");for(i=0;i{k=1;for(j=0;j<2*n-1;j++){if(j>n-i-2)a[i][j]=i+1;if(k<=2*i+1+n-i-2)k++;elsebreak;}}for(i=0;ifor(j=0;j<2*n-1;j++){if(a[i][j]==0)a[i][j]='';elsea[i][j]+=48;}for(i=0;i{printf("\n");for(j=0;j<2*n-1;j++)printf("%c",a[i][j]);}for(i=n-2;i>=0;i--){printf("\n");for(j=0;j<2*n-1;j++)printf("%c",a[i][j]);}printf("\n");}C语言上机试题:81.题目:编一C程序,它能读入一个正整数n,然后输出如下图形:(注:可执行文件名为e8_1.exe)程序设计:main(){staticchara[80][80];intn,i,j,k;printf("Pleaseintern=");scanf("%d",&n);printf("\n");f
scanf("%d",&b[i][j]);
for(i=0;ifor(j=0;j{c[i][j]=0;for(k=0;kc[i][j]+=a[i][k]*b[k][j];}printf("c[l][n]=a[l][m]*b[m][n]:");for(i=0;i{printf("\n");for(j=0;jprintf("%-5d",c[i][j]);}printf("\n");}3.题目:编一C程序,它能读入n(n<200)个整数(以-9999为结束标记,-9999不算在内,相邻的两个整数用空格隔开),找出第1到第n-1个数中第一个与第n个数相等的那个数,并输出该数读入时的序号(序号从1开始记)。(可执行文件名为e2_3.exe)程序设计:main(){inta[200],n,i;scanf("%d",&a[0]);if(a[0]!=-9999){for(i=1,n=0;a[i-1]!=-9999;i++,n++)scanf("%d",&a[i]);}printf("%d,%d\n",n,a[n-1]);for(i=0;iif(a[i]==a[n-1]){printf("%d\n",i+1);break;}}C语言上机试题:31.题目:编一C程序,它能读入一正整数n(n<40),并输出如下图形:共n行,每行n个A,下一行比上一行右移一列.(注:可执行文件名为e3_1.exe)程序设计:main(){intn,i,j,k;charch='A',space='';printf("Pleaseintern=");scanf("%d",&n);printf("\n");for(i=0;i{for(j=0;jfor(k=0;kprintf("\n");}}2.题目:编一C程序,它能读入一个正整数,并输出该正整数的17进制形式,依次用A、B、C、D、E、F、G表示10、11、12、13、14、15、16。(注:可执行文件名为e3_2.exe)程序设计:main(){charb[18]={"0123456789ABCDEFG"};intc[64],d,i=0,base=17;longn;printf("Pleaseentern=");scanf("%ld",&n);printf("\n");do{c[i]=n%base;i++;n=n/base;}while(n!=0);printf("Transmitenewbase=17:\n");for(--i;i>=0;--i){d=c[i];printf("%c",b[d]);}printf("%c",'\n');}3.题目:编一C程序,它能读入两个整数m与n,计算并输出m与n的绝对值的最大公约数及最小公倍数。(注:可执行文件名为e3_3.exe)程序设计:main(){intm,n,d,r;printf("Pleaseentermandn:\n");scanf("%d%d",&m,&n);if(m<0)m=-m;if(n<0)n=-n;if(m{r=m;m=n;n=r;}d=m;while(d%n!=0)d+=m;printf("%d\n",d);do{r=m%n;if(r!=0){m=n;n=r;}}while(r!=0);printf("%d\n",n);}C语言上机试题:41.题目:编一C程序,它能读入一个13进制数(用字符串表示,用A、B、C分别表示10、11和12),输出该数的值(按十进制数输出)。如输入为3B时,输出为50。(注:可执行文件名为e4_1.exe)程序设计:main(){chara[40];intn=0,i=0,j,k,s=0;printf("Pleaseentera13basenumber:\n");scanf("%s",a);while(a[i++]!='\0')n++;for(i=n-1;i>=0;i--){if((a[i]>='0')&&(a[i]<='9'))k=a[i]-'0';elseif((a[i]>='A')&&(a[i]<='C'))k=a[i]-55;elseprintf("error!\n");for(j=1;js+=k;}printf("To10basenumberis:\n");printf("%d\n",s);}2.题目:编一C程序,它能依次读入三组d1、r1、d2、r2、d3、r3共18个非负整数(其中0<=r1(输入整数时,相邻的两个用空格隔开)。(注:可执行文件名为e4_2.exe)程序设计:main(){intl,i,n,d1,r1,d2,r2,d3,r3;for(i=0;i<=2;i++){l=1;n=1;printf("Pleaseenterd1>=r1>=0,d2>=r2>=0,d3>=r3>=0:\n");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("%d\n",n);l=0;}elsen++;}if(l!=0)printf("no!\n");}}3.题目:编一C程序,它能读如若干浮点数f1、f2、...fn(以-9999.0为结束标记,-9999.0不算在内)并输出在f2、f3、...fn这n-1个数中大于f1的数的个数、等于f1的数的个数和小于f1的数的个数。(注:可执行文件名为e4_3.exe)程序设计:#include"math.h"main(){floatf[100],f1;intn=0,i,i1=0,i2=0,i3=0;printf("Pleaseenterfloat:\n");scanf("%f",&f1);f[0]=f1;while(abs(f[n]+9999.0)>=1e-4)scanf("%f",&f[++n]);for(i=1;i<=n-1;i++)if(f[i]>f1)i1++;elseif(abs(f[i]-f1)<1e-4)i2++;elsei3++;printf(">f1:%d\n",i1);printf("=f1:%d\n",i2);printf("%d\n",i3);}C语言上机试题:51.题目:编一C程序,它能读入若干个非零浮点数(相邻的两个数用空格隔开,以0.0为输入结束标记,0.0不算在内),计算并输出这些数的平均值。(注:可执行文件名为e5_1.exe)程序设计:#include"math.h"main(){floatf,s=0.0;intn=0;printf("Pleaseenterfloatnumber:\n");scanf("%f",&f);if(fabs(f-0.0)<1e-4)printf("Nonumber!\n");elsewhile(fabs(f-0.0)>1e-4){n++;s+=f;scanf("%f",&f);}if(n!=0)printf("%dnumberofaverageis:%f\n",n,s/n);}2.题目:编一C程序,它能反复读入正整数(相邻的用空格隔开),并判断它是否为素数(质数),若是,则输出"yes",否则,输出"no",直到读入1时,程序终止执行。(注:可执行文件名为e5_2.exe)程序设计:main(){intn,m,f;printf("Pleaseenteranumber:\n");scanf("%d",&n);while(n!=1){f=1;if(n==2)printf("%dyes\n",n);elsefor(m=2;mif(n%m==0){printf("%dno\n",n);f=0;break;}if(n!=2&&f==1)printf("%dyes\n",n);scanf("%d",&n);}}3.题目:编一C程序,它能读入21个整数(相邻的两个数用空格隔开),并输出值为中间的整数的值(即恰有10个值小于它,恰有10个值大于它)。(注:可执行文件名为e5_3.exe)程序设计:main(){inta[21],i,j,k,t;printf("Pleaseenter21numbers:\n");for(i=0;i<21;i++)scanf("%d",&a[i]);for(k=1;k<21;k++)for(j=20,i=0;i<21-k;i++,j--)if(a[j]{t=a[j];a[j]=a[j-1];a[j-1]=t;}printf("Thecenternumberis%d\n",a[10]);}C语言上机试题:61.题目:编一C程序,它能读入一串整数(用空格隔开相邻的两个整数,以-9999为输入结束标记,-9999不算在内),并以与读入次序相反的次序输出。(注:可执行文件名为e6_1.exe)程序设计:main(){inta[100],i=-1,n;printf("Pleaseenternumbers:\n");do{i++;scanf("%d",&a[i]);}while(a[i]!=-9999);n=i-1;for(i=n;i>=0;i--)printf("%d",a[i]);printf("\n");}2.题目:编一C程序,它能以字符串形式读入两个无符号正整数m和n(两个串各占一行),计算并输出这两个整数的和,其中m和n的值最大可为1000亿。(注:可执行文件名为e6_2.exe)程序设计:#include"stdio.h"#include"string.h"main(){charm[20],n[20],mn[20];intml,nl,ms,ns,mns,k,i,j,f;printf("Pleaseenter2numberstring:\n");scanf("%s",m);scanf("%s",n);ml=strlen(m);nl=strlen(n);if(mlfor(i=ml-1,j=nl-1;i>=ml-nl-1;i--,j--)n[i]=n[j];for(i=0;ifor(i=ml-1;i>=0;i--){ms=m[i]-48;ns=n[i]-48;mns=ms+ns;if(mns<10)f=0;elsef=1;if(mns<10)m[i]+=ns;else{m[i]+=ns-10;m[i-1]+=f;}}if(f==0)printf("%s\n",m);else{for(i=ml;i>0;i--)m[i]=m[i-1];m[0]='1';printf("%s\n",m);}}3.题目:编一C程序,它能读入10个浮点数(相邻的两个数用空格隔开),计算并输出其中最大数和最小数之差。(注:可执行文件名为e6_3.exe)程序设计:main(){floatf[9],max,min;inti;printf("Pleaseenter10float:\n");for(i=0;i<10;i++)scanf("%f",&f[i]);max=min=f[0];for(i=0;i<10;i++){if(maxmax=f[i];if(min>f[i])min=f[i];}printf("max=%f,min=%f,max-min=%f\n",max,min,max-min);}C语言上机试题:71.题目:编一C程序,它能读入10个用空格隔开的整数n1,n2,…,n10,对于i=1,2,…10,执行:若ni是某个整数的平方,则输出yes,否则输出no。(注:可执行文件名为e7_1.exe)程序设计:#include"math.h"main(){inta[9],i,j,n;printf("Pleaseenter10number:\n");for(i=0;i<10;i++)scanf("%d",&a[i]);for(i=0;i<10;i++)if(a[i]==1)printf("%dyes\n",a[i]);else{n=(int)(floor(sqrt(a[i])));if(a[i]==n*n)printf("%dyes\n",a[i]);elseprintf("%dno\n",a[i]);}}2.题目:编一C程序,它能读入由空格隔开的5个正整数,对每个正整数n,判断,若n是完全数(即n=d1+d2+..+dk,其中d1,d2,..dk是n的所有小于它的因子,如6的所有小于它的因子是1,2,3,6=1+2+3,即6是完全数),则输出yes,否则输出no。(注:可执行文件名为e7_2.exe)程序设计:main(){inta[5],i,j,n;printf("Pleaseenter5number:\n");for(i=0;i<5;i++)scanf("%d",&a[i]);for(i=0;i<5;i++){n=0;for(j=1;jif(a[i]%j==0)n+=j;if(n==a[i])printf("%dyes\n",a[i]);elseprintf("%dno\n",a[i]);}}3.题目:编一C程序,它能读入一个正整数n(n<10),然后输出如下图形:程序设计:main(){staticinta[20][20];intn,i,j,k;printf("Pleaseintern=");scanf("%d",&n);printf("\n");for(i=0;i{k=1;for(j=0;j<2*n-1;j++){if(j>n-i-2)a[i][j]=i+1;if(k<=2*i+1+n-i-2)k++;elsebreak;}}for(i=0;ifor(j=0;j<2*n-1;j++){if(a[i][j]==0)a[i][j]='';elsea[i][j]+=48;}for(i=0;i{printf("\n");for(j=0;j<2*n-1;j++)printf("%c",a[i][j]);}for(i=n-2;i>=0;i--){printf("\n");for(j=0;j<2*n-1;j++)printf("%c",a[i][j]);}printf("\n");}C语言上机试题:81.题目:编一C程序,它能读入一个正整数n,然后输出如下图形:(注:可执行文件名为e8_1.exe)程序设计:main(){staticchara[80][80];intn,i,j,k;printf("Pleaseintern=");scanf("%d",&n);printf("\n");f
for(j=0;j{c[i][j]=0;for(k=0;kc[i][j]+=a[i][k]*b[k][j];}printf("c[l][n]=a[l][m]*b[m][n]:");for(i=0;i{printf("\n");for(j=0;jprintf("%-5d",c[i][j]);}printf("\n");}3.题目:编一C程序,它能读入n(n<200)个整数(以-9999为结束标记,-9999不算在内,相邻的两个整数用空格隔开),找出第1到第n-1个数中第一个与第n个数相等的那个数,并输出该数读入时的序号(序号从1开始记)。(可执行文件名为e2_3.exe)程序设计:main(){inta[200],n,i;scanf("%d",&a[0]);if(a[0]!=-9999){for(i=1,n=0;a[i-1]!=-9999;i++,n++)scanf("%d",&a[i]);}printf("%d,%d\n",n,a[n-1]);for(i=0;iif(a[i]==a[n-1]){printf("%d\n",i+1);break;}}C语言上机试题:31.题目:编一C程序,它能读入一正整数n(n<40),并输出如下图形:共n行,每行n个A,下一行比上一行右移一列.(注:可执行文件名为e3_1.exe)程序设计:main(){intn,i,j,k;charch='A',space='';printf("Pleaseintern=");scanf("%d",&n);printf("\n");for(i=0;i{for(j=0;jfor(k=0;kprintf("\n");}}2.题目:编一C程序,它能读入一个正整数,并输出该正整数的17进制形式,依次用A、B、C、D、E、F、G表示10、11、12、13、14、15、16。(注:可执行文件名为e3_2.exe)程序设计:main(){charb[18]={"0123456789ABCDEFG"};intc[64],d,i=0,base=17;longn;printf("Pleaseentern=");scanf("%ld",&n);printf("\n");do{c[i]=n%base;i++;n=n/base;}while(n!=0);printf("Transmitenewbase=17:\n");for(--i;i>=0;--i){d=c[i];printf("%c",b[d]);}printf("%c",'\n');}3.题目:编一C程序,它能读入两个整数m与n,计算并输出m与n的绝对值的最大公约数及最小公倍数。(注:可执行文件名为e3_3.exe)程序设计:main(){intm,n,d,r;printf("Pleaseentermandn:\n");scanf("%d%d",&m,&n);if(m<0)m=-m;if(n<0)n=-n;if(m{r=m;m=n;n=r;}d=m;while(d%n!=0)d+=m;printf("%d\n",d);do{r=m%n;if(r!=0){m=n;n=r;}}while(r!=0);printf("%d\n",n);}C语言上机试题:41.题目:编一C程序,它能读入一个13进制数(用字符串表示,用A、B、C分别表示10、11和12),输出该数的值(按十进制数输出)。如输入为3B时,输出为50。(注:可执行文件名为e4_1.exe)程序设计:main(){chara[40];intn=0,i=0,j,k,s=0;printf("Pleaseentera13basenumber:\n");scanf("%s",a);while(a[i++]!='\0')n++;for(i=n-1;i>=0;i--){if((a[i]>='0')&&(a[i]<='9'))k=a[i]-'0';elseif((a[i]>='A')&&(a[i]<='C'))k=a[i]-55;elseprintf("error!\n");for(j=1;js+=k;}printf("To10basenumberis:\n");printf("%d\n",s);}2.题目:编一C程序,它能依次读入三组d1、r1、d2、r2、d3、r3共18个非负整数(其中0<=r1(输入整数时,相邻的两个用空格隔开)。(注:可执行文件名为e4_2.exe)程序设计:main(){intl,i,n,d1,r1,d2,r2,d3,r3;for(i=0;i<=2;i++){l=1;n=1;printf("Pleaseenterd1>=r1>=0,d2>=r2>=0,d3>=r3>=0:\n");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("%d\n",n);l=0;}elsen++;}if(l!=0)printf("no!\n");}}3.题目:编一C程序,它能读如若干浮点数f1、f2、...fn(以-9999.0为结束标记,-9999.0不算在内)并输出在f2、f3、...fn这n-1个数中大于f1的数的个数、等于f1的数的个数和小于f1的数的个数。(注:可执行文件名为e4_3.exe)程序设计:#include"math.h"main(){floatf[100],f1;intn=0,i,i1=0,i2=0,i3=0;printf("Pleaseenterfloat:\n");scanf("%f",&f1);f[0]=f1;while(abs(f[n]+9999.0)>=1e-4)scanf("%f",&f[++n]);for(i=1;i<=n-1;i++)if(f[i]>f1)i1++;elseif(abs(f[i]-f1)<1e-4)i2++;elsei3++;printf(">f1:%d\n",i1);printf("=f1:%d\n",i2);printf("%d\n",i3);}C语言上机试题:51.题目:编一C程序,它能读入若干个非零浮点数(相邻的两个数用空格隔开,以0.0为输入结束标记,0.0不算在内),计算并输出这些数的平均值。(注:可执行文件名为e5_1.exe)程序设计:#include"math.h"main(){floatf,s=0.0;intn=0;printf("Pleaseenterfloatnumber:\n");scanf("%f",&f);if(fabs(f-0.0)<1e-4)printf("Nonumber!\n");elsewhile(fabs(f-0.0)>1e-4){n++;s+=f;scanf("%f",&f);}if(n!=0)printf("%dnumberofaverageis:%f\n",n,s/n);}2.题目:编一C程序,它能反复读入正整数(相邻的用空格隔开),并判断它是否为素数(质数),若是,则输出"yes",否则,输出"no",直到读入1时,程序终止执行。(注:可执行文件名为e5_2.exe)程序设计:main(){intn,m,f;printf("Pleaseenteranumber:\n");scanf("%d",&n);while(n!=1){f=1;if(n==2)printf("%dyes\n",n);elsefor(m=2;mif(n%m==0){printf("%dno\n",n);f=0;break;}if(n!=2&&f==1)printf("%dyes\n",n);scanf("%d",&n);}}3.题目:编一C程序,它能读入21个整数(相邻的两个数用空格隔开),并输出值为中间的整数的值(即恰有10个值小于它,恰有10个值大于它)。(注:可执行文件名为e5_3.exe)程序设计:main(){inta[21],i,j,k,t;printf("Pleaseenter21numbers:\n");for(i=0;i<21;i++)scanf("%d",&a[i]);for(k=1;k<21;k++)for(j=20,i=0;i<21-k;i++,j--)if(a[j]{t=a[j];a[j]=a[j-1];a[j-1]=t;}printf("Thecenternumberis%d\n",a[10]);}C语言上机试题:61.题目:编一C程序,它能读入一串整数(用空格隔开相邻的两个整数,以-9999为输入结束标记,-9999不算在内),并以与读入次序相反的次序输出。(注:可执行文件名为e6_1.exe)程序设计:main(){inta[100],i=-1,n;printf("Pleaseenternumbers:\n");do{i++;scanf("%d",&a[i]);}while(a[i]!=-9999);n=i-1;for(i=n;i>=0;i--)printf("%d",a[i]);printf("\n");}2.题目:编一C程序,它能以字符串形式读入两个无符号正整数m和n(两个串各占一行),计算并输出这两个整数的和,其中m和n的值最大可为1000亿。(注:可执行文件名为e6_2.exe)程序设计:#include"stdio.h"#include"string.h"main(){charm[20],n[20],mn[20];intml,nl,ms,ns,mns,k,i,j,f;printf("Pleaseenter2numberstring:\n");scanf("%s",m);scanf("%s",n);ml=strlen(m);nl=strlen(n);if(mlfor(i=ml-1,j=nl-1;i>=ml-nl-1;i--,j--)n[i]=n[j];for(i=0;ifor(i=ml-1;i>=0;i--){ms=m[i]-48;ns=n[i]-48;mns=ms+ns;if(mns<10)f=0;elsef=1;if(mns<10)m[i]+=ns;else{m[i]+=ns-10;m[i-1]+=f;}}if(f==0)printf("%s\n",m);else{for(i=ml;i>0;i--)m[i]=m[i-1];m[0]='1';printf("%s\n",m);}}3.题目:编一C程序,它能读入10个浮点数(相邻的两个数用空格隔开),计算并输出其中最大数和最小数之差。(注:可执行文件名为e6_3.exe)程序设计:main(){floatf[9],max,min;inti;printf("Pleaseenter10float:\n");for(i=0;i<10;i++)scanf("%f",&f[i]);max=min=f[0];for(i=0;i<10;i++){if(maxmax=f[i];if(min>f[i])min=f[i];}printf("max=%f,min=%f,max-min=%f\n",max,min,max-min);}C语言上机试题:71.题目:编一C程序,它能读入10个用空格隔开的整数n1,n2,…,n10,对于i=1,2,…10,执行:若ni是某个整数的平方,则输出yes,否则输出no。(注:可执行文件名为e7_1.exe)程序设计:#include"math.h"main(){inta[9],i,j,n;printf("Pleaseenter10number:\n");for(i=0;i<10;i++)scanf("%d",&a[i]);for(i=0;i<10;i++)if(a[i]==1)printf("%dyes\n",a[i]);else{n=(int)(floor(sqrt(a[i])));if(a[i]==n*n)printf("%dyes\n",a[i]);elseprintf("%dno\n",a[i]);}}2.题目:编一C程序,它能读入由空格隔开的5个正整数,对每个正整数n,判断,若n是完全数(即n=d1+d2+..+dk,其中d1,d2,..dk是n的所有小于它的因子,如6的所有小于它的因子是1,2,3,6=1+2+3,即6是完全数),则输出yes,否则输出no。(注:可执行文件名为e7_2.exe)程序设计:main(){inta[5],i,j,n;printf("Pleaseenter5number:\n");for(i=0;i<5;i++)scanf("%d",&a[i]);for(i=0;i<5;i++){n=0;for(j=1;jif(a[i]%j==0)n+=j;if(n==a[i])printf("%dyes\n",a[i]);elseprintf("%dno\n",a[i]);}}3.题目:编一C程序,它能读入一个正整数n(n<10),然后输出如下图形:程序设计:main(){staticinta[20][20];intn,i,j,k;printf("Pleaseintern=");scanf("%d",&n);printf("\n");for(i=0;i{k=1;for(j=0;j<2*n-1;j++){if(j>n-i-2)a[i][j]=i+1;if(k<=2*i+1+n-i-2)k++;elsebreak;}}for(i=0;ifor(j=0;j<2*n-1;j++){if(a[i][j]==0)a[i][j]='';elsea[i][j]+=48;}for(i=0;i{printf("\n");for(j=0;j<2*n-1;j++)printf("%c",a[i][j]);}for(i=n-2;i>=0;i--){printf("\n");for(j=0;j<2*n-1;j++)printf("%c",a[i][j]);}printf("\n");}C语言上机试题:81.题目:编一C程序,它能读入一个正整数n,然后输出如下图形:(注:可执行文件名为e8_1.exe)程序设计:main(){staticchara[80][80];intn,i,j,k;printf("Pleaseintern=");scanf("%d",&n);printf("\n");f
{c[i][j]=0;
for(k=0;kc[i][j]+=a[i][k]*b[k][j];}printf("c[l][n]=a[l][m]*b[m][n]:");for(i=0;i{printf("\n");for(j=0;jprintf("%-5d",c[i][j]);}printf("\n");}3.题目:编一C程序,它能读入n(n<200)个整数(以-9999为结束标记,-9999不算在内,相邻的两个整数用空格隔开),找出第1到第n-1个数中第一个与第n个数相等的那个数,并输出该数读入时的序号(序号从1开始记)。(可执行文件名为e2_3.exe)程序设计:main(){inta[200],n,i;scanf("%d",&a[0]);if(a[0]!=-9999){for(i=1,n=0;a[i-1]!=-9999;i++,n++)scanf("%d",&a[i]);}printf("%d,%d\n",n,a[n-1]);for(i=0;iif(a[i]==a[n-1]){printf("%d\n",i+1);break;}}C语言上机试题:31.题目:编一C程序,它能读入一正整数n(n<40),并输出如下图形:共n行,每行n个A,下一行比上一行右移一列.(注:可执行文件名为e3_1.exe)程序设计:main(){intn,i,j,k;charch='A',space='';printf("Pleaseintern=");scanf("%d",&n);printf("\n");for(i=0;i{for(j=0;jfor(k=0;kprintf("\n");}}2.题目:编一C程序,它能读入一个正整数,并输出该正整数的17进制形式,依次用A、B、C、D、E、F、G表示10、11、12、13、14、15、16。(注:可执行文件名为e3_2.exe)程序设计:main(){charb[18]={"0123456789ABCDEFG"};intc[64],d,i=0,base=17;longn;printf("Pleaseentern=");scanf("%ld",&n);printf("\n");do{c[i]=n%base;i++;n=n/base;}while(n!=0);printf("Transmitenewbase=17:\n");for(--i;i>=0;--i){d=c[i];printf("%c",b[d]);}printf("%c",'\n');}3.题目:编一C程序,它能读入两个整数m与n,计算并输出m与n的绝对值的最大公约数及最小公倍数。(注:可执行文件名为e3_3.exe)程序设计:main(){intm,n,d,r;printf("Pleaseentermandn:\n");scanf("%d%d",&m,&n);if(m<0)m=-m;if(n<0)n=-n;if(m{r=m;m=n;n=r;}d=m;while(d%n!=0)d+=m;printf("%d\n",d);do{r=m%n;if(r!=0){m=n;n=r;}}while(r!=0);printf("%d\n",n);}C语言上机试题:41.题目:编一C程序,它能读入一个13进制数(用字符串表示,用A、B、C分别表示10、11和12),输出该数的值(按十进制数输出)。如输入为3B时,输出为50。(注:可执行文件名为e4_1.exe)程序设计:main(){chara[40];intn=0,i=0,j,k,s=0;printf("Pleaseentera13basenumber:\n");scanf("%s",a);while(a[i++]!='\0')n++;for(i=n-1;i>=0;i--){if((a[i]>='0')&&(a[i]<='9'))k=a[i]-'0';elseif((a[i]>='A')&&(a[i]<='C'))k=a[i]-55;elseprintf("error!\n");for(j=1;js+=k;}printf("To10basenumberis:\n");printf("%d\n",s);}2.题目:编一C程序,它能依次读入三组d1、r1、d2、r2、d3、r3共18个非负整数(其中0<=r1(输入整数时,相邻的两个用空格隔开)。(注:可执行文件名为e4_2.exe)程序设计:main(){intl,i,n,d1,r1,d2,r2,d3,r3;for(i=0;i<=2;i++){l=1;n=1;printf("Pleaseenterd1>=r1>=0,d2>=r2>=0,d3>=r3>=0:\n");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("%d\n",n);l=0;}elsen++;}if(l!=0)printf("no!\n");}}3.题目:编一C程序,它能读如若干浮点数f1、f2、...fn(以-9999.0为结束标记,-9999.0不算在内)并输出在f2、f3、...fn这n-1个数中大于f1的数的个数、等于f1的数的个数和小于f1的数的个数。(注:可执行文件名为e4_3.exe)程序设计:#include"math.h"main(){floatf[100],f1;intn=0,i,i1=0,i2=0,i3=0;printf("Pleaseenterfloat:\n");scanf("%f",&f1);f[0]=f1;while(abs(f[n]+9999.0)>=1e-4)scanf("%f",&f[++n]);for(i=1;i<=n-1;i++)if(f[i]>f1)i1++;elseif(abs(f[i]-f1)<1e-4)i2++;elsei3++;printf(">f1:%d\n",i1);printf("=f1:%d\n",i2);printf("%d\n",i3);}C语言上机试题:51.题目:编一C程序,它能读入若干个非零浮点数(相邻的两个数用空格隔开,以0.0为输入结束标记,0.0不算在内),计算并输出这些数的平均值。(注:可执行文件名为e5_1.exe)程序设计:#include"math.h"main(){floatf,s=0.0;intn=0;printf("Pleaseenterfloatnumber:\n");scanf("%f",&f);if(fabs(f-0.0)<1e-4)printf("Nonumber!\n");elsewhile(fabs(f-0.0)>1e-4){n++;s+=f;scanf("%f",&f);}if(n!=0)printf("%dnumberofaverageis:%f\n",n,s/n);}2.题目:编一C程序,它能反复读入正整数(相邻的用空格隔开),并判断它是否为素数(质数),若是,则输出"yes",否则,输出"no",直到读入1时,程序终止执行。(注:可执行文件名为e5_2.exe)程序设计:main(){intn,m,f;printf("Pleaseenteranumber:\n");scanf("%d",&n);while(n!=1){f=1;if(n==2)printf("%dyes\n",n);elsefor(m=2;mif(n%m==0){printf("%dno\n",n);f=0;break;}if(n!=2&&f==1)printf("%dyes\n",n);scanf("%d",&n);}}3.题目:编一C程序,它能读入21个整数(相邻的两个数用空格隔开),并输出值为中间的整数的值(即恰有10个值小于它,恰有10个值大于它)。(注:可执行文件名为e5_3.exe)程序设计:main(){inta[21],i,j,k,t;printf("Pleaseenter21numbers:\n");for(i=0;i<21;i++)scanf("%d",&a[i]);for(k=1;k<21;k++)for(j=20,i=0;i<21-k;i++,j--)if(a[j]{t=a[j];a[j]=a[j-1];a[j-1]=t;}printf("Thecenternumberis%d\n",a[10]);}C语言上机试题:61.题目:编一C程序,它能读入一串整数(用空格隔开相邻的两个整数,以-9999为输入结束标记,-9999不算在内),并以与读入次序相反的次序输出。(注:可执行文件名为e6_1.exe)程序设计:main(){inta[100],i=-1,n;printf("Pleaseenternumbers:\n");do{i++;scanf("%d",&a[i]);}while(a[i]!=-9999);n=i-1;for(i=n;i>=0;i--)printf("%d",a[i]);printf("\n");}2.题目:编一C程序,它能以字符串形式读入两个无符号正整数m和n(两个串各占一行),计算并输出这两个整数的和,其中m和n的值最大可为1000亿。(注:可执行文件名为e6_2.exe)程序设计:#include"stdio.h"#include"string.h"main(){charm[20],n[20],mn[20];intml,nl,ms,ns,mns,k,i,j,f;printf("Pleaseenter2numberstring:\n");scanf("%s",m);scanf("%s",n);ml=strlen(m);nl=strlen(n);if(mlfor(i=ml-1,j=nl-1;i>=ml-nl-1;i--,j--)n[i]=n[j];for(i=0;ifor(i=ml-1;i>=0;i--){ms=m[i]-48;ns=n[i]-48;mns=ms+ns;if(mns<10)f=0;elsef=1;if(mns<10)m[i]+=ns;else{m[i]+=ns-10;m[i-1]+=f;}}if(f==0)printf("%s\n",m);else{for(i=ml;i>0;i--)m[i]=m[i-1];m[0]='1';printf("%s\n",m);}}3.题目:编一C程序,它能读入10个浮点数(相邻的两个数用空格隔开),计算并输出其中最大数和最小数之差。(注:可执行文件名为e6_3.exe)程序设计:main(){floatf[9],max,min;inti;printf("Pleaseenter10float:\n");for(i=0;i<10;i++)scanf("%f",&f[i]);max=min=f[0];for(i=0;i<10;i++){if(maxmax=f[i];if(min>f[i])min=f[i];}printf("max=%f,min=%f,max-min=%f\n",max,min,max-min);}C语言上机试题:71.题目:编一C程序,它能读入10个用空格隔开的整数n1,n2,…,n10,对于i=1,2,…10,执行:若ni是某个整数的平方,则输出yes,否则输出no。(注:可执行文件名为e7_1.exe)程序设计:#include"math.h"main(){inta[9],i,j,n;printf("Pleaseenter10number:\n");for(i=0;i<10;i++)scanf("%d",&a[i]);for(i=0;i<10;i++)if(a[i]==1)printf("%dyes\n",a[i]);else{n=(int)(floor(sqrt(a[i])));if(a[i]==n*n)printf("%dyes\n",a[i]);elseprintf("%dno\n",a[i]);}}2.题目:编一C程序,它能读入由空格隔开的5个正整数,对每个正整数n,判断,若n是完全数(即n=d1+d2+..+dk,其中d1,d2,..dk是n的所有小于它的因子,如6的所有小于它的因子是1,2,3,6=1+2+3,即6是完全数),则输出yes,否则输出no。(注:可执行文件名为e7_2.exe)程序设计:main(){inta[5],i,j,n;printf("Pleaseenter5number:\n");for(i=0;i<5;i++)scanf("%d",&a[i]);for(i=0;i<5;i++){n=0;for(j=1;jif(a[i]%j==0)n+=j;if(n==a[i])printf("%dyes\n",a[i]);elseprintf("%dno\n",a[i]);}}3.题目:编一C程序,它能读入一个正整数n(n<10),然后输出如下图形:程序设计:main(){staticinta[20][20];intn,i,j,k;printf("Pleaseintern=");scanf("%d",&n);printf("\n");for(i=0;i{k=1;for(j=0;j<2*n-1;j++){if(j>n-i-2)a[i][j]=i+1;if(k<=2*i+1+n-i-2)k++;elsebreak;}}for(i=0;ifor(j=0;j<2*n-1;j++){if(a[i][j]==0)a[i][j]='';elsea[i][j]+=48;}for(i=0;i{printf("\n");for(j=0;j<2*n-1;j++)printf("%c",a[i][j]);}for(i=n-2;i>=0;i--){printf("\n");for(j=0;j<2*n-1;j++)printf("%c",a[i][j]);}printf("\n");}C语言上机试题:81.题目:编一C程序,它能读入一个正整数n,然后输出如下图形:(注:可执行文件名为e8_1.exe)程序设计:main(){staticchara[80][80];intn,i,j,k;printf("Pleaseintern=");scanf("%d",&n);printf("\n");f
c[i][j]+=a[i][k]*b[k][j];
printf("c[l][n]=a[l][m]*b[m][n]:
for(i=0;i{printf("\n");for(j=0;jprintf("%-5d",c[i][j]);}printf("\n");}3.题目:编一C程序,它能读入n(n<200)个整数(以-9999为结束标记,-9999不算在内,相邻的两个整数用空格隔开),找出第1到第n-1个数中第一个与第n个数相等的那个数,并输出该数读入时的序号(序号从1开始记)。(可执行文件名为e2_3.exe)程序设计:main(){inta[200],n,i;scanf("%d",&a[0]);if(a[0]!=-9999){for(i=1,n=0;a[i-1]!=-9999;i++,n++)scanf("%d",&a[i]);}printf("%d,%d\n",n,a[n-1]);for(i=0;iif(a[i]==a[n-1]){printf("%d\n",i+1);break;}}C语言上机试题:31.题目:编一C程序,它能读入一正整数n(n<40),并输出如下图形:共n行,每行n个A,下一行比上一行右移一列.(注:可执行文件名为e3_1.exe)程序设计:main(){intn,i,j,k;charch='A',space='';printf("Pleaseintern=");scanf("%d",&n);printf("\n");for(i=0;i{for(j=0;jfor(k=0;kprintf("\n");}}2.题目:编一C程序,它能读入一个正整数,并输出该正整数的17进制形式,依次用A、B、C、D、E、F、G表示10、11、12、13、14、15、16。(注:可执行文件名为e3_2.exe)程序设计:main(){charb[18]={"0123456789ABCDEFG"};intc[64],d,i=0,base=17;longn;printf("Pleaseentern=");scanf("%ld",&n);printf("\n");do{c[i]=n%base;i++;n=n/base;}while(n!=0);printf("Transmitenewbase=17:\n");for(--i;i>=0;--i){d=c[i];printf("%c",b[d]);}printf("%c",'\n');}3.题目:编一C程序,它能读入两个整数m与n,计算并输出m与n的绝对值的最大公约数及最小公倍数。(注:可执行文件名为e3_3.exe)程序设计:main(){intm,n,d,r;printf("Pleaseentermandn:\n");scanf("%d%d",&m,&n);if(m<0)m=-m;if(n<0)n=-n;if(m{r=m;m=n;n=r;}d=m;while(d%n!=0)d+=m;printf("%d\n",d);do{r=m%n;if(r!=0){m=n;n=r;}}while(r!=0);printf("%d\n",n);}C语言上机试题:41.题目:编一C程序,它能读入一个13进制数(用字符串表示,用A、B、C分别表示10、11和12),输出该数的值(按十进制数输出)。如输入为3B时,输出为50。(注:可执行文件名为e4_1.exe)程序设计:main(){chara[40];intn=0,i=0,j,k,s=0;printf("Pleaseentera13basenumber:\n");scanf("%s",a);while(a[i++]!='\0')n++;for(i=n-1;i>=0;i--){if((a[i]>='0')&&(a[i]<='9'))k=a[i]-'0';elseif((a[i]>='A')&&(a[i]<='C'))k=a[i]-55;elseprintf("error!\n");for(j=1;js+=k;}printf("To10basenumberis:\n");printf("%d\n",s);}2.题目:编一C程序,它能依次读入三组d1、r1、d2、r2、d3、r3共18个非负整数(其中0<=r1(输入整数时,相邻的两个用空格隔开)。(注:可执行文件名为e4_2.exe)程序设计:main(){intl,i,n,d1,r1,d2,r2,d3,r3;for(i=0;i<=2;i++){l=1;n=1;printf("Pleaseenterd1>=r1>=0,d2>=r2>=0,d3>=r3>=0:\n");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("%d\n",n);l=0;}elsen++;}if(l!=0)printf("no!\n");}}3.题目:编一C程序,它能读如若干浮点数f1、f2、...fn(以-9999.0为结束标记,-9999.0不算在内)并输出在f2、f3、...fn这n-1个数中大于f1的数的个数、等于f1的数的个数和小于f1的数的个数。(注:可执行文件名为e4_3.exe)程序设计:#include"math.h"main(){floatf[100],f1;intn=0,i,i1=0,i2=0,i3=0;printf("Pleaseenterfloat:\n");scanf("%f",&f1);f[0]=f1;while(abs(f[n]+9999.0)>=1e-4)scanf("%f",&f[++n]);for(i=1;i<=n-1;i++)if(f[i]>f1)i1++;elseif(abs(f[i]-f1)<1e-4)i2++;elsei3++;printf(">f1:%d\n",i1);printf("=f1:%d\n",i2);printf("%d\n",i3);}C语言上机试题:51.题目:编一C程序,它能读入若干个非零浮点数(相邻的两个数用空格隔开,以0.0为输入结束标记,0.0不算在内),计算并输出这些数的平均值。(注:可执行文件名为e5_1.exe)程序设计:#include"math.h"main(){floatf,s=0.0;intn=0;printf("Pleaseenterfloatnumber:\n");scanf("%f",&f);if(fabs(f-0.0)<1e-4)printf("Nonumber!\n");elsewhile(fabs(f-0.0)>1e-4){n++;s+=f;scanf("%f",&f);}if(n!=0)printf("%dnumberofaverageis:%f\n",n,s/n);}2.题目:编一C程序,它能反复读入正整数(相邻的用空格隔开),并判断它是否为素数(质数),若是,则输出"yes",否则,输出"no",直到读入1时,程序终止执行。(注:可执行文件名为e5_2.exe)程序设计:main(){intn,m,f;printf("Pleaseenteranumber:\n");scanf("%d",&n);while(n!=1){f=1;if(n==2)printf("%dyes\n",n);elsefor(m=2;mif(n%m==0){printf("%dno\n",n);f=0;break;}if(n!=2&&f==1)printf("%dyes\n",n);scanf("%d",&n);}}3.题目:编一C程序,它能读入21个整数(相邻的两个数用空格隔开),并输出值为中间的整数的值(即恰有10个值小于它,恰有10个值大于它)。(注:可执行文件名为e5_3.exe)程序设计:main(){inta[21],i,j,k,t;printf("Pleaseenter21numbers:\n");for(i=0;i<21;i++)scanf("%d",&a[i]);for(k=1;k<21;k++)for(j=20,i=0;i<21-k;i++,j--)if(a[j]{t=a[j];a[j]=a[j-1];a[j-1]=t;}printf("Thecenternumberis%d\n",a[10]);}C语言上机试题:61.题目:编一C程序,它能读入一串整数(用空格隔开相邻的两个整数,以-9999为输入结束标记,-9999不算在内),并以与读入次序相反的次序输出。(注:可执行文件名为e6_1.exe)程序设计:main(){inta[100],i=-1,n;printf("Pleaseenternumbers:\n");do{i++;scanf("%d",&a[i]);}while(a[i]!=-9999);n=i-1;for(i=n;i>=0;i--)printf("%d",a[i]);printf("\n");}2.题目:编一C程序,它能以字符串形式读入两个无符号正整数m和n(两个串各占一行),计算并输出这两个整数的和,其中m和n的值最大可为1000亿。(注:可执行文件名为e6_2.exe)程序设计:#include"stdio.h"#include"string.h"main(){charm[20],n[20],mn[20];intml,nl,ms,ns,mns,k,i,j,f;printf("Pleaseenter2numberstring:\n");scanf("%s",m);scanf("%s",n);ml=strlen(m);nl=strlen(n);if(mlfor(i=ml-1,j=nl-1;i>=ml-nl-1;i--,j--)n[i]=n[j];for(i=0;ifor(i=ml-1;i>=0;i--){ms=m[i]-48;ns=n[i]-48;mns=ms+ns;if(mns<10)f=0;elsef=1;if(mns<10)m[i]+=ns;else{m[i]+=ns-10;m[i-1]+=f;}}if(f==0)printf("%s\n",m);else{for(i=ml;i>0;i--)m[i]=m[i-1];m[0]='1';printf("%s\n",m);}}3.题目:编一C程序,它能读入10个浮点数(相邻的两个数用空格隔开),计算并输出其中最大数和最小数之差。(注:可执行文件名为e6_3.exe)程序设计:main(){floatf[9],max,min;inti;printf("Pleaseenter10float:\n");for(i=0;i<10;i++)scanf("%f",&f[i]);max=min=f[0];for(i=0;i<10;i++){if(maxmax=f[i];if(min>f[i])min=f[i];}printf("max=%f,min=%f,max-min=%f\n",max,min,max-min);}C语言上机试题:71.题目:编一C程序,它能读入10个用空格隔开的整数n1,n2,…,n10,对于i=1,2,…10,执行:若ni是某个整数的平方,则输出yes,否则输出no。(注:可执行文件名为e7_1.exe)程序设计:#include"math.h"main(){inta[9],i,j,n;printf("Pleaseenter10number:\n");for(i=0;i<10;i++)scanf("%d",&a[i]);for(i=0;i<10;i++)if(a[i]==1)printf("%dyes\n",a[i]);else{n=(int)(floor(sqrt(a[i])));if(a[i]==n*n)printf("%dyes\n",a[i]);elseprintf("%dno\n",a[i]);}}2.题目:编一C程序,它能读入由空格隔开的5个正整数,对每个正整数n,判断,若n是完全数(即n=d1+d2+..+dk,其中d1,d2,..dk是n的所有小于它的因子,如6的所有小于它的因子是1,2,3,6=1+2+3,即6是完全数),则输出yes,否则输出no。(注:可执行文件名为e7_2.exe)程序设计:main(){inta[5],i,j,n;printf("Pleaseenter5number:\n");for(i=0;i<5;i++)scanf("%d",&a[i]);for(i=0;i<5;i++){n=0;for(j=1;jif(a[i]%j==0)n+=j;if(n==a[i])printf("%dyes\n",a[i]);elseprintf("%dno\n",a[i]);}}3.题目:编一C程序,它能读入一个正整数n(n<10),然后输出如下图形:程序设计:main(){staticinta[20][20];intn,i,j,k;printf("Pleaseintern=");scanf("%d",&n);printf("\n");for(i=0;i{k=1;for(j=0;j<2*n-1;j++){if(j>n-i-2)a[i][j]=i+1;if(k<=2*i+1+n-i-2)k++;elsebreak;}}for(i=0;ifor(j=0;j<2*n-1;j++){if(a[i][j]==0)a[i][j]='';elsea[i][j]+=48;}for(i=0;i{printf("\n");for(j=0;j<2*n-1;j++)printf("%c",a[i][j]);}for(i=n-2;i>=0;i--){printf("\n");for(j=0;j<2*n-1;j++)printf("%c",a[i][j]);}printf("\n");}C语言上机试题:81.题目:编一C程序,它能读入一个正整数n,然后输出如下图形:(注:可执行文件名为e8_1.exe)程序设计:main(){staticchara[80][80];intn,i,j,k;printf("Pleaseintern=");scanf("%d",&n);printf("\n");f
for(j=0;jprintf("%-5d",c[i][j]);}printf("\n");}3.题目:编一C程序,它能读入n(n<200)个整数(以-9999为结束标记,-9999不算在内,相邻的两个整数用空格隔开),找出第1到第n-1个数中第一个与第n个数相等的那个数,并输出该数读入时的序号(序号从1开始记)。(可执行文件名为e2_3.exe)程序设计:main(){inta[200],n,i;scanf("%d",&a[0]);if(a[0]!=-9999){for(i=1,n=0;a[i-1]!=-9999;i++,n++)scanf("%d",&a[i]);}printf("%d,%d\n",n,a[n-1]);for(i=0;iif(a[i]==a[n-1]){printf("%d\n",i+1);break;}}C语言上机试题:31.题目:编一C程序,它能读入一正整数n(n<40),并输出如下图形:共n行,每行n个A,下一行比上一行右移一列.(注:可执行文件名为e3_1.exe)程序设计:main(){intn,i,j,k;charch='A',space='';printf("Pleaseintern=");scanf("%d",&n);printf("\n");for(i=0;i{for(j=0;jfor(k=0;kprintf("\n");}}2.题目:编一C程序,它能读入一个正整数,并输出该正整数的17进制形式,依次用A、B、C、D、E、F、G表示10、11、12、13、14、15、16。(注:可执行文件名为e3_2.exe)程序设计:main(){charb[18]={"0123456789ABCDEFG"};intc[64],d,i=0,base=17;longn;printf("Pleaseentern=");scanf("%ld",&n);printf("\n");do{c[i]=n%base;i++;n=n/base;}while(n!=0);printf("Transmitenewbase=17:\n");for(--i;i>=0;--i){d=c[i];printf("%c",b[d]);}printf("%c",'\n');}3.题目:编一C程序,它能读入两个整数m与n,计算并输出m与n的绝对值的最大公约数及最小公倍数。(注:可执行文件名为e3_3.exe)程序设计:main(){intm,n,d,r;printf("Pleaseentermandn:\n");scanf("%d%d",&m,&n);if(m<0)m=-m;if(n<0)n=-n;if(m{r=m;m=n;n=r;}d=m;while(d%n!=0)d+=m;printf("%d\n",d);do{r=m%n;if(r!=0){m=n;n=r;}}while(r!=0);printf("%d\n",n);}C语言上机试题:41.题目:编一C程序,它能读入一个13进制数(用字符串表示,用A、B、C分别表示10、11和12),输出该数的值(按十进制数输出)。如输入为3B时,输出为50。(注:可执行文件名为e4_1.exe)程序设计:main(){chara[40];intn=0,i=0,j,k,s=0;printf("Pleaseentera13basenumber:\n");scanf("%s",a);while(a[i++]!='\0')n++;for(i=n-1;i>=0;i--){if((a[i]>='0')&&(a[i]<='9'))k=a[i]-'0';elseif((a[i]>='A')&&(a[i]<='C'))k=a[i]-55;elseprintf("error!\n");for(j=1;js+=k;}printf("To10basenumberis:\n");printf("%d\n",s);}2.题目:编一C程序,它能依次读入三组d1、r1、d2、r2、d3、r3共18个非负整数(其中0<=r1(输入整数时,相邻的两个用空格隔开)。(注:可执行文件名为e4_2.exe)程序设计:main(){intl,i,n,d1,r1,d2,r2,d3,r3;for(i=0;i<=2;i++){l=1;n=1;printf("Pleaseenterd1>=r1>=0,d2>=r2>=0,d3>=r3>=0:\n");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("%d\n",n);l=0;}elsen++;}if(l!=0)printf("no!\n");}}3.题目:编一C程序,它能读如若干浮点数f1、f2、...fn(以-9999.0为结束标记,-9999.0不算在内)并输出在f2、f3、...fn这n-1个数中大于f1的数的个数、等于f1的数的个数和小于f1的数的个数。(注:可执行文件名为e4_3.exe)程序设计:#include"math.h"main(){floatf[100],f1;intn=0,i,i1=0,i2=0,i3=0;printf("Pleaseenterfloat:\n");scanf("%f",&f1);f[0]=f1;while(abs(f[n]+9999.0)>=1e-4)scanf("%f",&f[++n]);for(i=1;i<=n-1;i++)if(f[i]>f1)i1++;elseif(abs(f[i]-f1)<1e-4)i2++;elsei3++;printf(">f1:%d\n",i1);printf("=f1:%d\n",i2);printf("%d\n",i3);}C语言上机试题:51.题目:编一C程序,它能读入若干个非零浮点数(相邻的两个数用空格隔开,以0.0为输入结束标记,0.0不算在内),计算并输出这些数的平均值。(注:可执行文件名为e5_1.exe)程序设计:#include"math.h"main(){floatf,s=0.0;intn=0;printf("Pleaseenterfloatnumber:\n");scanf("%f",&f);if(fabs(f-0.0)<1e-4)printf("Nonumber!\n");elsewhile(fabs(f-0.0)>1e-4){n++;s+=f;scanf("%f",&f);}if(n!=0)printf("%dnumberofaverageis:%f\n",n,s/n);}2.题目:编一C程序,它能反复读入正整数(相邻的用空格隔开),并判断它是否为素数(质数),若是,则输出"yes",否则,输出"no",直到读入1时,程序终止执行。(注:可执行文件名为e5_2.exe)程序设计:main(){intn,m,f;printf("Pleaseenteranumber:\n");scanf("%d",&n);while(n!=1){f=1;if(n==2)printf("%dyes\n",n);elsefor(m=2;mif(n%m==0){printf("%dno\n",n);f=0;break;}if(n!=2&&f==1)printf("%dyes\n",n);scanf("%d",&n);}}3.题目:编一C程序,它能读入21个整数(相邻的两个数用空格隔开),并输出值为中间的整数的值(即恰有10个值小于它,恰有10个值大于它)。(注:可执行文件名为e5_3.exe)程序设计:main(){inta[21],i,j,k,t;printf("Pleaseenter21numbers:\n");for(i=0;i<21;i++)scanf("%d",&a[i]);for(k=1;k<21;k++)for(j=20,i=0;i<21-k;i++,j--)if(a[j]{t=a[j];a[j]=a[j-1];a[j-1]=t;}printf("Thecenternumberis%d\n",a[10]);}C语言上机试题:61.题目:编一C程序,它能读入一串整数(用空格隔开相邻的两个整数,以-9999为输入结束标记,-9999不算在内),并以与读入次序相反的次序输出。(注:可执行文件名为e6_1.exe)程序设计:main(){inta[100],i=-1,n;printf("Pleaseenternumbers:\n");do{i++;scanf("%d",&a[i]);}while(a[i]!=-9999);n=i-1;for(i=n;i>=0;i--)printf("%d",a[i]);printf("\n");}2.题目:编一C程序,它能以字符串形式读入两个无符号正整数m和n(两个串各占一行),计算并输出这两个整数的和,其中m和n的值最大可为1000亿。(注:可执行文件名为e6_2.exe)程序设计:#include"stdio.h"#include"string.h"main(){charm[20],n[20],mn[20];intml,nl,ms,ns,mns,k,i,j,f;printf("Pleaseenter2numberstring:\n");scanf("%s",m);scanf("%s",n);ml=strlen(m);nl=strlen(n);if(mlfor(i=ml-1,j=nl-1;i>=ml-nl-1;i--,j--)n[i]=n[j];for(i=0;ifor(i=ml-1;i>=0;i--){ms=m[i]-48;ns=n[i]-48;mns=ms+ns;if(mns<10)f=0;elsef=1;if(mns<10)m[i]+=ns;else{m[i]+=ns-10;m[i-1]+=f;}}if(f==0)printf("%s\n",m);else{for(i=ml;i>0;i--)m[i]=m[i-1];m[0]='1';printf("%s\n",m);}}3.题目:编一C程序,它能读入10个浮点数(相邻的两个数用空格隔开),计算并输出其中最大数和最小数之差。(注:可执行文件名为e6_3.exe)程序设计:main(){floatf[9],max,min;inti;printf("Pleaseenter10float:\n");for(i=0;i<10;i++)scanf("%f",&f[i]);max=min=f[0];for(i=0;i<10;i++){if(maxmax=f[i];if(min>f[i])min=f[i];}printf("max=%f,min=%f,max-min=%f\n",max,min,max-min);}C语言上机试题:71.题目:编一C程序,它能读入10个用空格隔开的整数n1,n2,…,n10,对于i=1,2,…10,执行:若ni是某个整数的平方,则输出yes,否则输出no。(注:可执行文件名为e7_1.exe)程序设计:#include"math.h"main(){inta[9],i,j,n;printf("Pleaseenter10number:\n");for(i=0;i<10;i++)scanf("%d",&a[i]);for(i=0;i<10;i++)if(a[i]==1)printf("%dyes\n",a[i]);else{n=(int)(floor(sqrt(a[i])));if(a[i]==n*n)printf("%dyes\n",a[i]);elseprintf("%dno\n",a[i]);}}2.题目:编一C程序,它能读入由空格隔开的5个正整数,对每个正整数n,判断,若n是完全数(即n=d1+d2+..+dk,其中d1,d2,..dk是n的所有小于它的因子,如6的所有小于它的因子是1,2,3,6=1+2+3,即6是完全数),则输出yes,否则输出no。(注:可执行文件名为e7_2.exe)程序设计:main(){inta[5],i,j,n;printf("Pleaseenter5number:\n");for(i=0;i<5;i++)scanf("%d",&a[i]);for(i=0;i<5;i++){n=0;for(j=1;jif(a[i]%j==0)n+=j;if(n==a[i])printf("%dyes\n",a[i]);elseprintf("%dno\n",a[i]);}}3.题目:编一C程序,它能读入一个正整数n(n<10),然后输出如下图形:程序设计:main(){staticinta[20][20];intn,i,j,k;printf("Pleaseintern=");scanf("%d",&n);printf("\n");for(i=0;i{k=1;for(j=0;j<2*n-1;j++){if(j>n-i-2)a[i][j]=i+1;if(k<=2*i+1+n-i-2)k++;elsebreak;}}for(i=0;ifor(j=0;j<2*n-1;j++){if(a[i][j]==0)a[i][j]='';elsea[i][j]+=48;}for(i=0;i{printf("\n");for(j=0;j<2*n-1;j++)printf("%c",a[i][j]);}for(i=n-2;i>=0;i--){printf("\n");for(j=0;j<2*n-1;j++)printf("%c",a[i][j]);}printf("\n");}C语言上机试题:81.题目:编一C程序,它能读入一个正整数n,然后输出如下图形:(注:可执行文件名为e8_1.exe)程序设计:main(){staticchara[80][80];intn,i,j,k;printf("Pleaseintern=");scanf("%d",&n);printf("\n");f
printf("%-5d",c[i][j]);
3.题目:
编一C程序,它能读入n(n<200)个整数(以-9999为结束标记,-9999不算在内,相邻的两个整数用空格隔开),找出第1到第n-1个数中第一个与第n个数相等的那个数,并输出该数读入时的序号(序号从1开始记)。
(可执行文件名为e2_3.exe)
{inta[200],n,i;
scanf("%d",&a[0]);
if(a[0]!
=-9999)
{for(i=1,n=0;a[i-1]!
=-9999;i++,n++)
scanf("%d",&a[i]);
printf("%d,%d\n",n,a[n-1]);
for(i=0;iif(a[i]==a[n-1]){printf("%d\n",i+1);break;}}C语言上机试题:31.题目:编一C程序,它能读入一正整数n(n<40),并输出如下图形:共n行,每行n个A,下一行比上一行右移一列.(注:可执行文件名为e3_1.exe)程序设计:main(){intn,i,j,k;charch='A',space='';printf("Pleaseintern=");scanf("%d",&n);printf("\n");for(i=0;i{for(j=0;jfor(k=0;kprintf("\n");}}2.题目:编一C程序,它能读入一个正整数,并输出该正整数的17进制形式,依次用A、B、C、D、E、F、G表示10、11、12、13、14、15、16。(注:可执行文件名为e3_2.exe)程序设计:main(){charb[18]={"0123456789ABCDEFG"};intc[64],d,i=0,base=17;longn;printf("Pleaseentern=");scanf("%ld",&n);printf("\n");do{c[i]=n%base;i++;n=n/base;}while(n!=0);printf("Transmitenewbase=17:\n");for(--i;i>=0;--i){d=c[i];printf("%c",b[d]);}printf("%c",'\n');}3.题目:编一C程序,它能读入两个整数m与n,计算并输出m与n的绝对值的最大公约数及最小公倍数。(注:可执行文件名为e3_3.exe)程序设计:main(){intm,n,d,r;printf("Pleaseentermandn:\n");scanf("%d%d",&m,&n);if(m<0)m=-m;if(n<0)n=-n;if(m{r=m;m=n;n=r;}d=m;while(d%n!=0)d+=m;printf("%d\n",d);do{r=m%n;if(r!=0){m=n;n=r;}}while(r!=0);printf("%d\n",n);}C语言上机试题:41.题目:编一C程序,它能读入一个13进制数(用字符串表示,用A、B、C分别表示10、11和12),输出该数的值(按十进制数输出)。如输入为3B时,输出为50。(注:可执行文件名为e4_1.exe)程序设计:main(){chara[40];intn=0,i=0,j,k,s=0;printf("Pleaseentera13basenumber:\n");scanf("%s",a);while(a[i++]!='\0')n++;for(i=n-1;i>=0;i--){if((a[i]>='0')&&(a[i]<='9'))k=a[i]-'0';elseif((a[i]>='A')&&(a[i]<='C'))k=a[i]-55;elseprintf("error!\n");for(j=1;js+=k;}printf("To10basenumberis:\n");printf("%d\n",s);}2.题目:编一C程序,它能依次读入三组d1、r1、d2、r2、d3、r3共18个非负整数(其中0<=r1(输入整数时,相邻的两个用空格隔开)。(注:可执行文件名为e4_2.exe)程序设计:main(){intl,i,n,d1,r1,d2,r2,d3,r3;for(i=0;i<=2;i++){l=1;n=1;printf("Pleaseenterd1>=r1>=0,d2>=r2>=0,d3>=r3>=0:\n");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("%d\n",n);l=0;}elsen++;}if(l!=0)printf("no!\n");}}3.题目:编一C程序,它能读如若干浮点数f1、f2、...fn(以-9999.0为结束标记,-9999.0不算在内)并输出在f2、f3、...fn这n-1个数中大于f1的数的个数、等于f1的数的个数和小于f1的数的个数。(注:可执行文件名为e4_3.exe)程序设计:#include"math.h"main(){floatf[100],f1;intn=0,i,i1=0,i2=0,i3=0;printf("Pleaseenterfloat:\n");scanf("%f",&f1);f[0]=f1;while(abs(f[n]+9999.0)>=1e-4)scanf("%f",&f[++n]);for(i=1;i<=n-1;i++)if(f[i]>f1)i1++;elseif(abs(f[i]-f1)<1e-4)i2++;elsei3++;printf(">f1:%d\n",i1);printf("=f1:%d\n",i2);printf("%d\n",i3);}C语言上机试题:51.题目:编一C程序,它能读入若干个非零浮点数(相邻的两个数用空格隔开,以0.0为输入结束标记,0.0不算在内),计算并输出这些数的平均值。(注:可执行文件名为e5_1.exe)程序设计:#include"math.h"main(){floatf,s=0.0;intn=0;printf("Pleaseenterfloatnumber:\n");scanf("%f",&f);if(fabs(f-0.0)<1e-4)printf("Nonumber!\n");elsewhile(fabs(f-0.0)>1e-4){n++;s+=f;scanf("%f",&f);}if(n!=0)printf("%dnumberofaverageis:%f\n",n,s/n);}2.题目:编一C程序,它能反复读入正整数(相邻的用空格隔开),并判断它是否为素数(质数),若是,则输出"yes",否则,输出"no",直到读入1时,程序终止执行。(注:可执行文件名为e5_2.exe)程序设计:main(){intn,m,f;printf("Pleaseenteranumber:\n");scanf("%d",&n);while(n!=1){f=1;if(n==2)printf("%dyes\n",n);elsefor(m=2;mif(n%m==0){printf("%dno\n",n);f=0;break;}if(n!=2&&f==1)printf("%dyes\n",n);scanf("%d",&n);}}3.题目:编一C程序,它能读入21个整数(相邻的两个数用空格隔开),并输出值为中间的整数的值(即恰有10个值小于它,恰有10个值大于它)。(注:可执行文件名为e5_3.exe)程序设计:main(){inta[21],i,j,k,t;printf("Pleaseenter21numbers:\n");for(i=0;i<21;i++)scanf("%d",&a[i]);for(k=1;k<21;k++)for(j=20,i=0;i<21-k;i++,j--)if(a[j]{t=a[j];a[j]=a[j-1];a[j-1]=t;}printf("Thecenternumberis%d\n",a[10]);}C语言上机试题:61.题目:编一C程序,它能读入一串整数(用空格隔开相邻的两个整数,以-9999为输入结束标记,-9999不算在内),并以与读入次序相反的次序输出。(注:可执行文件名为e6_1.exe)程序设计:main(){inta[100],i=-1,n;printf("Pleaseenternumbers:\n");do{i++;scanf("%d",&a[i]);}while(a[i]!=-9999);n=i-1;for(i=n;i>=0;i--)printf("%d",a[i]);printf("\n");}2.题目:编一C程序,它能以字符串形式读入两个无符号正整数m和n(两个串各占一行),计算并输出这两个整数的和,其中m和n的值最大可为1000亿。(注:可执行文件名为e6_2.exe)程序设计:#include"stdio.h"#include"string.h"main(){charm[20],n[20],mn[20];intml,nl,ms,ns,mns,k,i,j,f;printf("Pleaseenter2numberstring:\n");scanf("%s",m);scanf("%s",n);ml=strlen(m);nl=strlen(n);if(mlfor(i=ml-1,j=nl-1;i>=ml-nl-1;i--,j--)n[i]=n[j];for(i=0;ifor(i=ml-1;i>=0;i--){ms=m[i]-48;ns=n[i]-48;mns=ms+ns;if(mns<10)f=0;elsef=1;if(mns<10)m[i]+=ns;else{m[i]+=ns-10;m[i-1]+=f;}}if(f==0)printf("%s\n",m);else{for(i=ml;i>0;i--)m[i]=m[i-1];m[0]='1';printf("%s\n",m);}}3.题目:编一C程序,它能读入10个浮点数(相邻的两个数用空格隔开),计算并输出其中最大数和最小数之差。(注:可执行文件名为e6_3.exe)程序设计:main(){floatf[9],max,min;inti;printf("Pleaseenter10float:\n");for(i=0;i<10;i++)scanf("%f",&f[i]);max=min=f[0];for(i=0;i<10;i++){if(maxmax=f[i];if(min>f[i])min=f[i];}printf("max=%f,min=%f,max-min=%f\n",max,min,max-min);}C语言上机试题:71.题目:编一C程序,它能读入10个用空格隔开的整数n1,n2,…,n10,对于i=1,2,…10,执行:若ni是某个整数的平方,则输出yes,否则输出no。(注:可执行文件名为e7_1.exe)程序设计:#include"math.h"main(){inta[9],i,j,n;printf("Pleaseenter10number:\n");for(i=0;i<10;i++)scanf("%d",&a[i]);for(i=0;i<10;i++)if(a[i]==1)printf("%dyes\n",a[i]);else{n=(int)(floor(sqrt(a[i])));if(a[i]==n*n)printf("%dyes\n",a[i]);elseprintf("%dno\n",a[i]);}}2.题目:编一C程序,它能读入由空格隔开的5个正整数,对每个正整数n,判断,若n是完全数(即n=d1+d2+..+dk,其中d1,d2,..dk是n的所有小于它的因子,如6的所有小于它的因子是1,2,3,6=1+2+3,即6是完全数),则输出yes,否则输出no。(注:可执行文件名为e7_2.exe)程序设计:main(){inta[5],i,j,n;printf("Pleaseenter5number:\n");for(i=0;i<5;i++)scanf("%d",&a[i]);for(i=0;i<5;i++){n=0;for(j=1;jif(a[i]%j==0)n+=j;if(n==a[i])printf("%dyes\n",a[i]);elseprintf("%dno\n",a[i]);}}3.题目:编一C程序,它能读入一个正整数n(n<10),然后输出如下图形:程序设计:main(){staticinta[20][20];intn,i,j,k;printf("Pleaseintern=");scanf("%d",&n);printf("\n");for(i=0;i{k=1;for(j=0;j<2*n-1;j++){if(j>n-i-2)a[i][j]=i+1;if(k<=2*i+1+n-i-2)k++;elsebreak;}}for(i=0;ifor(j=0;j<2*n-1;j++){if(a[i][j]==0)a[i][j]='';elsea[i][j]+=48;}for(i=0;i{printf("\n");for(j=0;j<2*n-1;j++)printf("%c",a[i][j]);}for(i=n-2;i>=0;i--){printf("\n");for(j=0;j<2*n-1;j++)printf("%c",a[i][j]);}printf("\n");}C语言上机试题:81.题目:编一C程序,它能读入一个正整数n,然后输出如下图形:(注:可执行文件名为e8_1.exe)程序设计:main(){staticchara[80][80];intn,i,j,k;printf("Pleaseintern=");scanf("%d",&n);printf("\n");f
if(a[i]==a[n-1])
{printf("%d\n",i+1);
break;
3
编一C程序,它能读入一正整数n(n<40),并输出如下图形:
共n行,每行n个A,下一行比上一行右移一列.(注:
可执行文件名为e3_1.exe)
{intn,i,j,k;
charch='A',space='';
for(i=0;i{for(j=0;jfor(k=0;kprintf("\n");}}2.题目:编一C程序,它能读入一个正整数,并输出该正整数的17进制形式,依次用A、B、C、D、E、F、G表示10、11、12、13、14、15、16。(注:可执行文件名为e3_2.exe)程序设计:main(){charb[18]={"0123456789ABCDEFG"};intc[64],d,i=0,base=17;longn;printf("Pleaseentern=");scanf("%ld",&n);printf("\n");do{c[i]=n%base;i++;n=n/base;}while(n!=0);printf("Transmitenewbase=17:\n");for(--i;i>=0;--i){d=c[i];printf("%c",b[d]);}printf("%c",'\n');}3.题目:编一C程序,它能读入两个整数m与n,计算并输出m与n的绝对值的最大公约数及最小公倍数。(注:可执行文件名为e3_3.exe)程序设计:main(){intm,n,d,r;printf("Pleaseentermandn:\n");scanf("%d%d",&m,&n);if(m<0)m=-m;if(n<0)n=-n;if(m{r=m;m=n;n=r;}d=m;while(d%n!=0)d+=m;printf("%d\n",d);do{r=m%n;if(r!=0){m=n;n=r;}}while(r!=0);printf("%d\n",n);}C语言上机试题:41.题目:编一C程序,它能读入一个13进制数(用字符串表示,用A、B、C分别表示10、11和12),输出该数的值(按十进制数输出)。如输入为3B时,输出为50。(注:可执行文件名为e4_1.exe)程序设计:main(){chara[40];intn=0,i=0,j,k,s=0;printf("Pleaseentera13basenumber:\n");scanf("%s",a);while(a[i++]!='\0')n++;for(i=n-1;i>=0;i--){if((a[i]>='0')&&(a[i]<='9'))k=a[i]-'0';elseif((a[i]>='A')&&(a[i]<='C'))k=a[i]-55;elseprintf("error!\n");for(j=1;js+=k;}printf("To10basenumberis:\n");printf("%d\n",s);}2.题目:编一C程序,它能依次读入三组d1、r1、d2、r2、d3、r3共18个非负整数(其中0<=r1(输入整数时,相邻的两个用空格隔开)。(注:可执行文件名为e4_2.exe)程序设计:main(){intl,i,n,d1,r1,d2,r2,d3,r3;for(i=0;i<=2;i++){l=1;n=1;printf("Pleaseenterd1>=r1>=0,d2>=r2>=0,d3>=r3>=0:\n");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("%d\n",n);l=0;}elsen++;}if(l!=0)printf("no!\n");}}3.题目:编一C程序,它能读如若干浮点数f1、f2、...fn(以-9999.0为结束标记,-9999.0不算在内)并输出在f2、f3、...fn这n-1个数中大于f1的数的个数、等于f1的数的个数和小于f1的数的个数。(注:可执行文件名为e4_3.exe)程序设计:#include"math.h"main(){floatf[100],f1;intn=0,i,i1=0,i2=0,i3=0;printf("Pleaseenterfloat:\n");scanf("%f",&f1);f[0]=f1;while(abs(f[n]+9999.0)>=1e-4)scanf("%f",&f[++n]);for(i=1;i<=n-1;i++)if(f[i]>f1)i1++;elseif(abs(f[i]-f1)<1e-4)i2++;elsei3++;printf(">f1:%d\n",i1);printf("=f1:%d\n",i2);printf("%d\n",i3);}C语言上机试题:51.题目:编一C程序,它能读入若干个非零浮点数(相邻的两个数用空格隔开,以0.0为输入结束标记,0.0不算在内),计算并输出这些数的平均值。(注:可执行文件名为e5_1.exe)程序设计:#include"math.h"main(){floatf,s=0.0;intn=0;printf("Pleaseenterfloatnumber:\n");scanf("%f",&f);if(fabs(f-0.0)<1e-4)printf("Nonumber!\n");elsewhile(fabs(f-0.0)>1e-4){n++;s+=f;scanf("%f",&f);}if(n!=0)printf("%dnumberofaverageis:%f\n",n,s/n);}2.题目:编一C程序,它能反复读入正整数(相邻的用空格隔开),并判断它是否为素数(质数),若是,则输出"yes",否则,输出"no",直到读入1时,程序终止执行。(注:可执行文件名为e5_2.exe)程序设计:main(){intn,m,f;printf("Pleaseenteranumber:\n");scanf("%d",&n);while(n!=1){f=1;if(n==2)printf("%dyes\n",n);elsefor(m=2;mif(n%m==0){printf("%dno\n",n);f=0;break;}if(n!=2&&f==1)printf("%dyes\n",n);scanf("%d",&n);}}3.题目:编一C程序,它能读入21个整数(相邻的两个数用空格隔开),并输出值为中间的整数的值(即恰有10个值小于它,恰有10个值大于它)。(注:可执行文件名为e5_3.exe)程序设计:main(){inta[21],i,j,k,t;printf("Pleaseenter21numbers:\n");for(i=0;i<21;i++)scanf("%d",&a[i]);for(k=1;k<21;k++)for(j=20,i=0;i<21-k;i++,j--)if(a[j]{t=a[j];a[j]=a[j-1];a[j-1]=t;}printf("Thecenternumberis%d\n",a[10]);}C语言上机试题:61.题目:编一C程序,它能读入一串整数(用空格隔开相邻的两个整数,以-9999为输入结束标记,-9999不算在内),并以与读入次序相反的次序输出。(注:可执行文件名为e6_1.exe)程序设计:main(){inta[100],i=-1,n;printf("Pleaseenternumbers:\n");do{i++;scanf("%d",&a[i]);}while(a[i]!=-9999);n=i-1;for(i=n;i>=0;i--)printf("%d",a[i]);printf("\n");}2.题目:编一C程序,它能以字符串形式读入两个无符号正整数m和n(两个串各占一行),计算并输出这两个整数的和,其中m和n的值最大可为1000亿。(注:可执行文件名为e6_2.exe)程序设计:#include"stdio.h"#include"string.h"main(){charm[20],n[20],mn[20];intml,nl,ms,ns,mns,k,i,j,f;printf("Pleaseenter2numberstring:\n");scanf("%s",m);scanf("%s",n);ml=strlen(m);nl=strlen(n);if(mlfor(i=ml-1,j=nl-1;i>=ml-nl-1;i--,j--)n[i]=n[j];for(i=0;ifor(i=ml-1;i>=0;i--){ms=m[i]-48;ns=n[i]-48;mns=ms+ns;if(mns<10)f=0;elsef=1;if(mns<10)m[i]+=ns;else{m[i]+=ns-10;m[i-1]+=f;}}if(f==0)printf("%s\n",m);else{for(i=ml;i>0;i--)m[i]=m[i-1];m[0]='1';printf("%s\n",m);}}3.题目:编一C程序,它能读入10个浮点数(相邻的两个数用空格隔开),计算并输出其中最大数和最小数之差。(注:可执行文件名为e6_3.exe)程序设计:main(){floatf[9],max,min;inti;printf("Pleaseenter10float:\n");for(i=0;i<10;i++)scanf("%f",&f[i]);max=min=f[0];for(i=0;i<10;i++){if(maxmax=f[i];if(min>f[i])min=f[i];}printf("max=%f,min=%f,max-min=%f\n",max,min,max-min);}C语言上机试题:71.题目:编一C程序,它能读入10个用空格隔开的整数n1,n2,…,n10,对于i=1,2,…10,执行:若ni是某个整数的平方,则输出yes,否则输出no。(注:可执行文件名为e7_1.exe)程序设计:#include"math.h"main(){inta[9],i,j,n;printf("Pleaseenter10number:\n");for(i=0;i<10;i++)scanf("%d",&a[i]);for(i=0;i<10;i++)if(a[i]==1)printf("%dyes\n",a[i]);else{n=(int)(floor(sqrt(a[i])));if(a[i]==n*n)printf("%dyes\n",a[i]);elseprintf("%dno\n",a[i]);}}2.题目:编一C程序,它能读入由空格隔开的5个正整数,对每个正整数n,判断,若n是完全数(即n=d1+d2+..+dk,其中d1,d2,..dk是n的所有小于它的因子,如6的所有小于它的因子是1,2,3,6=1+2+3,即6是完全数),则输出yes,否则输出no。(注:可执行文件名为e7_2.exe)程序设计:main(){inta[5],i,j,n;printf("Pleaseenter5number:\n");for(i=0;i<5;i++)scanf("%d",&a[i]);for(i=0;i<5;i++){n=0;for(j=1;jif(a[i]%j==0)n+=j;if(n==a[i])printf("%dyes\n",a[i]);elseprintf("%dno\n",a[i]);}}3.题目:编一C程序,它能读入一个正整数n(n<10),然后输出如下图形:程序设计:main(){staticinta[20][20];intn,i,j,k;printf("Pleaseintern=");scanf("%d",&n);printf("\n");for(i=0;i{k=1;for(j=0;j<2*n-1;j++){if(j>n-i-2)a[i][j]=i+1;if(k<=2*i+1+n-i-2)k++;elsebreak;}}for(i=0;ifor(j=0;j<2*n-1;j++){if(a[i][j]==0)a[i][j]='';elsea[i][j]+=48;}for(i=0;i{printf("\n");for(j=0;j<2*n-1;j++)printf("%c",a[i][j]);}for(i=n-2;i>=0;i--){printf("\n");for(j=0;j<2*n-1;j++)printf("%c",a[i][j]);}printf("\n");}C语言上机试题:81.题目:编一C程序,它能读入一个正整数n,然后输出如下图形:(注:可执行文件名为e8_1.exe)程序设计:main(){staticchara[80][80];intn,i,j,k;printf("Pleaseintern=");scanf("%d",&n);printf("\n");f
{for(j=0;j
for(k=0;kprintf("\n");}}2.题目:编一C程序,它能读入一个正整数,并输出该正整数的17进制形式,依次用A、B、C、D、E、F、G表示10、11、12、13、14、15、16。(注:可执行文件名为e3_2.exe)程序设计:main(){charb[18]={"0123456789ABCDEFG"};intc[64],d,i=0,base=17;longn;printf("Pleaseentern=");scanf("%ld",&n);printf("\n");do{c[i]=n%base;i++;n=n/base;}while(n!=0);printf("Transmitenewbase=17:\n");for(--i;i>=0;--i){d=c[i];printf("%c",b[d]);}printf("%c",'\n');}3.题目:编一C程序,它能读入两个整数m与n,计算并输出m与n的绝对值的最大公约数及最小公倍数。(注:可执行文件名为e3_3.exe)程序设计:main(){intm,n,d,r;printf("Pleaseentermandn:\n");scanf("%d%d",&m,&n);if(m<0)m=-m;if(n<0)n=-n;if(m{r=m;m=n;n=r;}d=m;while(d%n!=0)d+=m;printf("%d\n",d);do{r=m%n;if(r!=0){m=n;n=r;}}while(r!=0);printf("%d\n",n);}C语言上机试题:41.题目:编一C程序,它能读入一个13进制数(用字符串表示,用A、B、C分别表示10、11和12),输出该数的值(按十进制数输出)。如输入为3B时,输出为50。(注:可执行文件名为e4_1.exe)程序设计:main(){chara[40];intn=0,i=0,j,k,s=0;printf("Pleaseentera13basenumber:\n");scanf("%s",a);while(a[i++]!='\0')n++;for(i=n-1;i>=0;i--){if((a[i]>='0')&&(a[i]<='9'))k=a[i]-'0';elseif((a[i]>='A')&&(a[i]<='C'))k=a[i]-55;elseprintf("error!\n");for(j=1;js+=k;}printf("To10basenumberis:\n");printf("%d\n",s);}2.题目:编一C程序,它能依次读入三组d1、r1、d2、r2、d3、r3共18个非负整数(其中0<=r1(输入整数时,相邻的两个用空格隔开)。(注:可执行文件名为e4_2.exe)程序设计:main(){intl,i,n,d1,r1,d2,r2,d3,r3;for(i=0;i<=2;i++){l=1;n=1;printf("Pleaseenterd1>=r1>=0,d2>=r2>=0,d3>=r3>=0:\n");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("%d\n",n);l=0;}elsen++;}if(l!=0)printf("no!\n");}}3.题目:编一C程序,它能读如若干浮点数f1、f2、...fn(以-9999.0为结束标记,-9999.0不算在内)并输出在f2、f3、...fn这n-1个数中大于f1的数的个数、等于f1的数的个数和小于f1的数的个数。(注:可执行文件名为e4_3.exe)程序设计:#include"math.h"main(){floatf[100],f1;intn=0,i,i1=0,i2=0,i3=0;printf("Pleaseenterfloat:\n");scanf("%f",&f1);f[0]=f1;while(abs(f[n]+9999.0)>=1e-4)scanf("%f",&f[++n]);for(i=1;i<=n-1;i++)if(f[i]>f1)i1++;elseif(abs(f[i]-f1)<1e-4)i2++;elsei3++;printf(">f1:%d\n",i1);printf("=f1:%d\n",i2);printf("%d\n",i3);}C语言上机试题:51.题目:编一C程序,它能读入若干个非零浮点数(相邻的两个数用空格隔开,以0.0为输入结束标记,0.0不算在内),计算并输出这些数的平均值。(注:可执行文件名为e5_1.exe)程序设计:#include"math.h"main(){floatf,s=0.0;intn=0;printf("Pleaseenterfloatnumber:\n");scanf("%f",&f);if(fabs(f-0.0)<1e-4)printf("Nonumber!\n");elsewhile(fabs(f-0.0)>1e-4){n++;s+=f;scanf("%f",&f);}if(n!=0)printf("%dnumberofaverageis:%f\n",n,s/n);}2.题目:编一C程序,它能反复读入正整数(相邻的用空格隔开),并判断它是否为素数(质数),若是,则输出"yes",否则,输出"no",直到读入1时,程序终止执行。(注:可执行文件名为e5_2.exe)程序设计:main(){intn,m,f;printf("Pleaseenteranumber:\n");scanf("%d",&n);while(n!=1){f=1;if(n==2)printf("%dyes\n",n);elsefor(m=2;mif(n%m==0){printf("%dno\n",n);f=0;break;}if(n!=2&&f==1)printf("%dyes\n",n);scanf("%d",&n);}}3.题目:编一C程序,它能读入21个整数(相邻的两个数用空格隔开),并输出值为中间的整数的值(即恰有10个值小于它,恰有10个值大于它)。(注:可执行文件名为e5_3.exe)程序设计:main(){inta[21],i,j,k,t;printf("Pleaseenter21numbers:\n");for(i=0;i<21;i++)scanf("%d",&a[i]);for(k=1;k<21;k++)for(j=20,i=0;i<21-k;i++,j--)if(a[j]{t=a[j];a[j]=a[j-1];a[j-1]=t;}printf("Thecenternumberis%d\n",a[10]);}C语言上机试题:61.题目:编一C程序,它能读入一串整数(用空格隔开相邻的两个整数,以-9999为输入结束标记,-9999不算在内),并以与读入次序相反的次序输出。(注:可执行文件名为e6_1.exe)程序设计:main(){inta[100],i=-1,n;printf("Pleaseenternumbers:\n");do{i++;scanf("%d",&a[i]);}while(a[i]!=-9999);n=i-1;for(i=n;i>=0;i--)printf("%d",a[i]);printf("\n");}2.题目:编一C程序,它能以字符串形式读入两个无符号正整数m和n(两个串各占一行),计算并输出这两个整数的和,其中m和n的值最大可为1000亿。(注:可执行文件名为e6_2.exe)程序设计:#include"stdio.h"#include"string.h"main(){charm[20],n[20],mn[20];intml,nl,ms,ns,mns,k,i,j,f;printf("Pleaseenter2numberstring:\n");scanf("%s",m);scanf("%s",n);ml=strlen(m);nl=strlen(n);if(mlfor(i=ml-1,j=nl-1;i>=ml-nl-1;i--,j--)n[i]=n[j];for(i=0;ifor(i=ml-1;i>=0;i--){ms=m[i]-48;ns=n[i]-48;mns=ms+ns;if(mns<10)f=0;elsef=1;if(mns<10)m[i]+=ns;else{m[i]+=ns-10;m[i-1]+=f;}}if(f==0)printf("%s\n",m);else{for(i=ml;i>0;i--)m[i]=m[i-1];m[0]='1';printf("%s\n",m);}}3.题目:编一C程序,它能读入10个浮点数(相邻的两个数用空格隔开),计算并输出其中最大数和最小数之差。(注:可执行文件名为e6_3.exe)程序设计:main(){floatf[9],max,min;inti;printf("Pleaseenter10float:\n");for(i=0;i<10;i++)scanf("%f",&f[i]);max=min=f[0];for(i=0;i<10;i++){if(maxmax=f[i];if(min>f[i])min=f[i];}printf("max=%f,min=%f,max-min=%f\n",max,min,max-min);}C语言上机试题:71.题目:编一C程序,它能读入10个用空格隔开的整数n1,n2,…,n10,对于i=1,2,…10,执行:若ni是某个整数的平方,则输出yes,否则输出no。(注:可执行文件名为e7_1.exe)程序设计:#include"math.h"main(){inta[9],i,j,n;printf("Pleaseenter10number:\n");for(i=0;i<10;i++)scanf("%d",&a[i]);for(i=0;i<10;i++)if(a[i]==1)printf("%dyes\n",a[i]);else{n=(int)(floor(sqrt(a[i])));if(a[i]==n*n)printf("%dyes\n",a[i]);elseprintf("%dno\n",a[i]);}}2.题目:编一C程序,它能读入由空格隔开的5个正整数,对每个正整数n,判断,若n是完全数(即n=d1+d2+..+dk,其中d1,d2,..dk是n的所有小于它的因子,如6的所有小于它的因子是1,2,3,6=1+2+3,即6是完全数),则输出yes,否则输出no。(注:可执行文件名为e7_2.exe)程序设计:main(){inta[5],i,j,n;printf("Pleaseenter5number:\n");for(i=0;i<5;i++)scanf("%d",&a[i]);for(i=0;i<5;i++){n=0;for(j=1;jif(a[i]%j==0)n+=j;if(n==a[i])printf("%dyes\n",a[i]);elseprintf("%dno\n",a[i]);}}3.题目:编一C程序,它能读入一个正整数n(n<10),然后输出如下图形:程序设计:main(){staticinta[20][20];intn,i,j,k;printf("Pleaseintern=");scanf("%d",&n);printf("\n");for(i=0;i{k=1;for(j=0;j<2*n-1;j++){if(j>n-i-2)a[i][j]=i+1;if(k<=2*i+1+n-i-2)k++;elsebreak;}}for(i=0;ifor(j=0;j<2*n-1;j++){if(a[i][j]==0)a[i][j]='';elsea[i][j]+=48;}for(i=0;i{printf("\n");for(j=0;j<2*n-1;j++)printf("%c",a[i][j]);}for(i=n-2;i>=0;i--){printf("\n");for(j=0;j<2*n-1;j++)printf("%c",a[i][j]);}printf("\n");}C语言上机试题:81.题目:编一C程序,它能读入一个正整数n,然后输出如下图形:(注:可执行文件名为e8_1.exe)程序设计:main(){staticchara[80][80];intn,i,j,k;printf("Pleaseintern=");scanf("%d",&n);printf("\n");f
编一C程序,它能读入一个正整数,并输出该正整数的17进制形式,依次用A、B、C、D、E、F、G表示10、11、12、13、14、15、16。
可执行文件名为e3_2.exe)
{charb[18]={"0123456789ABCDEFG"};
intc[64],d,i=0,base=17;
longn;
printf("Pleaseentern=");
scanf("%ld",&n);
do
{c[i]=n%base;
i++;
n=n/base;
while(n!
=0);
printf("Transmitenewbase=17:
for(--i;i>=0;--i)
{d=c[i];
printf("%c",b[d]);
printf("%c",'\n');
编一C程序,它能读入两个整数m与n,计算并输出m与n的绝对值的最大公约数及最小公倍数。
可执行文件名为e3_3.exe)
{intm,n,d,r;
printf("Pleaseentermandn:
scanf("%d%d",&m,&n);
if(m<0)m=-m;
if(n<0)n=-n;
if(m{r=m;m=n;n=r;}d=m;while(d%n!=0)d+=m;printf("%d\n",d);do{r=m%n;if(r!=0){m=n;n=r;}}while(r!=0);printf("%d\n",n);}C语言上机试题:41.题目:编一C程序,它能读入一个13进制数(用字符串表示,用A、B、C分别表示10、11和12),输出该数的值(按十进制数输出)。如输入为3B时,输出为50。(注:可执行文件名为e4_1.exe)程序设计:main(){chara[40];intn=0,i=0,j,k,s=0;printf("Pleaseentera13basenumber:\n");scanf("%s",a);while(a[i++]!='\0')n++;for(i=n-1;i>=0;i--){if((a[i]>='0')&&(a[i]<='9'))k=a[i]-'0';elseif((a[i]>='A')&&(a[i]<='C'))k=a[i]-55;elseprintf("error!\n");for(j=1;js+=k;}printf("To10basenumberis:\n");printf("%d\n",s);}2.题目:编一C程序,它能依次读入三组d1、r1、d2、r2、d3、r3共18个非负整数(其中0<=r1(输入整数时,相邻的两个用空格隔开)。(注:可执行文件名为e4_2.exe)程序设计:main(){intl,i,n,d1,r1,d2,r2,d3,r3;for(i=0;i<=2;i++){l=1;n=1;printf("Pleaseenterd1>=r1>=0,d2>=r2>=0,d3>=r3>=0:\n");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("%d\n",n);l=0;}elsen++;}if(l!=0)printf("no!\n");}}3.题目:编一C程序,它能读如若干浮点数f1、f2、...fn(以-9999.0为结束标记,-9999.0不算在内)并输出在f2、f3、...fn这n-1个数中大于f1的数的个数、等于f1的数的个数和小于f1的数的个数。(注:可执行文件名为e4_3.exe)程序设计:#include"math.h"main(){floatf[100],f1;intn=0,i,i1=0,i2=0,i3=0;printf("Pleaseenterfloat:\n");scanf("%f",&f1);f[0]=f1;while(abs(f[n]+9999.0)>=1e-4)scanf("%f",&f[++n]);for(i=1;i<=n-1;i++)if(f[i]>f1)i1++;elseif(abs(f[i]-f1)<1e-4)i2++;elsei3++;printf(">f1:%d\n",i1);printf("=f1:%d\n",i2);printf("%d\n",i3);}C语言上机试题:51.题目:编一C程序,它能读入若干个非零浮点数(相邻的两个数用空格隔开,以0.0为输入结束标记,0.0不算在内),计算并输出这些数的平均值。(注:可执行文件名为e5_1.exe)程序设计:#include"math.h"main(){floatf,s=0.0;intn=0;printf("Pleaseenterfloatnumber:\n");scanf("%f",&f);if(fabs(f-0.0)<1e-4)printf("Nonumber!\n");elsewhile(fabs(f-0.0)>1e-4){n++;s+=f;scanf("%f",&f);}if(n!=0)printf("%dnumberofaverageis:%f\n",n,s/n);}2.题目:编一C程序,它能反复读入正整数(相邻的用空格隔开),并判断它是否为素数(质数),若是,则输出"yes",否则,输出"no",直到读入1时,程序终止执行。(注:可执行文件名为e5_2.exe)程序设计:main(){intn,m,f;printf("Pleaseenteranumber:\n");scanf("%d",&n);while(n!=1){f=1;if(n==2)printf("%dyes\n",n);elsefor(m=2;mif(n%m==0){printf("%dno\n",n);f=0;break;}if(n!=2&&f==1)printf("%dyes\n",n);scanf("%d",&n);}}3.题目:编一C程序,它能读入21个整数(相邻的两个数用空格隔开),并输出值为中间的整数的值(即恰有10个值小于它,恰有10个值大于它)。(注:可执行文件名为e5_3.exe)程序设计:main(){inta[21],i,j,k,t;printf("Pleaseenter21numbers:\n");for(i=0;i<21;i++)scanf("%d",&a[i]);for(k=1;k<21;k++)for(j=20,i=0;i<21-k;i++,j--)if(a[j]{t=a[j];a[j]=a[j-1];a[j-1]=t;}printf("Thecenternumberis%d\n",a[10]);}C语言上机试题:61.题目:编一C程序,它能读入一串整数(用空格隔开相邻的两个整数,以-9999为输入结束标记,-9999不算在内),并以与读入次序相反的次序输出。(注:可执行文件名为e6_1.exe)程序设计:main(){inta[100],i=-1,n;printf("Pleaseenternumbers:\n");do{i++;scanf("%d",&a[i]);}while(a[i]!=-9999);n=i-1;for(i=n;i>=0;i--)printf("%d",a[i]);printf("\n");}2.题目:编一C程序,它能以字符串形式读入两个无符号正整数m和n(两个串各占一行),计算并输出这两个整数的和,其中m和n的值最大可为1000亿。(注:可执行文件名为e6_2.exe)程序设计:#include"stdio.h"#include"string.h"main(){charm[20],n[20],mn[20];intml,nl,ms,ns,mns,k,i,j,f;printf("Pleaseenter2numberstring:\n");scanf("%s",m);scanf("%s",n);ml=strlen(m);nl=strlen(n);if(mlfor(i=ml-1,j=nl-1;i>=ml-nl-1;i--,j--)n[i]=n[j];for(i=0;ifor(i=ml-1;i>=0;i--){ms=m[i]-48;ns=n[i]-48;mns=ms+ns;if(mns<10)f=0;elsef=1;if(mns<10)m[i]+=ns;else{m[i]+=ns-10;m[i-1]+=f;}}if(f==0)printf("%s\n",m);else{for(i=ml;i>0;i--)m[i]=m[i-1];m[0]='1';printf("%s\n",m);}}3.题目:编一C程序,它能读入10个浮点数(相邻的两个数用空格隔开),计算并输出其中最大数和最小数之差。(注:可执行文件名为e6_3.exe)程序设计:main(){floatf[9],max,min;inti;printf("Pleaseenter10float:\n");for(i=0;i<10;i++)scanf("%f",&f[i]);max=min=f[0];for(i=0;i<10;i++){if(maxmax=f[i];if(min>f[i])min=f[i];}printf("max=%f,min=%f,max-min=%f\n",max,min,max-min);}C语言上机试题:71.题目:编一C程序,它能读入10个用空格隔开的整数n1,n2,…,n10,对于i=1,2,…10,执行:若ni是某个整数的平方,则输出yes,否则输出no。(注:可执行文件名为e7_1.exe)程序设计:#include"math.h"main(){inta[9],i,j,n;printf("Pleaseenter10number:\n");for(i=0;i<10;i++)scanf("%d",&a[i]);for(i=0;i<10;i++)if(a[i]==1)printf("%dyes\n",a[i]);else{n=(int)(floor(sqrt(a[i])));if(a[i]==n*n)printf("%dyes\n",a[i]);elseprintf("%dno\n",a[i]);}}2.题目:编一C程序,它能读入由空格隔开的5个正整数,对每个正整数n,判断,若n是完全数(即n=d1+d2+..+dk,其中d1,d2,..dk是n的所有小于它的因子,如6的所有小于它的因子是1,2,3,6=1+2+3,即6是完全数),则输出yes,否则输出no。(注:可执行文件名为e7_2.exe)程序设计:main(){inta[5],i,j,n;printf("Pleaseenter5number:\n");for(i=0;i<5;i++)scanf("%d",&a[i]);for(i=0;i<5;i++){n=0;for(j=1;jif(a[i]%j==0)n+=j;if(n==a[i])printf("%dyes\n",a[i]);elseprintf("%dno\n",a[i]);}}3.题目:编一C程序,它能读入一个正整数n(n<10),然后输出如下图形:程序设计:main(){staticinta[20][20];intn,i,j,k;printf("Pleaseintern=");scanf("%d",&n);printf("\n");for(i=0;i{k=1;for(j=0;j<2*n-1;j++){if(j>n-i-2)a[i][j]=i+1;if(k<=2*i+1+n-i-2)k++;elsebreak;}}for(i=0;ifor(j=0;j<2*n-1;j++){if(a[i][j]==0)a[i][j]='';elsea[i][j]+=48;}for(i=0;i{printf("\n");for(j=0;j<2*n-1;j++)printf("%c",a[i][j]);}for(i=n-2;i>=0;i--){printf("\n");for(j=0;j<2*n-1;j++)printf("%c",a[i][j]);}printf("\n");}C语言上机试题:81.题目:编一C程序,它能读入一个正整数n,然后输出如下图形:(注:可执行文件名为e8_1.exe)程序设计:main(){staticchara[80][80];intn,i,j,k;printf("Pleaseintern=");scanf("%d",&n);printf("\n");f
{r=m;m=n;n=r;}
d=m;
while(d%n!
=0)
d+=m;
printf("%d\n",d);
do{r=m%n;
if(r!
{m=n;n=r;}
while(r!
printf("%d\n",n);
4
编一C程序,它能读入一个13进制数(用字符串表示,用A、B、C分别表示10、11和12),输出该数的值(按十进制数输出)。
如输入为3B时,输出为50。
可执行文件名为e4_1.exe)
{chara[40];
intn=0,i=0,j,k,s=0;
printf("Pleaseentera13basenumber:
scanf("%s",a);
while(a[i++]!
='\0')n++;
for(i=n-1;i>=0;i--)
{if((a[i]>='0')&&(a[i]<='9'))k=a[i]-'0';
elseif((a[i]>='A')&&(a[i]<='C'))k=a[i]-55;
elseprintf("error!
for(j=1;js+=k;}printf("To10basenumberis:\n");printf("%d\n",s);}2.题目:编一C程序,它能依次读入三组d1、r1、d2、r2、d3、r3共18个非负整数(其中0<=r1(输入整数时,相邻的两个用空格隔开)。(注:可执行文件名为e4_2.exe)程序设计:main(){intl,i,n,d1,r1,d2,r2,d3,r3;for(i=0;i<=2;i++){l=1;n=1;printf("Pleaseenterd1>=r1>=0,d2>=r2>=0,d3>=r3>=0:\n");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("%d\n",n);l=0;}elsen++;}if(l!=0)printf("no!\n");}}3.题目:编一C程序,它能读如若干浮点数f1、f2、...fn(以-9999.0为结束标记,-9999.0不算在内)并输出在f2、f3、...fn这n-1个数中大于f1的数的个数、等于f1的数的个数和小于f1的数的个数。(注:可执行文件名为e4_3.exe)程序设计:#include"math.h"main(){floatf[100],f1;intn=0,i,i1=0,i2=0,i3=0;printf("Pleaseenterfloat:\n");scanf("%f",&f1);f[0]=f1;while(abs(f[n]+9999.0)>=1e-4)scanf("%f",&f[++n]);for(i=1;i<=n-1;i++)if(f[i]>f1)i1++;elseif(abs(f[i]-f1)<1e-4)i2++;elsei3++;printf(">f1:%d\n",i1);printf("=f1:%d\n",i2);printf("%d\n",i3);}C语言上机试题:51.题目:编一C程序,它能读入若干个非零浮点数(相邻的两个数用空格隔开,以0.0为输入结束标记,0.0不算在内),计算并输出这些数的平均值。(注:可执行文件名为e5_1.exe)程序设计:#include"math.h"main(){floatf,s=0.0;intn=0;printf("Pleaseenterfloatnumber:\n");scanf("%f",&f);if(fabs(f-0.0)<1e-4)printf("Nonumber!\n");elsewhile(fabs(f-0.0)>1e-4){n++;s+=f;scanf("%f",&f);}if(n!=0)printf("%dnumberofaverageis:%f\n",n,s/n);}2.题目:编一C程序,它能反复读入正整数(相邻的用空格隔开),并判断它是否为素数(质数),若是,则输出"yes",否则,输出"no",直到读入1时,程序终止执行。(注:可执行文件名为e5_2.exe)程序设计:main(){intn,m,f;printf("Pleaseenteranumber:\n");scanf("%d",&n);while(n!=1){f=1;if(n==2)printf("%dyes\n",n);elsefor(m=2;mif(n%m==0){printf("%dno\n",n);f=0;break;}if(n!=2&&f==1)printf("%dyes\n",n);scanf("%d",&n);}}3.题目:编一C程序,它能读入21个整数(相邻的两个数用空格隔开),并输出值为中间的整数的值(即恰有10个值小于它,恰有10个值大于它)。(注:可执行文件名为e5_3.exe)程序设计:main(){inta[21],i,j,k,t;printf("Pleaseenter21numbers:\n");for(i=0;i<21;i++)scanf("%d",&a[i]);for(k=1;k<21;k++)for(j=20,i=0;i<21-k;i++,j--)if(a[j]{t=a[j];a[j]=a[j-1];a[j-1]=t;}printf("Thecenternumberis%d\n",a[10]);}C语言上机试题:61.题目:编一C程序,它能读入一串整数(用空格隔开相邻的两个整数,以-9999为输入结束标记,-9999不算在内),并以与读入次序相反的次序输出。(注:可执行文件名为e6_1.exe)程序设计:main(){inta[100],i=-1,n;printf("Pleaseenternumbers:\n");do{i++;scanf("%d",&a[i]);}while(a[i]!=-9999);n=i-1;for(i=n;i>=0;i--)printf("%d",a[i]);printf("\n");}2.题目:编一C程序,它能以字符串形式读入两个无符号正整数m和n(两个串各占一行),计算并输出这两个整数的和,其中m和n的值最大可为1000亿。(注:可执行文件名为e6_2.exe)程序设计:#include"stdio.h"#include"string.h"main(){charm[20],n[20],mn[20];intml,nl,ms,ns,mns,k,i,j,f;printf("Pleaseenter2numberstring:\n");scanf("%s",m);scanf("%s",n);ml=strlen(m);nl=strlen(n);if(mlfor(i=ml-1,j=nl-1;i>=ml-nl-1;i--,j--)n[i]=n[j];for(i=0;ifor(i=ml-1;i>=0;i--){ms=m[i]-48;ns=n[i]-48;mns=ms+ns;if(mns<10)f=0;elsef=1;if(mns<10)m[i]+=ns;else{m[i]+=ns-10;m[i-1]+=f;}}if(f==0)printf("%s\n",m);else{for(i=ml;i>0;i--)m[i]=m[i-1];m[0]='1';printf("%s\n",m);}}3.题目:编一C程序,它能读入10个浮点数(相邻的两个数用空格隔开),计算并输出其中最大数和最小数之差。(注:可执行文件名为e6_3.exe)程序设计:main(){floatf[9],max,min;inti;printf("Pleaseenter10float:\n");for(i=0;i<10;i++)scanf("%f",&f[i]);max=min=f[0];for(i=0;i<10;i++){if(maxmax=f[i];if(min>f[i])min=f[i];}printf("max=%f,min=%f,max-min=%f\n",max,min,max-min);}C语言上机试题:71.题目:编一C程序,它能读入10个用空格隔开的整数n1,n2,…,n10,对于i=1,2,…10,执行:若ni是某个整数的平方,则输出yes,否则输出no。(注:可执行文件名为e7_1.exe)程序设计:#include"math.h"main(){inta[9],i,j,n;printf("Pleaseenter10number:\n");for(i=0;i<10;i++)scanf("%d",&a[i]);for(i=0;i<10;i++)if(a[i]==1)printf("%dyes\n",a[i]);else{n=(int)(floor(sqrt(a[i])));if(a[i]==n*n)printf("%dyes\n",a[i]);elseprintf("%dno\n",a[i]);}}2.题目:编一C程序,它能读入由空格隔开的5个正整数,对每个正整数n,判断,若n是完全数(即n=d1+d2+..+dk,其中d1,d2,..dk是n的所有小于它的因子,如6的所有小于它的因子是1,2,3,6=1+2+3,即6是完全数),则输出yes,否则输出no。(注:可执行文件名为e7_2.exe)程序设计:main(){inta[5],i,j,n;printf("Pleaseenter5number:\n");for(i=0;i<5;i++)scanf("%d",&a[i]);for(i=0;i<5;i++){n=0;for(j=1;jif(a[i]%j==0)n+=j;if(n==a[i])printf("%dyes\n",a[i]);elseprintf("%dno\n",a[i]);}}3.题目:编一C程序,它能读入一个正整数n(n<10),然后输出如下图形:程序设计:main(){staticinta[20][20];intn,i,j,k;printf("Pleaseintern=");scanf("%d",&n);printf("\n");for(i=0;i{k=1;for(j=0;j<2*n-1;j++){if(j>n-i-2)a[i][j]=i+1;if(k<=2*i+1+n-i-2)k++;elsebreak;}}for(i=0;ifor(j=0;j<2*n-1;j++){if(a[i][j]==0)a[i][j]='';elsea[i][j]+=48;}for(i=0;i{printf("\n");for(j=0;j<2*n-1;j++)printf("%c",a[i][j]);}for(i=n-2;i>=0;i--){printf("\n");for(j=0;j<2*n-1;j++)printf("%c",a[i][j]);}printf("\n");}C语言上机试题:81.题目:编一C程序,它能读入一个正整数n,然后输出如下图形:(注:可执行文件名为e8_1.exe)程序设计:main(){staticchara[80][80];intn,i,j,k;printf("Pleaseintern=");scanf("%d",&n);printf("\n");f
s+=k;
printf("To10basenumberis:
printf("%d\n",s);
编一C程序,它能依次读入三组d1、r1、d2、r2、d3、r3共18个非负整数(其中0<=r1(输入整数时,相邻的两个用空格隔开)。(注:可执行文件名为e4_2.exe)程序设计:main(){intl,i,n,d1,r1,d2,r2,d3,r3;for(i=0;i<=2;i++){l=1;n=1;printf("Pleaseenterd1>=r1>=0,d2>=r2>=0,d3>=r3>=0:\n");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("%d\n",n);l=0;}elsen++;}if(l!=0)printf("no!\n");}}3.题目:编一C程序,它能读如若干浮点数f1、f2、...fn(以-9999.0为结束标记,-9999.0不算在内)并输出在f2、f3、...fn这n-1个数中大于f1的数的个数、等于f1的数的个数和小于f1的数的个数。(注:可执行文件名为e4_3.exe)程序设计:#include"math.h"main(){floatf[100],f1;intn=0,i,i1=0,i2=0,i3=0;printf("Pleaseenterfloat:\n");scanf("%f",&f1);f[0]=f1;while(abs(f[n]+9999.0)>=1e-4)scanf("%f",&f[++n]);for(i=1;i<=n-1;i++)if(f[i]>f1)i1++;elseif(abs(f[i]-f1)<1e-4)i2++;elsei3++;printf(">f1:%d\n",i1);printf("=f1:%d\n",i2);printf("%d\n",i3);}C语言上机试题:51.题目:编一C程序,它能读入若干个非零浮点数(相邻的两个数用空格隔开,以0.0为输入结束标记,0.0不算在内),计算并输出这些数的平均值。(注:可执行文件名为e5_1.exe)程序设计:#include"math.h"main(){floatf,s=0.0;intn=0;printf("Pleaseenterfloatnumber:\n");scanf("%f",&f);if(fabs(f-0.0)<1e-4)printf("Nonumber!\n");elsewhile(fabs(f-0.0)>1e-4){n++;s+=f;scanf("%f",&f);}if(n!=0)printf("%dnumberofaverageis:%f\n",n,s/n);}2.题目:编一C程序,它能反复读入正整数(相邻的用空格隔开),并判断它是否为素数(质数),若是,则输出"yes",否则,输出"no",直到读入1时,程序终止执行。(注:可执行文件名为e5_2.exe)程序设计:main(){intn,m,f;printf("Pleaseenteranumber:\n");scanf("%d",&n);while(n!=1){f=1;if(n==2)printf("%dyes\n",n);elsefor(m=2;mif(n%m==0){printf("%dno\n",n);f=0;break;}if(n!=2&&f==1)printf("%dyes\n",n);scanf("%d",&n);}}3.题目:编一C程序,它能读入21个整数(相邻的两个数用空格隔开),并输出值为中间的整数的值(即恰有10个值小于它,恰有10个值大于它)。(注:可执行文件名为e5_3.exe)程序设计:main(){inta[21],i,j,k,t;printf("Pleaseenter21numbers:\n");for(i=0;i<21;i++)scanf("%d",&a[i]);for(k=1;k<21;k++)for(j=20,i=0;i<21-k;i++,j--)if(a[j]{t=a[j];a[j]=a[j-1];a[j-1]=t;}printf("Thecenternumberis%d\n",a[10]);}C语言上机试题:61.题目:编一C程序,它能读入一串整数(用空格隔开相邻的两个整数,以-9999为输入结束标记,-9999不算在内),并以与读入次序相反的次序输出。(注:可执行文件名为e6_1.exe)程序设计:main(){inta[100],i=-1,n;printf("Pleaseenternumbers:\n");do{i++;scanf("%d",&a[i]);}while(a[i]!=-9999);n=i-1;for(i=n;i>=0;i--)printf("%d",a[i]);printf("\n");}2.题目:编一C程序,它能以字符串形式读入两个无符号正整数m和n(两个串各占一行),计算并输出这两个整数的和,其中m和n的值最大可为1000亿。(注:可执行文件名为e6_2.exe)程序设计:#include"stdio.h"#include"string.h"main(){charm[20],n[20],mn[20];intml,nl,ms,ns,mns,k,i,j,f;printf("Pleaseenter2numberstring:\n");scanf("%s",m);scanf("%s",n);ml=strlen(m);nl=strlen(n);if(mlfor(i=ml-1,j=nl-1;i>=ml-nl-1;i--,j--)n[i]=n[j];for(i=0;ifor(i=ml-1;i>=0;i--){ms=m[i]-48;ns=n[i]-48;mns=ms+ns;if(mns<10)f=0;elsef=1;if(mns<10)m[i]+=ns;else{m[i]+=ns-10;m[i-1]+=f;}}if(f==0)printf("%s\n",m);else{for(i=ml;i>0;i--)m[i]=m[i-1];m[0]='1';printf("%s\n",m);}}3.题目:编一C程序,它能读入10个浮点数(相邻的两个数用空格隔开),计算并输出其中最大数和最小数之差。(注:可执行文件名为e6_3.exe)程序设计:main(){floatf[9],max,min;inti;printf("Pleaseenter10float:\n");for(i=0;i<10;i++)scanf("%f",&f[i]);max=min=f[0];for(i=0;i<10;i++){if(maxmax=f[i];if(min>f[i])min=f[i];}printf("max=%f,min=%f,max-min=%f\n",max,min,max-min);}C语言上机试题:71.题目:编一C程序,它能读入10个用空格隔开的整数n1,n2,…,n10,对于i=1,2,…10,执行:若ni是某个整数的平方,则输出yes,否则输出no。(注:可执行文件名为e7_1.exe)程序设计:#include"math.h"main(){inta[9],i,j,n;printf("Pleaseenter10number:\n");for(i=0;i<10;i++)scanf("%d",&a[i]);for(i=0;i<10;i++)if(a[i]==1)printf("%dyes\n",a[i]);else{n=(int)(floor(sqrt(a[i])));if(a[i]==n*n)printf("%dyes\n",a[i]);elseprintf("%dno\n",a[i]);}}2.题目:编一C程序,它能读入由空格隔开的5个正整数,对每个正整数n,判断,若n是完全数(即n=d1+d2+..+dk,其中d1,d2,..dk是n的所有小于它的因子,如6的所有小于它的因子是1,2,3,6=1+2+3,即6是完全数),则输出yes,否则输出no。(注:可执行文件名为e7_2.exe)程序设计:main(){inta[5],i,j,n;printf("Pleaseenter5number:\n");for(i=0;i<5;i++)scanf("%d",&a[i]);for(i=0;i<5;i++){n=0;for(j=1;jif(a[i]%j==0)n+=j;if(n==a[i])printf("%dyes\n",a[i]);elseprintf("%dno\n",a[i]);}}3.题目:编一C程序,它能读入一个正整数n(n<10),然后输出如下图形:程序设计:main(){staticinta[20][20];intn,i,j,k;printf("Pleaseintern=");scanf("%d",&n);printf("\n");for(i=0;i{k=1;for(j=0;j<2*n-1;j++){if(j>n-i-2)a[i][j]=i+1;if(k<=2*i+1+n-i-2)k++;elsebreak;}}for(i=0;ifor(j=0;j<2*n-1;j++){if(a[i][j]==0)a[i][j]='';elsea[i][j]+=48;}for(i=0;i{printf("\n");for(j=0;j<2*n-1;j++)printf("%c",a[i][j]);}for(i=n-2;i>=0;i--){printf("\n");for(j=0;j<2*n-1;j++)printf("%c",a[i][j]);}printf("\n");}C语言上机试题:81.题目:编一C程序,它能读入一个正整数n,然后输出如下图形:(注:可执行文件名为e8_1.exe)程序设计:main(){staticchara[80][80];intn,i,j,k;printf("Pleaseintern=");scanf("%d",&n);printf("\n");f
(输入整数时,相邻的两个用空格隔开)。
可执行文件名为e4_2.exe)
{intl,i,n,d1,r1,d2,r2,d3,r3;
for(i=0;i<=2;i++)
{l=1;
n=1;
printf("Pleaseenterd1>=r1>=0,d2>=r2>=0,d3>=r3>=0:
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("%d\n",n);l=0;}
elsen++;
if(l!
=0)printf("no!
编一C程序,它能读如若干浮点数f1、f2、...fn(以-9999.0为结束标记,-9999.0不算在内)并输出在f2、f3、...fn这n-1个数中大于f1的数的个数、等于f1的数的个数和小于f1的数的个数。
可执行文件名为e4_3.exe)
#include"math.h"
{floatf[100],f1;
intn=0,i,i1=0,i2=0,i3=0;
printf("Pleaseenterfloat:
scanf("%f",&f1);
f[0]=f1;
while(abs(f[n]+9999.0)>=1e-4)
scanf("%f",&f[++n]);
for(i=1;i<=n-1;i++)
if(f[i]>f1)i1++;
elseif(abs(f[i]-f1)<1e-4)i2++;
elsei3++;
printf(">f1:
%d\n",i1);
printf("=f1:
%d\n",i2);
printf("%d\n",i3);}C语言上机试题:51.题目:编一C程序,它能读入若干个非零浮点数(相邻的两个数用空格隔开,以0.0为输入结束标记,0.0不算在内),计算并输出这些数的平均值。(注:可执行文件名为e5_1.exe)程序设计:#include"math.h"main(){floatf,s=0.0;intn=0;printf("Pleaseenterfloatnumber:\n");scanf("%f",&f);if(fabs(f-0.0)<1e-4)printf("Nonumber!\n");elsewhile(fabs(f-0.0)>1e-4){n++;s+=f;scanf("%f",&f);}if(n!=0)printf("%dnumberofaverageis:%f\n",n,s/n);}2.题目:编一C程序,它能反复读入正整数(相邻的用空格隔开),并判断它是否为素数(质数),若是,则输出"yes",否则,输出"no",直到读入1时,程序终止执行。(注:可执行文件名为e5_2.exe)程序设计:main(){intn,m,f;printf("Pleaseenteranumber:\n");scanf("%d",&n);while(n!=1){f=1;if(n==2)printf("%dyes\n",n);elsefor(m=2;mif(n%m==0){printf("%dno\n",n);f=0;break;}if(n!=2&&f==1)printf("%dyes\n",n);scanf("%d",&n);}}3.题目:编一C程序,它能读入21个整数(相邻的两个数用空格隔开),并输出值为中间的整数的值(即恰有10个值小于它,恰有10个值大于它)。(注:可执行文件名为e5_3.exe)程序设计:main(){inta[21],i,j,k,t;printf("Pleaseenter21numbers:\n");for(i=0;i<21;i++)scanf("%d",&a[i]);for(k=1;k<21;k++)for(j=20,i=0;i<21-k;i++,j--)if(a[j]{t=a[j];a[j]=a[j-1];a[j-1]=t;}printf("Thecenternumberis%d\n",a[10]);}C语言上机试题:61.题目:编一C程序,它能读入一串整数(用空格隔开相邻的两个整数,以-9999为输入结束标记,-9999不算在内),并以与读入次序相反的次序输出。(注:可执行文件名为e6_1.exe)程序设计:main(){inta[100],i=-1,n;printf("Pleaseenternumbers:\n");do{i++;scanf("%d",&a[i]);}while(a[i]!=-9999);n=i-1;for(i=n;i>=0;i--)printf("%d",a[i]);printf("\n");}2.题目:编一C程序,它能以字符串形式读入两个无符号正整数m和n(两个串各占一行),计算并输出这两个整数的和,其中m和n的值最大可为1000亿。(注:可执行文件名为e6_2.exe)程序设计:#include"stdio.h"#include"string.h"main(){charm[20],n[20],mn[20];intml,nl,ms,ns,mns,k,i,j,f;printf("Pleaseenter2numberstring:\n");scanf("%s",m);scanf("%s",n);ml=strlen(m);nl=strlen(n);if(mlfor(i=ml-1,j=nl-1;i>=ml-nl-1;i--,j--)n[i]=n[j];for(i=0;ifor(i=ml-1;i>=0;i--){ms=m[i]-48;ns=n[i]-48;mns=ms+ns;if(mns<10)f=0;elsef=1;if(mns<10)m[i]+=ns;else{m[i]+=ns-10;m[i-1]+=f;}}if(f==0)printf("%s\n",m);else{for(i=ml;i>0;i--)m[i]=m[i-1];m[0]='1';printf("%s\n",m);}}3.题目:编一C程序,它能读入10个浮点数(相邻的两个数用空格隔开),计算并输出其中最大数和最小数之差。(注:可执行文件名为e6_3.exe)程序设计:main(){floatf[9],max,min;inti;printf("Pleaseenter10float:\n");for(i=0;i<10;i++)scanf("%f",&f[i]);max=min=f[0];for(i=0;i<10;i++){if(maxmax=f[i];if(min>f[i])min=f[i];}printf("max=%f,min=%f,max-min=%f\n",max,min,max-min);}C语言上机试题:71.题目:编一C程序,它能读入10个用空格隔开的整数n1,n2,…,n10,对于i=1,2,…10,执行:若ni是某个整数的平方,则输出yes,否则输出no。(注:可执行文件名为e7_1.exe)程序设计:#include"math.h"main(){inta[9],i,j,n;printf("Pleaseenter10number:\n");for(i=0;i<10;i++)scanf("%d",&a[i]);for(i=0;i<10;i++)if(a[i]==1)printf("%dyes\n",a[i]);else{n=(int)(floor(sqrt(a[i])));if(a[i]==n*n)printf("%dyes\n",a[i]);elseprintf("%dno\n",a[i]);}}2.题目:编一C程序,它能读入由空格隔开的5个正整数,对每个正整数n,判断,若n是完全数(即n=d1+d2+..+dk,其中d1,d2,..dk是n的所有小于它的因子,如6的所有小于它的因子是1,2,3,6=1+2+3,即6是完全数),则输出yes,否则输出no。(注:可执行文件名为e7_2.exe)程序设计:main(){inta[5],i,j,n;printf("Pleaseenter5number:\n");for(i=0;i<5;i++)scanf("%d",&a[i]);for(i=0;i<5;i++){n=0;for(j=1;jif(a[i]%j==0)n+=j;if(n==a[i])printf("%dyes\n",a[i]);elseprintf("%dno\n",a[i]);}}3.题目:编一C程序,它能读入一个正整数n(n<10),然后输出如下图形:程序设计:main(){staticinta[20][20];intn,i,j,k;printf("Pleaseintern=");scanf("%d",&n);printf("\n");for(i=0;i{k=1;for(j=0;j<2*n-1;j++){if(j>n-i-2)a[i][j]=i+1;if(k<=2*i+1+n-i-2)k++;elsebreak;}}for(i=0;ifor(j=0;j<2*n-1;j++){if(a[i][j]==0)a[i][j]='';elsea[i][j]+=48;}for(i=0;i{printf("\n");for(j=0;j<2*n-1;j++)printf("%c",a[i][j]);}for(i=n-2;i>=0;i--){printf("\n");for(j=0;j<2*n-1;j++)printf("%c",a[i][j]);}printf("\n");}C语言上机试题:81.题目:编一C程序,它能读入一个正整数n,然后输出如下图形:(注:可执行文件名为e8_1.exe)程序设计:main(){staticchara[80][80];intn,i,j,k;printf("Pleaseintern=");scanf("%d",&n);printf("\n");f
%d\n",i3);
5
1.题目:
编一C程序,它能读入若干个非零浮点数(相邻的两个数用空格隔开,以0.0为输入结束标记,0.0不算在内),计算并输出这些数的平均值。
可执行文件名为e5_1.exe)
{floatf,s=0.0;
intn=0;
printf("Pleaseenterfloatnumber:
scanf("%f",&f);
if(fabs(f-0.0)<1e-4)
printf("Nonumber!
elsewhile(fabs(f-0.0)>1e-4)
{n++;
s+=f;
if(n!
printf("%dnumberofaverageis:
%f\n",n,s/n);
编一C程序,它能反复读入正整数(相邻的用空格隔开),并判断它是否为素数(质数),若是,则输出"yes",否则,输出"no",直到读入1时,程序终止执行。
可执行文件名为e5_2.exe)
{intn,m,f;
printf("Pleaseenteranumber:
=1)
{f=1;
if(n==2)
printf("%dyes\n",n);
elsefor(m=2;mif(n%m==0){printf("%dno\n",n);f=0;break;}if(n!=2&&f==1)printf("%dyes\n",n);scanf("%d",&n);}}3.题目:编一C程序,它能读入21个整数(相邻的两个数用空格隔开),并输出值为中间的整数的值(即恰有10个值小于它,恰有10个值大于它)。(注:可执行文件名为e5_3.exe)程序设计:main(){inta[21],i,j,k,t;printf("Pleaseenter21numbers:\n");for(i=0;i<21;i++)scanf("%d",&a[i]);for(k=1;k<21;k++)for(j=20,i=0;i<21-k;i++,j--)if(a[j]{t=a[j];a[j]=a[j-1];a[j-1]=t;}printf("Thecenternumberis%d\n",a[10]);}C语言上机试题:61.题目:编一C程序,它能读入一串整数(用空格隔开相邻的两个整数,以-9999为输入结束标记,-9999不算在内),并以与读入次序相反的次序输出。(注:可执行文件名为e6_1.exe)程序设计:main(){inta[100],i=-1,n;printf("Pleaseenternumbers:\n");do{i++;scanf("%d",&a[i]);}while(a[i]!=-9999);n=i-1;for(i=n;i>=0;i--)printf("%d",a[i]);printf("\n");}2.题目:编一C程序,它能以字符串形式读入两个无符号正整数m和n(两个串各占一行),计算并输出这两个整数的和,其中m和n的值最大可为1000亿。(注:可执行文件名为e6_2.exe)程序设计:#include"stdio.h"#include"string.h"main(){charm[20],n[20],mn[20];intml,nl,ms,ns,mns,k,i,j,f;printf("Pleaseenter2numberstring:\n");scanf("%s",m);scanf("%s",n);ml=strlen(m);nl=strlen(n);if(mlfor(i=ml-1,j=nl-1;i>=ml-nl-1;i--,j--)n[i]=n[j];for(i=0;ifor(i=ml-1;i>=0;i--){ms=m[i]-48;ns=n[i]-48;mns=ms+ns;if(mns<10)f=0;elsef=1;if(mns<10)m[i]+=ns;else{m[i]+=ns-10;m[i-1]+=f;}}if(f==0)printf("%s\n",m);else{for(i=ml;i>0;i--)m[i]=m[i-1];m[0]='1';printf("%s\n",m);}}3.题目:编一C程序,它能读入10个浮点数(相邻的两个数用空格隔开),计算并输出其中最大数和最小数之差。(注:可执行文件名为e6_3.exe)程序设计:main(){floatf[9],max,min;inti;printf("Pleaseenter10float:\n");for(i=0;i<10;i++)scanf("%f",&f[i]);max=min=f[0];for(i=0;i<10;i++){if(maxmax=f[i];if(min>f[i])min=f[i];}printf("max=%f,min=%f,max-min=%f\n",max,min,max-min);}C语言上机试题:71.题目:编一C程序,它能读入10个用空格隔开的整数n1,n2,…,n10,对于i=1,2,…10,执行:若ni是某个整数的平方,则输出yes,否则输出no。(注:可执行文件名为e7_1.exe)程序设计:#include"math.h"main(){inta[9],i,j,n;printf("Pleaseenter10number:\n");for(i=0;i<10;i++)scanf("%d",&a[i]);for(i=0;i<10;i++)if(a[i]==1)printf("%dyes\n",a[i]);else{n=(int)(floor(sqrt(a[i])));if(a[i]==n*n)printf("%dyes\n",a[i]);elseprintf("%dno\n",a[i]);}}2.题目:编一C程序,它能读入由空格隔开的5个正整数,对每个正整数n,判断,若n是完全数(即n=d1+d2+..+dk,其中d1,d2,..dk是n的所有小于它的因子,如6的所有小于它的因子是1,2,3,6=1+2+3,即6是完全数),则输出yes,否则输出no。(注:可执行文件名为e7_2.exe)程序设计:main(){inta[5],i,j,n;printf("Pleaseenter5number:\n");for(i=0;i<5;i++)scanf("%d",&a[i]);for(i=0;i<5;i++){n=0;for(j=1;jif(a[i]%j==0)n+=j;if(n==a[i])printf("%dyes\n",a[i]);elseprintf("%dno\n",a[i]);}}3.题目:编一C程序,它能读入一个正整数n(n<10),然后输出如下图形:程序设计:main(){staticinta[20][20];intn,i,j,k;printf("Pleaseintern=");scanf("%d",&n);printf("\n");for(i=0;i{k=1;for(j=0;j<2*n-1;j++){if(j>n-i-2)a[i][j]=i+1;if(k<=2*i+1+n-i-2)k++;elsebreak;}}for(i=0;ifor(j=0;j<2*n-1;j++){if(a[i][j]==0)a[i][j]='';elsea[i][j]+=48;}for(i=0;i{printf("\n");for(j=0;j<2*n-1;j++)printf("%c",a[i][j]);}for(i=n-2;i>=0;i--){printf("\n");for(j=0;j<2*n-1;j++)printf("%c",a[i][j]);}printf("\n");}C语言上机试题:81.题目:编一C程序,它能读入一个正整数n,然后输出如下图形:(注:可执行文件名为e8_1.exe)程序设计:main(){staticchara[80][80];intn,i,j,k;printf("Pleaseintern=");scanf("%d",&n);printf("\n");f
if(n%m==0)
{printf("%dno\n",n);
f=0;
=2&&f==1)
编一C程序,它能读入21个整数(相邻的两个数用空格隔开),并输出值为中间的整数的值(即恰有10个值小于它,恰有10个值大于它)。
可执行文件名为e5_3.exe)
{inta[21],i,j,k,t;
printf("Pleaseenter21numbers:
for(i=0;i<21;i++)
for(k=1;k<21;k++)
for(j=20,i=0;i<21-k;i++,j--)
if(a[j]{t=a[j];a[j]=a[j-1];a[j-1]=t;}printf("Thecenternumberis%d\n",a[10]);}C语言上机试题:61.题目:编一C程序,它能读入一串整数(用空格隔开相邻的两个整数,以-9999为输入结束标记,-9999不算在内),并以与读入次序相反的次序输出。(注:可执行文件名为e6_1.exe)程序设计:main(){inta[100],i=-1,n;printf("Pleaseenternumbers:\n");do{i++;scanf("%d",&a[i]);}while(a[i]!=-9999);n=i-1;for(i=n;i>=0;i--)printf("%d",a[i]);printf("\n");}2.题目:编一C程序,它能以字符串形式读入两个无符号正整数m和n(两个串各占一行),计算并输出这两个整数的和,其中m和n的值最大可为1000亿。(注:可执行文件名为e6_2.exe)程序设计:#include"stdio.h"#include"string.h"main(){charm[20],n[20],mn[20];intml,nl,ms,ns,mns,k,i,j,f;printf("Pleaseenter2numberstring:\n");scanf("%s",m);scanf("%s",n);ml=strlen(m);nl=strlen(n);if(mlfor(i=ml-1,j=nl-1;i>=ml-nl-1;i--,j--)n[i]=n[j];for(i=0;ifor(i=ml-1;i>=0;i--){ms=m[i]-48;ns=n[i]-48;mns=ms+ns;if(mns<10)f=0;elsef=1;if(mns<10)m[i]+=ns;else{m[i]+=ns-10;m[i-1]+=f;}}if(f==0)printf("%s\n",m);else{for(i=ml;i>0;i--)m[i]=m[i-1];m[0]='1';printf("%s\n",m);}}3.题目:编一C程序,它能读入10个浮点数(相邻的两个数用空格隔开),计算并输出其中最大数和最小数之差。(注:可执行文件名为e6_3.exe)程序设计:main(){floatf[9],max,min;inti;printf("Pleaseenter10float:\n");for(i=0;i<10;i++)scanf("%f",&f[i]);max=min=f[0];for(i=0;i<10;i++){if(maxmax=f[i];if(min>f[i])min=f[i];}printf("max=%f,min=%f,max-min=%f\n",max,min,max-min);}C语言上机试题:71.题目:编一C程序,它能读入10个用空格隔开的整数n1,n2,…,n10,对于i=1,2,…10,执行:若ni是某个整数的平方,则输出yes,否则输出no。(注:可执行文件名为e7_1.exe)程序设计:#include"math.h"main(){inta[9],i,j,n;printf("Pleaseenter10number:\n");for(i=0;i<10;i++)scanf("%d",&a[i]);for(i=0;i<10;i++)if(a[i]==1)printf("%dyes\n",a[i]);else{n=(int)(floor(sqrt(a[i])));if(a[i]==n*n)printf("%dyes\n",a[i]);elseprintf("%dno\n",a[i]);}}2.题目:编一C程序,它能读入由空格隔开的5个正整数,对每个正整数n,判断,若n是完全数(即n=d1+d2+..+dk,其中d1,d2,..dk是n的所有小于它的因子,如6的所有小于它的因子是1,2,3,6=1+2+3,即6是完全数),则输出yes,否则输出no。(注:可执行文件名为e7_2.exe)程序设计:main(){inta[5],i,j,n;printf("Pleaseenter5number:\n");for(i=0;i<5;i++)scanf("%d",&a[i]);for(i=0;i<5;i++){n=0;for(j=1;jif(a[i]%j==0)n+=j;if(n==a[i])printf("%dyes\n",a[i]);elseprintf("%dno\n",a[i]);}}3.题目:编一C程序,它能读入一个正整数n(n<10),然后输出如下图形:程序设计:main(){staticinta[20][20];intn,i,j,k;printf("Pleaseintern=");scanf("%d",&n);printf("\n");for(i=0;i{k=1;for(j=0;j<2*n-1;j++){if(j>n-i-2)a[i][j]=i+1;if(k<=2*i+1+n-i-2)k++;elsebreak;}}for(i=0;ifor(j=0;j<2*n-1;j++){if(a[i][j]==0)a[i][j]='';elsea[i][j]+=48;}for(i=0;i{printf("\n");for(j=0;j<2*n-1;j++)printf("%c",a[i][j]);}for(i=n-2;i>=0;i--){printf("\n");for(j=0;j<2*n-1;j++)printf("%c",a[i][j]);}printf("\n");}C语言上机试题:81.题目:编一C程序,它能读入一个正整数n,然后输出如下图形:(注:可执行文件名为e8_1.exe)程序设计:main(){staticchara[80][80];intn,i,j,k;printf("Pleaseintern=");scanf("%d",&n);printf("\n");f
{t=a[j];
a[j]=a[j-1];
a[j-1]=t;
printf("Thecenternumberis%d\n",a[10]);
6
编一C程序,它能读入一串整数(用空格隔开相邻的两个整数,以-9999为输入结束标记,-9999不算在内),并以与读入次序相反的次序输出。
可执行文件名为e6_1.exe)
{inta[100],i=-1,n;
printf("Pleaseenternumbers:
do{i++;
while(a[i]!
=-9999);
n=i-1;
for(i=n;i>=0;i--)
printf("%d",a[i]);
编一C程序,它能以字符串形式读入两个无符号正整数m和n(两个串各占一行),计算并输出这两个整数的和,其中m和n的值最大可为1000亿。
可执行文件名为e6_2.exe)
{charm[20],n[20],mn[20];
intml,nl,ms,ns,mns,k,i,j,f;
printf("Pleaseenter2numberstring:
scanf("%s",m);
scanf("%s",n);
ml=strlen(m);
nl=strlen(n);
if(mlfor(i=ml-1,j=nl-1;i>=ml-nl-1;i--,j--)n[i]=n[j];for(i=0;ifor(i=ml-1;i>=0;i--){ms=m[i]-48;ns=n[i]-48;mns=ms+ns;if(mns<10)f=0;elsef=1;if(mns<10)m[i]+=ns;else{m[i]+=ns-10;m[i-1]+=f;}}if(f==0)printf("%s\n",m);else{for(i=ml;i>0;i--)m[i]=m[i-1];m[0]='1';printf("%s\n",m);}}3.题目:编一C程序,它能读入10个浮点数(相邻的两个数用空格隔开),计算并输出其中最大数和最小数之差。(注:可执行文件名为e6_3.exe)程序设计:main(){floatf[9],max,min;inti;printf("Pleaseenter10float:\n");for(i=0;i<10;i++)scanf("%f",&f[i]);max=min=f[0];for(i=0;i<10;i++){if(maxmax=f[i];if(min>f[i])min=f[i];}printf("max=%f,min=%f,max-min=%f\n",max,min,max-min);}C语言上机试题:71.题目:编一C程序,它能读入10个用空格隔开的整数n1,n2,…,n10,对于i=1,2,…10,执行:若ni是某个整数的平方,则输出yes,否则输出no。(注:可执行文件名为e7_1.exe)程序设计:#include"math.h"main(){inta[9],i,j,n;printf("Pleaseenter10number:\n");for(i=0;i<10;i++)scanf("%d",&a[i]);for(i=0;i<10;i++)if(a[i]==1)printf("%dyes\n",a[i]);else{n=(int)(floor(sqrt(a[i])));if(a[i]==n*n)printf("%dyes\n",a[i]);elseprintf("%dno\n",a[i]);}}2.题目:编一C程序,它能读入由空格隔开的5个正整数,对每个正整数n,判断,若n是完全数(即n=d1+d2+..+dk,其中d1,d2,..dk是n的所有小于它的因子,如6的所有小于它的因子是1,2,3,6=1+2+3,即6是完全数),则输出yes,否则输出no。(注:可执行文件名为e7_2.exe)程序设计:main(){inta[5],i,j,n;printf("Pleaseenter5number:\n");for(i=0;i<5;i++)scanf("%d",&a[i]);for(i=0;i<5;i++){n=0;for(j=1;jif(a[i]%j==0)n+=j;if(n==a[i])printf("%dyes\n",a[i]);elseprintf("%dno\n",a[i]);}}3.题目:编一C程序,它能读入一个正整数n(n<10),然后输出如下图形:程序设计:main(){staticinta[20][20];intn,i,j,k;printf("Pleaseintern=");scanf("%d",&n);printf("\n");for(i=0;i{k=1;for(j=0;j<2*n-1;j++){if(j>n-i-2)a[i][j]=i+1;if(k<=2*i+1+n-i-2)k++;elsebreak;}}for(i=0;ifor(j=0;j<2*n-1;j++){if(a[i][j]==0)a[i][j]='';elsea[i][j]+=48;}for(i=0;i{printf("\n");for(j=0;j<2*n-1;j++)printf("%c",a[i][j]);}for(i=n-2;i>=0;i--){printf("\n");for(j=0;j<2*n-1;j++)printf("%c",a[i][j]);}printf("\n");}C语言上机试题:81.题目:编一C程序,它能读入一个正整数n,然后输出如下图形:(注:可执行文件名为e8_1.exe)程序设计:main(){staticchara[80][80];intn,i,j,k;printf("Pleaseintern=");scanf("%d",&n);printf("\n");f
for(i=ml-1,j=nl-1;i>=ml-nl-1;i--,j--)n[i]=n[j];
for(i=0;ifor(i=ml-1;i>=0;i--){ms=m[i]-48;ns=n[i]-48;mns=ms+ns;if(mns<10)f=0;elsef=1;if(mns<10)m[i]+=ns;else{m[i]+=ns-10;m[i-1]+=f;}}if(f==0)printf("%s\n",m);else{for(i=ml;i>0;i--)m[i]=m[i-1];m[0]='1';printf("%s\n",m);}}3.题目:编一C程序,它能读入10个浮点数(相邻的两个数用空格隔开),计算并输出其中最大数和最小数之差。(注:可执行文件名为e6_3.exe)程序设计:main(){floatf[9],max,min;inti;printf("Pleaseenter10float:\n");for(i=0;i<10;i++)scanf("%f",&f[i]);max=min=f[0];for(i=0;i<10;i++){if(maxmax=f[i];if(min>f[i])min=f[i];}printf("max=%f,min=%f,max-min=%f\n",max,min,max-min);}C语言上机试题:71.题目:编一C程序,它能读入10个用空格隔开的整数n1,n2,…,n10,对于i=1,2,…10,执行:若ni是某个整数的平方,则输出yes,否则输出no。(注:可执行文件名为e7_1.exe)程序设计:#include"math.h"main(){inta[9],i,j,n;printf("Pleaseenter10number:\n");for(i=0;i<10;i++)scanf("%d",&a[i]);for(i=0;i<10;i++)if(a[i]==1)printf("%dyes\n",a[i]);else{n=(int)(floor(sqrt(a[i])));if(a[i]==n*n)printf("%dyes\n",a[i]);elseprintf("%dno\n",a[i]);}}2.题目:编一C程序,它能读入由空格隔开的5个正整数,对每个正整数n,判断,若n是完全数(即n=d1+d2+..+dk,其中d1,d2,..dk是n的所有小于它的因子,如6的所有小于它的因子是1,2,3,6=1+2+3,即6是完全数),则输出yes,否则输出no。(注:可执行文件名为e7_2.exe)程序设计:main(){inta[5],i,j,n;printf("Pleaseenter5number:\n");for(i=0;i<5;i++)scanf("%d",&a[i]);for(i=0;i<5;i++){n=0;for(j=1;jif(a[i]%j==0)n+=j;if(n==a[i])printf("%dyes\n",a[i]);elseprintf("%dno\n",a[i]);}}3.题目:编一C程序,它能读入一个正整数n(n<10),然后输出如下图形:程序设计:main(){staticinta[20][20];intn,i,j,k;printf("Pleaseintern=");scanf("%d",&n);printf("\n");for(i=0;i{k=1;for(j=0;j<2*n-1;j++){if(j>n-i-2)a[i][j]=i+1;if(k<=2*i+1+n-i-2)k++;elsebreak;}}for(i=0;ifor(j=0;j<2*n-1;j++){if(a[i][j]==0)a[i][j]='';elsea[i][j]+=48;}for(i=0;i{printf("\n");for(j=0;j<2*n-1;j++)printf("%c",a[i][j]);}for(i=n-2;i>=0;i--){printf("\n");for(j=0;j<2*n-1;j++)printf("%c",a[i][j]);}printf("\n");}C语言上机试题:81.题目:编一C程序,它能读入一个正整数n,然后输出如下图形:(注:可执行文件名为e8_1.exe)程序设计:main(){staticchara[80][80];intn,i,j,k;printf("Pleaseintern=");scanf("%d",&n);printf("\n");f
for(i=ml-1;i>=0;i--)
{ms=m[i]-48;
ns=n[i]-48;
mns=ms+ns;
if(mns<10)f=0;
elsef=1;
if(mns<10)m[i]+=ns;
else{m[i]+=ns-10;
m[i-1]+=f;
if(f==0)printf("%s\n",m);
else{for(i=ml;i>0;i--)m[i]=m[i-1];m[0]='1';printf("%s\n",m);}
编一C程序,它能读入10个浮点数(相邻的两个数用空格隔开),计算并输出其中最大数和最小数之差。
可执行文件名为e6_3.exe)
{floatf[9],max,min;
inti;
printf("Pleaseenter10float:
for(i=0;i<10;i++)
scanf("%f",&f[i]);
max=min=f[0];
{if(maxmax=f[i];if(min>f[i])min=f[i];}printf("max=%f,min=%f,max-min=%f\n",max,min,max-min);}C语言上机试题:71.题目:编一C程序,它能读入10个用空格隔开的整数n1,n2,…,n10,对于i=1,2,…10,执行:若ni是某个整数的平方,则输出yes,否则输出no。(注:可执行文件名为e7_1.exe)程序设计:#include"math.h"main(){inta[9],i,j,n;printf("Pleaseenter10number:\n");for(i=0;i<10;i++)scanf("%d",&a[i]);for(i=0;i<10;i++)if(a[i]==1)printf("%dyes\n",a[i]);else{n=(int)(floor(sqrt(a[i])));if(a[i]==n*n)printf("%dyes\n",a[i]);elseprintf("%dno\n",a[i]);}}2.题目:编一C程序,它能读入由空格隔开的5个正整数,对每个正整数n,判断,若n是完全数(即n=d1+d2+..+dk,其中d1,d2,..dk是n的所有小于它的因子,如6的所有小于它的因子是1,2,3,6=1+2+3,即6是完全数),则输出yes,否则输出no。(注:可执行文件名为e7_2.exe)程序设计:main(){inta[5],i,j,n;printf("Pleaseenter5number:\n");for(i=0;i<5;i++)scanf("%d",&a[i]);for(i=0;i<5;i++){n=0;for(j=1;jif(a[i]%j==0)n+=j;if(n==a[i])printf("%dyes\n",a[i]);elseprintf("%dno\n",a[i]);}}3.题目:编一C程序,它能读入一个正整数n(n<10),然后输出如下图形:程序设计:main(){staticinta[20][20];intn,i,j,k;printf("Pleaseintern=");scanf("%d",&n);printf("\n");for(i=0;i{k=1;for(j=0;j<2*n-1;j++){if(j>n-i-2)a[i][j]=i+1;if(k<=2*i+1+n-i-2)k++;elsebreak;}}for(i=0;ifor(j=0;j<2*n-1;j++){if(a[i][j]==0)a[i][j]='';elsea[i][j]+=48;}for(i=0;i{printf("\n");for(j=0;j<2*n-1;j++)printf("%c",a[i][j]);}for(i=n-2;i>=0;i--){printf("\n");for(j=0;j<2*n-1;j++)printf("%c",a[i][j]);}printf("\n");}C语言上机试题:81.题目:编一C程序,它能读入一个正整数n,然后输出如下图形:(注:可执行文件名为e8_1.exe)程序设计:main(){staticchara[80][80];intn,i,j,k;printf("Pleaseintern=");scanf("%d",&n);printf("\n");f
max=f[i];
if(min>f[i])
min=f[i];
printf("max=%f,min=%f,max-min=%f\n",max,min,max-min);
7
编一C程序,它能读入10个用空格隔开的整数n1,n2,…,n10,对于i=1,2,…10,执行:
若ni是某个整数的平方,则输出yes,否则输出no。
可执行文件名为e7_1.exe)
{inta[9],i,j,n;
printf("Pleaseenter10number:
if(a[i]==1)printf("%dyes\n",a[i]);
else{n=(int)(floor(sqrt(a[i])));
if(a[i]==n*n)printf("%dyes\n",a[i]);
elseprintf("%dno\n",a[i]);
编一C程序,它能读入由空格隔开的5个正整数,对每个正整数n,判断,若n是完全数(即n=d1+d2+..+dk,其中d1,d2,..dk是n的所有小于它的因子,如6的所有小于它的因子是1,2,3,6=1+2+3,即6是完全数),则输出yes,否则输出no。
可执行文件名为e7_2.exe)
{inta[5],i,j,n;
printf("Pleaseenter5number:
for(i=0;i<5;i++)
{n=0;
for(j=1;jif(a[i]%j==0)n+=j;if(n==a[i])printf("%dyes\n",a[i]);elseprintf("%dno\n",a[i]);}}3.题目:编一C程序,它能读入一个正整数n(n<10),然后输出如下图形:程序设计:main(){staticinta[20][20];intn,i,j,k;printf("Pleaseintern=");scanf("%d",&n);printf("\n");for(i=0;i{k=1;for(j=0;j<2*n-1;j++){if(j>n-i-2)a[i][j]=i+1;if(k<=2*i+1+n-i-2)k++;elsebreak;}}for(i=0;ifor(j=0;j<2*n-1;j++){if(a[i][j]==0)a[i][j]='';elsea[i][j]+=48;}for(i=0;i{printf("\n");for(j=0;j<2*n-1;j++)printf("%c",a[i][j]);}for(i=n-2;i>=0;i--){printf("\n");for(j=0;j<2*n-1;j++)printf("%c",a[i][j]);}printf("\n");}C语言上机试题:81.题目:编一C程序,它能读入一个正整数n,然后输出如下图形:(注:可执行文件名为e8_1.exe)程序设计:main(){staticchara[80][80];intn,i,j,k;printf("Pleaseintern=");scanf("%d",&n);printf("\n");f
if(a[i]%j==0)n+=j;
if(n==a[i])printf("%dyes\n",a[i]);
编一C程序,它能读入一个正整数n(n<10),然后输出如下图形:
for(i=0;i{k=1;for(j=0;j<2*n-1;j++){if(j>n-i-2)a[i][j]=i+1;if(k<=2*i+1+n-i-2)k++;elsebreak;}}for(i=0;ifor(j=0;j<2*n-1;j++){if(a[i][j]==0)a[i][j]='';elsea[i][j]+=48;}for(i=0;i{printf("\n");for(j=0;j<2*n-1;j++)printf("%c",a[i][j]);}for(i=n-2;i>=0;i--){printf("\n");for(j=0;j<2*n-1;j++)printf("%c",a[i][j]);}printf("\n");}C语言上机试题:81.题目:编一C程序,它能读入一个正整数n,然后输出如下图形:(注:可执行文件名为e8_1.exe)程序设计:main(){staticchara[80][80];intn,i,j,k;printf("Pleaseintern=");scanf("%d",&n);printf("\n");f
for(i=0;ifor(j=0;j<2*n-1;j++){if(a[i][j]==0)a[i][j]='';elsea[i][j]+=48;}for(i=0;i{printf("\n");for(j=0;j<2*n-1;j++)printf("%c",a[i][j]);}for(i=n-2;i>=0;i--){printf("\n");for(j=0;j<2*n-1;j++)printf("%c",a[i][j]);}printf("\n");}C语言上机试题:81.题目:编一C程序,它能读入一个正整数n,然后输出如下图形:(注:可执行文件名为e8_1.exe)程序设计:main(){staticchara[80][80];intn,i,j,k;printf("Pleaseintern=");scanf("%d",&n);printf("\n");f
for(i=0;i{printf("\n");for(j=0;j<2*n-1;j++)printf("%c",a[i][j]);}for(i=n-2;i>=0;i--){printf("\n");for(j=0;j<2*n-1;j++)printf("%c",a[i][j]);}printf("\n");}C语言上机试题:81.题目:编一C程序,它能读入一个正整数n,然后输出如下图形:(注:可执行文件名为e8_1.exe)程序设计:main(){staticchara[80][80];intn,i,j,k;printf("Pleaseintern=");scanf("%d",&n);printf("\n");f
8
编一C程序,它能读入一个正整数n,然后输出如下图形:
可执行文件名为e8_1.exe)
{staticchara[80][80];
f
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1