编写程序:用整数1-12依次表示1-12月,由键盘输入一个月份数,输出对应的季节。#include
using namespace std;
int jijie(int i){
if(i>=3&&i<=5)
cout<<"春季"< if(i>=6&&i<=8) cout<<"夏季"< if(i>=9&&i<=11) cout<<"秋季"< if(i=12||i<=2&&i>0) cout<<"冬季"< return 0; } int main(){ int n; cout<<"请输入你要知道的月份:"; cin>>n; jijie(n); return 0; } C#写一个程序,打印出九九乘法表。 for (int i = 1; i <= 9; i++) { for (int k = 1; k <= 9; k++) { if (k <= i) { int m = k * i; Response.Write("" + k + "*" + i + "=" + m + " "); if (k == i) { Response.Write(" } } } } 输出结果: 1*1=1 1*2=2 2*2=4 1*3=3 2*3=6 3*3=9 1*4=4 2*4=8 3*4=12 4*4=16 1*5=5 2*5=10 3*5=15 4*5=20 5*5=25 1*6=6 2*6=12 3*6=18 4*6=24 5*6=30 6*6=36 1*7=7 2*7=14 3*7=21 4*7=28 5*7=35 6*7=42 7*7=49 1*8=8 2*8=16 3*8=24 4*8=32 5*8=40 6*8=48 7*8=56 8*8=64 1*9=9 2*9=18 3*9=27 4*9=36 5*9=45 6*9=54 7*9=63 8*9=72 9*9=81 编一个C语言程序,倒序输出九九乘法表。 #include int main() { int i,j; for(i=9;i>0;i--) { for(j=1;j<=i;j++) { printf("%dx%d=%d ",j,i,i*j); } printf("\n"); } } #include void main() { int i,j; for(i=1;i<=9;i++) { for(j=1;j<=i;j++) printf("%dx%d=%-2d ",j,i,i*j); printf("\n"); } 不过要是把这个程序,在编一个程序两个可以组成一个正方形:#include void main() { int j,i; for(i=1;i<=9;i++) { for(j=1;j<=9;j++) if(j printf(" ");//7个空格 else printf("%d*%d=%-2d ",i,j,i*j); printf("\n"); } } C语言编程题 第三章:基本语句与顺序结构程序设计 1.输入一个小于10000的正整数,输出该整数各位上的数字各是多少? #include void mian( ) {int n,b1,b2,b3,b4; scanf(“%d”,&n); b1=n%10; n=n/10; b2=n%10; n=n/10 b3= n%10; n=n/10; b4=n%10; printf(“各位上的数字分别是:%d,%d,%d,%d\n”,b4,b3,b2,b1); } 2.将China译成Glmre。方法是:用原来的字母后面的第4个字母代替原来的字母。 #include void mian( ) {char c1=?C?,c2=?h?,c3=?i?,c4=?n?,c5=?a?; c1+=4; c2+=4; c3+=4; c4+=4; c5+=4; printf(“密码是:%c%c%c%c%c\n”,c1,c2,c3,c4,c5); } 3.把十进制数97转化为八进制、十六进制数。 #include void main {int dec=97; printf(“oct=%o\n”,dec); printf(“hex=%x\n”,dec) } 4.设圆半径r=1.5,圆柱高h=3,求圆周长、圆面积、圆球表面积、圆球体积、圆柱体积。 #include void main( ) {float pi=3.14,h ,r,l,s,sq,vq,vz; scanf(“%f%f,&r,&h); l=2*pi*r; s=pi*r*r; vq=3.0/4.0*pi*r*r*r; vz=pi*r*r*h; printf(“%f,%f,%f,%f,%f\n”,l,s,sq,vq,vz); } 5.已知三角形的三边长,求三角形的面积。 #include #include void main( ) {float a,b,c,s,area; scanf(“%f%f%f,&a,&b,&c); s=1.0/2*(a+b+c); area=sqrt(s*(s-a)*(s-b)*(s-c)); printf(“%f\n”,area); } 6.从键盘上输入一个大写字母,然后输出它的小写字母。 #include void main( ) {char c1,c2; c1=getchar( ); c2=c1+32; printf(“%c\n”,c2); } 7.输入三个字母m,a,n,并以”man”和man的竖排列形式输出。 #include void main( ) {char c1,c2,c3; c1=getchar( ); c2=getchar( ); c3=getchar( ); putchar(c1); putchar(c2); putchar(c3); putchar(…\n?); putchar(c1); putchar(…\n?); putchar(c2); putchar(…\n?); putchar(c3); putchar(…\n?); } 8.输入一个字符,找出它的前一个字符和后一个字符,并根据ASCII值,按从小到大的顺 序输出这三个字符及其ASCII值。 #include void main( ) {char c1,c,c2; c=getchar( ); c1=c-1; c2=c+1; printf(“%c,%c,%c\n”,c1,c,c2); printf(“%d,%d,%d\n”,c1,c,c2); } 9.鸡兔同笼。已知鸡兔总头数为h(设为30),总脚数为f(设为90),求鸡兔各几只? #include void main( ) {int h=30,f=90,x,y; x=(4*h-f)/2; y=(f-2*h)/2; printf(“鸡%d只,兔%d只\n”,x,y); } 10.输入一个三位正整数,然后反向输出对应的数。如输入321,则输出123。 #include void main( ) {int n,i,j,k,m; scanf(“%d”,&n); i=n/100; m=n-100*i; m=m-10*j; k=m; m=100*k+10*j+i; printf(“%f\n”,c); } 11.输入一个华氏温度f,将它转换成摄氏温度c输出。转换公式:c=5/9*(f-32) #include void main( ) {float f,c; scanf(“%f”,&f); c=5.0/9*(f-32); printf(“%f\n,c); } 12.编程计算方程ax*x+bx+c=0的根,假设b*b-4ac>0. #include #include V oid main( ) {float a,b,c,disc,x1,x2,p,q; Scanf(“%f%f%f,&a,&b,&c); } dise=b*b-4*a*c; p=-b/(2*a); q=sqrt(dise)/(2*a); x1=p+q; x2=p-q; printf(“x1=%f,x2=%f”,x1,x2); } 13.用getchar函数读入两个字符c1,c1,然后分别用putchar函数和printf函数输出。 #include void main( ) {char c1,c2; c1=getchar( ); c2=getchar( ); putchar(c1);; putchar(c2); printf(“\n”); printf(“%c,%c\n”,c1,c2); } 第四章:选择结构程序设计 1.输入三个整数x,y,z,请把这三个数由小到大输出。 #include void main( ) {int x,y,z,t; scanf("%d%d%d",&x,&y,&z); {t=x;x=y;y=t;} if(x>z) {t=z;z=x;x=t;} if(y>z) {t=y;y=z;z=t;} printf("small to big: %d %d %d\n",x,y,z); } 2.当年收入超过1600元时,超过部分交税款20%。试编写一程序计算税款(其中月收入有键盘输入)。 #include { float x,y; scantf("%f",&x); if(x<=1600)y=0; else y=(x-1600)*.2; printf("tax:y=%f\n",y); } 3.输入某年某月某日,判断这一天是这一年的第几天? #include void main() { int day,month,year,sum,leap; printf("\nplease input year,month,day\n"); scanf("%d,%d,%d",&year,&month,&day); switch(month) { case 1:sum=0;break; case 2:sum=31;break; case 3:sum=59;break; case 4:sum=90;break; case 5:sum=120;break; case 6:sum=151;break; case 7:sum=181;break; case 8:sum=212;break; case 9:sum=243;break; case 10:sum=273;break; case 11:sum=304;break; case 12:sum=334;break; default:printf("data error");break; } sum=sum+day; if(year%400==0||(year%4==0&&year%100!=0)) leap=1; else leap=0; if(leap==1&&month>2) sum++; printf("It is the %dth day.",sum); } 4. 计算 y={3x+6 :x>=0 -x*x+2x-8; x<0} #include void main() { float x,y; printf("送数%%f:\n"); scanf("%f",&x); if(x>=0) y=3*x+6; else y= -x*x+2*x-8; printf("y=%.2f\n",y); } 5.为优惠顾客,商店对购货在1000元和1000元以上的,八折优惠;500元以上,1000元以下的,九折,200元以上,500以下的,九五折,100元以上,200元以下,九七折;100元以下的不优惠。请输入购货款后,打印出该交的货款。 #include main( ) { float x,y; scanf(“%f”,&x); if(x<100)y=x; else if(x>=100&&x<200)y=.97*x; else if(x>=200&&x<500)y=.95*x; else if(x>=500&&x<1000)y=.9*x; else y=.8*x; printf(“all=%.2f”,y); } 6第一象限,第二象限…… #include #include main( ) { float x,y,z; scanf(“%f%f”,&x,&y); if(x>0&&y>0) z=log(x)+log(y); else if(x<0&&y>0) z=sin(x)+cos(y); else if(x<0&&y<0) z=exp(2*x)+exp(3*y); else z=tan(x+y); printf(“%f\n”,z); } 7电报计费规则:若为普通电报,每个字0.75元,如不足10个字,按10个字计算;若为加急电报,则加上一个字,再加倍收费。键盘输入报文数字。 #include main( ) {int x,y; float s; printf(“input\n”); scanf(“%d%d”,&x,&y); if(y=1) if(x<=10) s=.75; else s=.075*x; else s=(x+1)*2*0.075; printf(“s=%f\n”,s); } 8输入班号,输出该班学生人数。(用switch语句编程) 班号21 22 23 24 25 26 人数45 51 48 46 48 52 #include void main( ) {int a; scanf(“%d”,&a); switch(a) { case 21:printf(“=45\n”);break; case 22:printf(“=51\n”);break; case 23:printf(“=48\n”);break; case 24:printf(“=46\n”);break; case 25:printf(“=48\n”);break; case 26:printf(“=52\n”);break; defaut:printf(wrong\n”); } 9.已知银行整存整取存款不同期限的月息利率分别为: 月息利率=0.63% 期限一年 0.66% 期限二年 0.69% 期限三年 0.75% 期限五年 0.84% 期限八年 要求输入存钱的本金和期限,球到期时能从银行得到的利息和本金的合计。 #include void main( ) { float m,t; int y; scanf(“%f%d,&m,&r); switch(y) { case1:t=m*(1+0.0063*12);break; case2:t=m*(1+0.0066*12*2);break; case3:t=m*(1+0.0069*12*3);break; case5:t=m*(1+0.0075*12*5);break; case8:t=m*(1+0.0084*12*8);break; defaut:printf(“error\n”); } printf(“%f\n,t); } 10. 企业发放的奖金根据利润提成。利润(I)低于或等于10万元时,奖金可提10%;利润高 于10万元,低于20万元时,低于10万元的部分按10%提成,高于10万元的部分,可可提 成7.5%;20万到40万之间时,高于20万元的部分,可提成5%;40万到60万之间时高于 40万元的部分,可提成3%;60万到100万之间时,高于60万元的部分,可提成1.5%,高于 100万元时,超过100万元的部分按1%提成,从键盘输入当月利润I,求应发放奖金总数?-#include "stdio.h" #include "conio.h" main() { long int i; int bonus1,bonus2,bonus4,bonus6,bonus10,bonus; scanf("%ld",&i); bonus1=100000*0. 1; bonus2=bonus1+100000*0.75; bonus4=bonus2+200000*0.5; bonus6=bonus4+200000*0.3; bonus10=bonus6+400000*0.15; if(i<=100000) bonus=i*0.1; else if(i<=200000) bonus=bonus1+(i-100000)*0.075; else if(i<=400000) bonus=bonus2+(i-200000)*0.05; else if(i<=600000) bonus=bonus4+(i-400000)*0.03; else if(i<=1000000) bonus=bonus6+(i-600000)*0.015; else bonus=bonus10+(i-1000000)*0.01; printf("bonus=%d",bonus); getch(); } 第五章:循环结构程序设计 1.任意输入N个数,计算它们的和、积及和的平均值。 #define N6 #include void main( ) {int I,a,s=0,m=1; float ave; printf(“Input the number:”); for(i=0;i {scanf(“%d”,&a); s=s+a; m=m*a; } ave=s/N; printf(“和为:%d 积为:%d 平均值为:%f”,s,m,ave); } 2. 求1+2!+3!+...+20!的和 #include "stdio.h" #include "conio.h" main() { float n,s=0,t=1; for(n=1;n<=20;n++) { t*=n; s+=t; } printf("1+2!+3!...+20!=%e\n",s); getch(); } 3.求1+2+……+100+(1*1+2*2+3*3+……+50*50)+(1/1+1/2+1/3……+1/10) #include void main( ) {int i,j,k,sl=0; double s2=0,s3=0,sum; for(i=1;i<=100;i++)s1+=i; for(j=1;j<=50;j++)s2+=j*j; for(k=1;k<=10;k++)s3+=1/(float)k; sum=s1+s2+s3; printf(“sum=%f”,sum); } 4.任意输入N个数,统计其中正数、负数和零的个数。 #define N 10 #include void main( ) {int i,p=0,n=0,z=0,num; printf(“please input num:”); for(i=0;i {scanf(“%d”,&num); if(num>0)p++; else if(num<0) n++; else z++; } printf(“/n正数有%d个,负数有%d个,零有%d个,p,n,z); } 5.在1——500中,找出所有能同时满足用3除余2,用5除余3,用7除余4的所有整数。#include void main( ) {int i; for(i=1;i<=500;i++) {if((i%3)==2&&(i%5)==3&&(i%7)==4) printf(“%d”,i); } } 6. 打印出所有的“水仙花数”,所谓“水仙花数”是指一个三位数,其各位数字立方和等于该数 本身。例如:153是一个“水仙花数”,因为153=1的三次方+5的三次方+3的三次方 #include void main( ) { int i,j,k,n; printf("'water flower'number is:"); for(n=100;n<1000;n++) { i=n/100;/*分解出百位*/ j=n/10%10;/*分解出十位*/ k=n%10;/*分解出个位*/ if(i*100+j*10+k==i*i*i+j*j*j+k*k*k) printf("%-5d",n); } printf(“\n”); } 7.任意输入一串字符,以‘?’结束,分别统计其中字母、数字其他字符的个数 #include main( ) {char c; int letters=0,space=0,digit=0,others=0; printf(“please input some characters\n”); while((c=getchar( ))!=?\n?) {if(c>=?a?&&c<=?z?||c>=?A?&&c<=?Z?) letters++; space++; else if(c>=?0?&&c<=9) digit++ else others++; } printf(“all in all:char=%d space=%d digit=%d others=%d\n”,letters,space,digit,others); } 8求s=a+aa+aaa+aaaa+aa...a的值,其中a是一个数字。例如2+22+222+2222+22222(此时共有5个数相加),几个数相加有键盘控制。 #include void main( ) { int a,n,count=1; long int sn=0,tn=0; printf("please input a and n\n"); scanf("%d,%d",&a,&n); printf("a=%d,n=%d\n",a,n); while(count<=n) { sn=sn+tn; a=a*10; ++count; } printf("a+aa+...=%ld\n",sn); } 9.猴子吃桃问题:猴子第一天摘下若干个桃子,当即吃了一半,还不瘾,又多吃了一个 第二天早上又将剩下的桃子吃掉一半,又多吃了一个。以后每天早上都吃了前一天剩下的一半零一个。到第5天早上想再吃时,见只剩下一个桃子了。求第一天共摘了多少。 #include void main( ) { int day,x1,x2; day=5; x2=1; while(day>0) { x1=(x2+1)*2;/*第一天的桃子数是第2天桃子数加1后的2倍*/ x2=x1; } printf("the total is %d\n",x1); } 10有1、2、3、4个数字,能组成多少个互不相同且无重复数字的三位数?都是多少?#include void main( ) { int i,j,k; printf("\n"); for(i=1;i<5;i++) /*以下为三重循环*/ for(j=1;j<5;j++) for (k=1;k<5;k++) { if (i!=k&&i!=j&&j!=k) /*确保i、j、k三位互不相同*/ printf("%d,%d,%d\n",i,j,k); } } 11将一个正整数分解质因数。例如:输入90,打印出90=2*3*3*5。 #include void main( ) { int n,i; printf("\nplease input a number:\n"); scanf("%d",&n); printf("%d=",n); for(i=2;i<=n;i++) while(n!=i) { if(n%i==0) { printf("%d*",i); n=n/i; } else break; } printf("%d",n); } 12. 输入两个正整数m和n,求其最大公约数和最小公倍数。#include void main( ) { int a,b,num1,num2,temp; printf("please input two numbers:\n"); scanf("%d,%d",&num1,&num2); if(num1 { temp=num1; num1=num2; num2=temp; } a=num1;b=num2; while(b!=0)/*利用辗除法,直到b为0为止*/ { temp=a%b; a=b; b=temp; } printf("gongyueshu:%d\n",a); printf("gongbeishu:%d\n",num1*num2/a); } 13一球从100米高度自由落下,每次落地后反跳回原高度的一半;再落下,求它在第10次落地时,共经过多少米?第10次反弹多高? #include
");