C程上机编程题.docx
- 文档编号:3035148
- 上传时间:2022-11-17
- 格式:DOCX
- 页数:28
- 大小:21.84KB
C程上机编程题.docx
《C程上机编程题.docx》由会员分享,可在线阅读,更多相关《C程上机编程题.docx(28页珍藏版)》请在冰豆网上搜索。
C程上机编程题
1程序填空,不要改变与输入输出有关的语句。
输入一个正整数repeat(0 输入n(n≤100)个整数,统计其中重复出现的数及其出现次数,统计结果放在数组b中,如果有重复出现的数,则输出该数及其出现次数,如果没有重复出现的数,则输出“Nosame”。 例: 括号内是说明 输入 2(repeat=2) 6123212(n=6) 512345(n=5) 输出 1: 22: 3(1出现2次、2出现3次) Nosame #include intmain() { intri,repeat; intn,a[100],b[100][2]; intcount,i,j,k,flag; scanf("%d",&repeat); for(ri=1;ri<=repeat;ri++){ scanf("%d",&n); for(i=0;i scanf("%d",&a[i]); /*---- -----*/ count=0; flag=0; for(j=0;j<=i-1;j++){ for(k=1;k<=i-1;i++){ if(a[j]==a[k]){ flag=1; count=count+1;} b[i][0]=i; b[i][1]=count; } } if(flag) for(i=0;i %d",b[i][0],b[i][1]); elseprintf("Nosame"); printf("\n"); } 2程序填空,不要改变与输入输出有关的语句。 输入一个正整数repeat(0 对输入的一个小写字母,将字母循环后移5个位置后输出(如'a'变成'f','w'变成'b')。 例: 括号内是说明 输入: 2(repeat=2) a w 输出: f b #include intmain() { charc; intri,repeat; scanf("%d",&repeat); getchar(); for(ri=1;ri<=repeat;ri++){ c=getchar(); getchar(); /*----------*/ If(c>=’a’&&c<=’v’){ c=c+5; if(c>=’w’&&c<=’z’) c=c-21;} putchar(c); } } 3 程序填空,不要改变与输入输出有关的语句。 输入一个正整数repeat(0 设等比数列的第一项为1,公比q=2,输入一个正整数m,输出该等比数列满足前n项和小于m的最大n。 例如: 输入: 2(repeat=2) 100 1000 输出: 6(假定^表示乘方,则1+2+2^2+2^3+…+2^5<100,而1+2+2^2+2^3+…+2^6>100,所以得项数6) 9 #include intmain() { intmain() { inta,q,m,n,sum; intri,repeat; scanf("%d",&repeat); for(ri=1;ri<=repeat;ri++){ scanf("%d",&m); sum=0;a=1;q=2;n=0; while(sum<=m) { sum=sum+a; a=a*q; n=n+1; } n=n-1; printf("%d\n",n); } return1; } 4 程序填空,不要改变与输入输出有关的语句。 输入一个正整数repeat(0 输入一个正整数m,统计该数各位数字中零的个数count, 并求各位数字中的最大者max。 例如: 输入: 2(repeat=2) 10023 2150 输出 count=2,max=3 count=1,max=5 #include intmain() { intn,count,max,t; intri,repeat; scanf("%d",&repeat); for(ri=1;ri<=repeat;ri++){ count=max=0; scanf("%d",&n); while(n>=1){ t=n%10; n=(n-t)/10; if(t==0)count=count+1; if(max<=t)max=t;} printf("count=%d,max=%d\n",count,max); } return1; } 5 程序填空,不要改变与输入输出有关的语句。 输入一个正整数repeat(0 已知等差数列的第一项a=2,公差d=3,输入一个给定的正整数m,请输出满足以下条件的所有前n项和sum: sum能被4整除且小于正整数m。 输出采用语句printf("%d",sum); 例如: 输入: 2(repeat=2) 100 300 输出: 40100 40100260 #include intmain() { inta,d,sum,n; intri,repeat; scanf("%d",&repeat); for(ri=1;ri<=repeat;ri++){ scanf("%d",&n); d=3;sum=2;a=2; while(sum<=n){ if((sum%4)==0)printf("%d",sum); a=a+d; sum=sum+a;} printf("\n"); } return1; } _ 6 程序填空,不要改变与输入输出有关的语句。 下面程序的功能是从键盘输入一个大写字母,要求按字母表顺序打印出3个相邻的字母,指定的字母在中间,若指定的字母是Z,则打印YZA,若为A打印ZAB。 输入一个正整数repeat(0 例: 输入: 2(repeat=2) X A 输出: WXY ZAB #include intmain() { chara[3],c; inti; intri,repeat; scanf("%d",&repeat); getchar(); for(ri=1;ri<=repeat;ri++){ c=getchar(); getchar(); a[0]=c-1;a[1]=c;a[2]=c+1; if(a[0]<'A')a[0]=a[0]+26; if(a[2]>'Z')a[2]=a[2]-26; for(i=0;i<3;i++) putchar(a[i]); printf("\n"); } return1; } 7 程序填空,不要改变与输入输出有关的语句。 输入一个正整数repeat(0 输入1个正整数n,将其转换为十二进制后输出。 规定十二进制的基本数码为0,1,2,3,4,5,6,7,8,9,10用A表示,11用B表示。 要求定义并调用函数dectotwe(n),它的功能是输出n的十二进制。 例如,调用dectotwe(10),输出A。 输出语句: printf("%d"); 例: 括号内是说明 输入: 2(repeat=2) 10 1234 输出: A 2322 #include"stdio.h" intmain() { intri,repeat; inti,n; voiddectotwe(intn); scanf("%d",&repeat); for(ri=1;ri<=repeat;ri++){ scanf("%d",&n); dectotwe(n); printf("\n"); } } voiddectotwe(intn) { inta[200]; inti,j; for(i=0;i if(n==0)break; a[i]=n%12; n=n/12;} for(j=i-1;j>=0;j--){ if(a[j]==10)printf("A"); elseif(a[j]==11)printf("B"); elseprintf("%d",a[j]);} } 8 程序填空,不要改变与输入输出有关的语句。 输入一个正整数repeat(0 输入1个正整数n,然后输入n个整数,输出其中所有素数的和,并输出最后的2个素数,不足2个素数则只输出素数的和。 例: 括号内是说明 输入: 2(repeat=2) 3-193 60100-451017 输出: 3 113 #include"stdio.h" #include"math.h" intmain() { intri,repeat; inti,j,n,m,s,a; scanf("%d",&repeat); for(ri=1;ri<=repeat;ri++){ scanf("%d",&n);s=0; while(n--){ scanf("%d",&m); if(m<=0)continue; for(j=2;j<=(m/2);j++){ if(m%j! =0)m=m; else{m=0;break;}} if(m! =0){if(s==0){s=s+m;i=a=m;} else{s=s+m;a=i;i=m;}} } printf("%d",s); if(s>=(a+i))printf("%d%d",a,i); printf("\n"); } } 9程序填空,不要改变与输入输出有关的语句。 输入一个正整数repeat(0 输入x,计算分段函数f(x)的值并输出(保留3位小数). 已知: f(x)=1(x==0) f(x)=x*x+1/x(x! =0) 例: 括号内是说明 输入: 2(repeat=2) 0 2 输出: 1.000 4.500 #include"stdio.h" intmain() { intri,repeat; floatx,y; scanf("%d",&repeat); for(ri=1;ri<=repeat;ri++){ scanf("%f",&x); /*---------*/
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 上机 编程