C语言程序设计 翁恺 中M2020春C入门练习第I段——变量、表达式、分支、循环 (2021/09/25 更新:AC代码 翻新至78题)
入门练习
- 第一段:变量、表达式、分支、循环
- 1. 重要的话说三遍
- 2. I Love GPLT
- 3. 输出带框文字
- 4. 输出菱形图案
- 5. 输出倒三角图案
- 6. 厘米换算英尺英寸
- 7. 计算摄氏温度
- 8. 是不是太胖了
- 9. 求整数均值
- 10. 算术入门之加减乘除
- 11. 计算平均分
- 12. 日期格式化
- 13. 后天
- 14. 然后是几点
- 15. BCD解密
- 16. 计算符号函数的值
- 17. 成绩转换
- 18. 出租车计价
- 19. 计算天数
- 20. 简单计算器
- 21. 超速判断
- 22. 用天平找小球
- 23. 分段计算居民水费
- 24. 猜数字游戏
- 25. 求奇数和
- 26. 最大公约数和最小公倍数
- 27.兔子繁衍问题
- 28. 求整数的位数及各位数字之和
- 29. 二分法求多项式单根
- 30. 念数字
- 31. 掉入陷阱的数字
- 32. 求交错序列前N项和
- 33. 统计素数并求和
- 34. 求分数序列前N项和
- 35. 猴子吃桃问题
- 36. 韩信点兵
- 37. 输出整数各位数字
- 38. 支票面额
- 39. 龟兔赛跑
- 40. 到底是不是太胖了
- 41. 计算阶乘和
- 42. 整除光棍
- 43. Shuffling Machine
- 44. 黑洞数
- 45. 找完数
- 46. 爬动的蠕虫
- 47. 二进制的前导的零
- 48. 求组合数
- 49. Have Fun with Numbers
- 50. 输出华氏-摄氏温度转换表
- 51. 求奇数分之一序列前N项和
- 52. 求简单交错序列前N项和
- 53. 生成3的乘方表
- 54. 求阶乘序列前N项和
- 55. 查询水果价格
- 56. 求给定精度的简单交错序列部分和
- 57. 求e的近似值
- 58. 求幂级数展开的部分和
- 59. 打印菱形图案
- 60. Welcome to You!
- 61. Programming in C is fun!
- 62. 计算物体自由下落的距离
- 63. 高空坠球
- 64. 统计大写辅音字母
- 65. 字符串替换
- 66. 时间换算
- 67. What is a computer?
- 68. 求N分之一序列前N项和
- 69. 换硬币
- 70. 输出三角形面积和周长
- 71. 求平方与倒数序列的部分和
- 72. 三天打鱼两天晒网
- 73. 比较大小
- 74. 三角形判断
- 75. 整数152的各位数字
- 76. 计算分段函数[3]
- 77. 求1到100的和
- 78. 计算油费
第一段:变量、表达式、分支、循环
1. 重要的话说三遍
#include <stdio.h>
int main(){int i;for(i=0;i<3;++i){printf("I'm gonna WIN!\n");}return 0;
}
2. I Love GPLT
#include <stdio.h>
int main(){printf("I\n \nL\no\nv\ne\n \nG\nP\nL\nT\n");return 0;
}
3. 输出带框文字
#include <stdio.h>
int main(){printf("************\n Welcome\n************");return 0;
}
4. 输出菱形图案
#include <stdio.h>
int main(){printf(" A\nA A\n A\n");return 0;
}
5. 输出倒三角图案
#include <stdio.h>
int main(){printf("* * * *\n * * *\n * *\n *\n");return 0;
}
6. 厘米换算英尺英寸
#include <stdio.h>
int main(){int cm,foot,inch;scanf("%d",&cm);inch=(int)(cm*1.0/30.48*12)%12;foot=(int)(cm*1.0/30.48*12)/12;printf("%d %d",foot,inch);return 0;
}
7. 计算摄氏温度
#include <stdio.h>
int main(){int F,C;scanf("%d",&F);printf("Celsius = %d",5*(F-32)/9);return 0;
}
8. 是不是太胖了
#include <stdio.h>
int main(){int H;scanf("%d",&H);double weight;weight = (H-100)*0.9*2;printf("%.1f",weight); return 0;
}
9. 求整数均值
#include <stdio.h>
int main(){int i,num=0,sum=0;for(i=0;i<4;++i){scanf("%d",&num);sum+=num;}printf("Sum = %d; Average = %.1f",sum,sum*1.0/4.0); return 0;
}
10. 算术入门之加减乘除
#include<stdio.h>
int main(){int a,b;double c;scanf("%d %d",&a,&b);c=1.0*a/b;if(a%b==0) printf("%d + %d = %d\n%d - %d = %d\n%d * %d = %d\n%d / %d = %d\n",a,b,a+b,a,b,a-b,a,b,a*b,a,b,(int)c);else printf("%d + %d = %d\n%d - %d = %d\n%d * %d = %d\n%d / %d = %.2f\n",a,b,a+b,a,b,a-b,a,b,a*b,a,b,c);return 0;
}
11. 计算平均分
#include<stdio.h>
int main(){int math=87,eng=72,comp=93;double average=0;average=(math+eng+comp)*1.0/3;printf("math = 87, eng = 72, comp = 93, average = %.0lf\n",average);return 0;
}
12. 日期格式化
#include<stdio.h>
int main(){int y,m,d;scanf("%d-%d-%d",&m,&d,&y);printf("%d-%02d-%02d",y,m,d);return 0;
}
13. 后天
#include<stdio.h>
int main(){int day,result;scanf("%d",&day);if(day>=1&&day<=5)result=day+2;else result=(day+2)%7;printf("%d",result);return 0;
}
14. 然后是几点
#include<stdio.h>
int main(){int t1,perid,h1,m1,h2,m2,temp;scanf("%d %d",&t1,&perid);h1=t1/100;m1=t1%100;temp=h1*60+m1;temp+=perid;h2=temp/60;m2=temp%60;printf("%d%02d",h2,m2);//注意这里分钟保证为输出两字符用%02d表示return 0;
}
15. BCD解密
#include<stdio.h>
int main(){int x,a,b;scanf("%d",&x);a=x/16;b=x%16;if(b>=10&&b<16){a+=1;b-=10;}printf("%d",a*10+b);return 0;
}
16. 计算符号函数的值
#include<stdio.h>
int main(){int n,sign;scanf("%d",&n);if(n<0)sign=-1;else if(n==0)sign=0; else sign=1;printf("sign(%d) = %d",n,sign);return 0;
}
17. 成绩转换
#include<stdio.h>
int main(){int scores;char res;scanf("%d",&scores);if(scores>=90)res='A';else if(scores>=80)res='B';else if(scores>=70)res='C';else if(scores>=60)res='D';else res='E';printf("%c",res);return 0;
}
18. 出租车计价
#include <stdio.h>int main()
{double p, sum = 0;int t;scanf("%lf %d", &p, &t);if (p <= 3)sum += 10;else if (p <= 10)sum = 10 + (p - 3) * 2;elsesum = 24 + (p - 10) * 3;sum += (t / 5) * 2;printf("%.0lf", sum);return 0;
}
19. 计算天数
#include <stdio.h>
int main()
{int a[12]={31,28,31,30,31,30,31,31,30,31,30,31};int y,m,d,sum=0,i;scanf("%d/%d/%d",&y,&m,&d);for(i=0;i<m-1;++i)sum+=a[i];sum+=d;if((y%4==0&&y%100!=0||y%400==0)&&m>2)sum+=1;printf("%d",sum);return 0;
}
20. 简单计算器
这是我的解法,相对复杂,推荐我解法后面的解法
#include <stdio.h>
int main()
{char ch[100];scanf("%s",ch);int i=0,res=0,flag=-1,sum,num1,num2,fh;
//num1与num2为操作数,sum为每个整数(用于计算超过两位数的数据),flag=-1则需要计算num1,flag=0则考虑符合,flag=1则计算num2while(ch[i]!='='){if(flag&&ch[i]>='0'&&ch[i]<='9'){sum=0;while(ch[i]>='0'&&ch[i]<='9'){sum*=10;sum+=ch[i]-'0';++i;}if(flag==-1)num1=sum;else if(flag==1){num2=sum;switch (fh){case 1:num1=num1+num2;break;case 2:num1=num1-num2;break;case 3:num1=num1*num2;break;case 4:if(num2)num1=num1/num2;elseflag=-100;break;}}if(flag==-100)break;flag=0;}if(flag==0&&ch[i]!='='){switch (ch[i]){case '+':fh=1;break;case '-':fh=2;break;case '*':fh=3;break;case '/':fh=4;break;default :flag=-100;}if(flag==-100){break;}++i;flag=1;}}if(flag!=-100)printf("%d",num1);else{printf("ERROR");}return 0;
}
简单计算器 https://zhuanlan.zhihu.com/p/116734673
#include <stdio.h>
int main()
{int sum,a;char c;scanf("%d",&sum);while(scanf("%c",&c)){switch(c){case '+':scanf("%d",&a);sum+=a;break;case '-':scanf("%d",&a);sum-=a;break;case '*':scanf("%d",&a);sum*=a;break;case '/':scanf("%d",&a);if(a==0){printf("error");return 0;}else{sum/=a;break; }case '=':printf("%d",sum);return 0;default :printf("error");return 0;}}return 0;
}
21. 超速判断
#include <stdio.h>
int main()
{int v;scanf("%d",&v);if(v<=60)printf("Speed: %d - OK",v);else printf("Speed: %d - Speeding",v);return 0;
}
22. 用天平找小球
#include <stdio.h>
int main()
{int a,b,c;scanf("%d %d %d",&a,&b,&c);if(a==b)printf("C");else if(a==c)printf("B");else printf("A");return 0;
}
23. 分段计算居民水费
#include <stdio.h>
int main()
{int x;double y;scanf("%d",&x);if(x<=15)y=4.0*x/3;else y=2.5*x-17.5;printf("%.2lf",y);return 0;
}
24. 猜数字游戏
#include<stdio.h>int main()
{int sc,n,num,cnt=0;scanf("%d %d",&sc,&n);while(scanf("%d",&num),num>=0){++cnt;if(cnt>n)break;if(sc==num)break;else if(num>sc)printf("Too big\n");else if(num<sc)printf("Too small\n");}if(cnt<=n&&sc==num){if(cnt==1)printf("Bingo!\n");else if(cnt<=3)printf("Lucky You!\n");elseprintf("Good Guess!\n");}else{printf("Game Over\n");}return 0;
}
25. 求奇数和
#include <stdio.h>
int main()
{int sum=0,a;scanf("%d",&a);while(a>0){if(a%2)sum+=a;scanf("%d",&a);}printf("%d",sum);return 0;
}
26. 最大公约数和最小公倍数
#include <stdio.h>
int main()
{int a,b,ji;scanf("%d %d",&a,&b);ji=a*b;while(a%b){int temp;temp=b;b=a%b;a=temp;}printf("%d %d",b,ji/b);return 0;
}
27.兔子繁衍问题
#include<stdio.h>int main()
{int N,fib[2]={1,1},cnt=1;scanf("%d",&N);while(N>fib[(cnt-1)%2]){fib[(cnt-1)%2]=fib[0]+fib[1];++cnt;}printf("%d",cnt);return 0;
}
28. 求整数的位数及各位数字之和
#include <stdio.h>
int main()
{int number,sum=0,count=0;scanf("%d",&number);while(number>0){sum+=number%10;count++;number/=10;}printf("%d %d",count,sum);return 0;
}
奇技淫巧
#include <stdio.h>
int main()
{int number,sum=0,count=0;while(scanf("%1d",&number)!=EOF){sum+=number;count++;}printf("%d %d",count,sum);return 0;
}
29. 二分法求多项式单根
#include <stdio.h>double a3,a2,a1,a0;
double a,b;double f(double x){return a3*x*x*x+a2*x*x+a1*x+a0;
}int main()
{scanf("%lf %lf %lf %lf",&a3,&a2,&a1,&a0);scanf("%lf %lf",&a,&b);double temp=(a+b)/2;int flag=f(a)>0?1:-1;while(b-a>1e-4){if(f(temp)==0)break;if(flag*f(temp)>0)a=temp;else if(flag*f(temp)<0)b=temp;temp = (a+b)/2;}printf("%.2lf",temp);return 0;
}
30. 念数字
#include <stdio.h>int main()
{char ch;int judge=0;do{scanf("%c",&ch);if(judge&&ch!='\n')printf(" ");judge=1;if(ch=='-')printf("fu");else {switch(ch){case '0':printf("ling");break;case '1':printf("yi");break;case '2':printf("er");break;case '3':printf("san");break;case '4':printf("si");break;case '5':printf("wu");break;case '6':printf("liu");break;case '7':printf("qi");break;case '8':printf("ba");break;case '9':printf("jiu");break;}}}while(ch!='\n');return 0;
}
31. 掉入陷阱的数字
#include <stdio.h>int main()
{int N,sum,count=1;scanf("%d",&N);do{sum=0;int temp=N;do{sum+=temp%10;temp/=10;}while(temp);if(N!=3*sum+1){N=3*sum+1;printf("%d:%d\n",count,N);++count;}else{printf("%d:%d",count,N);break;}}while(1);return 0;
}
32. 求交错序列前N项和
#include <stdio.h>int main()
{double sum=1,k=-1.0;int n,i;scanf("%d",&n);for(i=2;i<=n;++i){sum+=k*i/(2*i-1);k=-k;}printf("%.3lf",sum);return 0;
}
33. 统计素数并求和
#include <stdio.h>int main()
{int m,n,i,j,num=0,sum=0;scanf("%d %d",&m,&n);if(m==0&&n==0)printf("0 0");else{if(m==1)++m;for(i=m;i<=n;++i){int count=0;for(j=2;j<i;++j){if(i%j==0)count++;}if(count==0){num++;sum+=i;}}}printf("%d %d",num,sum);return 0;
}
34. 求分数序列前N项和
#include <stdio.h>
int main()
{long long n;scanf("%lld",&n);double a=2,b=1;double sum=0;for(long long i=0;i<n;++i){sum+=(a*1.0)/b;double tmp=a;a=a+b;b=tmp;}printf("%.2lf",sum);return 0;
}
35. 猴子吃桃问题
#include <stdio.h>
int main()
{int n;scanf("%d",&n);int num=1;for(int i=0;i<n-1;++i){num=(num+1)*2;}printf("%d",num);return 0;
}
36. 韩信点兵
#include <stdio.h>
int main()
{int i=1,n;while(1){n=11*i+10;if(n%7==4&&n%6==5&&n%5==1){printf("%d",n);break;}++i;}return 0;
}
37. 输出整数各位数字
奇技淫巧
#include <stdio.h>
int main()
{int n;while(scanf("%1d",&n)!=EOF){printf("%d ",n);}return 0;
}
38. 支票面额
#include <stdio.h>
int main()
{int y,f,n,flag=1;scanf("%d",&n);for(y=0;y<50;++y){for(f=2*y+1;f<100;++f)if(f*98-y*199==n){printf("%d.%d",y,f);flag=0;break; }}if(flag)printf("No Solution");return 0;
}
39. 龟兔赛跑
#include <stdio.h>
int main()
{int T,s;scanf("%d",&T);int t1=T/90,t2=T%90;if(t2==0||t2==30||t2==45||t2==60){printf("-_- %d",t1*270+t2*3);}else if((t2>0&&t2<30)||(t2>45&&t2<60)){printf("^_^ ");if(t2<10)printf("%d",t1*270+t2*9);else if(t2<30)printf("%d",t1*270+10*9);else if(t2<50)printf("%d",t1*270+135+(t2-45)*9);else if(t2<60)printf("%d",t1*270+180);}elseprintf("@_@ %d",3*T);return 0;
}
40. 到底是不是太胖了
#include <stdio.h>
int main()
{int n;int h,w;double d;scanf("%d",&n);for(int i=0;i<n;++i){scanf("%d %d",&h,&w);d=(h-100)*0.9*2;if( d>=w&&d-w < d*0.1 || d<w&&w-d < d*0.1 )printf("You are wan mei!\n");else if(w-d+d*0.1<1e-4)printf("You are tai shou le!\n");else if(w-d-1*d*0.1>-1e-4)printf("You are tai pang le!\n");}return 0;
}
41. 计算阶乘和
#include <stdio.h>
int main()
{int i,N,sum=0,jc=1;scanf("%d",&N);for(i=1;i<=N;++i){jc*=i;sum+=jc;}printf("%d",sum);return 0;
}
42. 整除光棍
#include <stdio.h>
#include<string.h>
int main()
{int n,cnt=0,flag=1,num=1,t;scanf("%d",&n);while(1){t=num/n;if(flag&&t==0);else{flag=0;printf("%d",t);}++cnt;if(num%n)num=(num%n)*10+1;else{printf(" %d",cnt);break;}}return 0;
}
43. Shuffling Machine
奇技淫巧
#include <stdio.h>
#include<string.h>
int main()
{int a[55],b[55],c[55];for(int i=0;i<55;++i){scanf("%d",&a[i]);c[i]=b[i]=i;}char ch[54][4]={"S1","S2","S3","S4","S5","S6","S7","S8","S9","S10","S11","S12","S13",
"H1","H2","H3","H4","H5","H6","H7","H8","H9","H10","H11","H12","H13",
"C1","C2","C3","C4","C5","C6","C7","C8","C9","C10","C11","C12","C13",
"D1","D2","D3","D4","D5","D6","D7","D8","D9","D10","D11","D12","D13","J1","J2"};for(int i=1;i<55;++i){int pos=i;for(int j=0;j<a[0];++j){pos=a[pos];}b[pos]=i;}for(int j=1;j<55;++j){if(j!=1)printf(" ");printf("%s",ch[b[j]-1]);}return 0;
}
44. 黑洞数
#include <stdio.h>int cha(int k,int *min,int *max){int a[3],i,j;for(i=0;i<3;++i){a[i]=k%10;k/=10;}for(i=3;i>0;--i){for(j=0;j<i-1;++j){if(a[j]>a[j+1]){int temp=a[j];a[j]=a[j+1];a[j+1]=temp;}}}*min=100*a[0]+10*a[1]+a[2];*max=100*a[2]+10*a[1]+a[0];int t=*max-*min;return t;
}int main(){int k,min=0,max=0,res;scanf("%d",&k);int cnt=0;if(k==495){++cnt;k=cha(k,&min,&max);printf("%d: %d - %d = %d\n",cnt,max,min,k);}elsewhile(k!=495){++cnt;k=cha(k,&min,&max);printf("%d: %d - %d = %d\n",cnt,max,min,k);}return 0;
}
45. 找完数
#include <stdio.h>int wanshu(int num,int a[]){int i,sum=0,j=0,flag=0;for(i=1;i<num;++i){if(num%i==0){a[j]=i;++j;sum+=i;}}if(sum==num)flag=1;return flag;
}int main(){int n,m,a[1500]={0},i,j,cnt=0;scanf("%d %d",&m,&n);for(i=m;i<=n;++i){if(wanshu(i,a)){++cnt;printf("%d = ",i);for(j=0;a[j]!=0;++j){printf("%d",a[j]);if(a[j+1]!=0)printf(" + ");}printf("\n");}for(j=0;j<50;++j){a[j]=0;}}if(!cnt)printf("None");return 0;
}
46. 爬动的蠕虫
#include <stdio.h>int main(){int n,u,d,l=0,t=0;scanf("%d %d %d",&n,&u,&d);while(l<n){l+=u;t+=1;if(l>=n)break;t+=1;l-=d;}printf("%d",t);return 0;
}
47. 二进制的前导的零
#include <stdio.h>int main(){int n,cnt=0;scanf("%d",&n);if(n<0)printf("0");else{while(n){++cnt;n/=2;}printf("%d",32-cnt);}return 0;
}
48. 求组合数
奇技淫巧
#include <stdio.h>int main(){int m,n;double res=1;scanf("%d %d",&m,&n);for(int i=0;i<m;++i){res*=(n-i)*1.0/(m-i);}printf("result = %.lf",res);return 0;
}
49. Have Fun with Numbers
#include <stdio.h>
#include<string.h>
int main(){char ch[21],res[22];int a[10]={0};scanf("%s",ch);int len=strlen(ch),flag=0,jw=0,t;for(int i=len-1;i>=0;--i){t=(ch[i]-'0')*2+jw;jw=0;if(t>9)jw=1;res[i+1]='0'+t%10;++a[ch[i]-'0'];}if(jw==1){res[0]='1';++a[1];}else{res[0]='0';flag=1;}++len;for(int i=flag;i<len;++i){--a[res[i]-'0'];}int jd=1;for(int i=0;i<10;++i){if(a[i]){jd=0;break;}}if(jd)printf("Yes\n");elseprintf("No\n");for(int i=flag;i<len;++i)printf("%c",res[i]);return 0;
}
50. 输出华氏-摄氏温度转换表
#include<stdio.h>
int main(){int lower,upper;double cel;scanf("%d %d",&lower,&upper);if(lower<=upper){printf("fahr celsius\n");for(int i=lower;i<=upper;i+=2){cel=5.0*(i-32)/9;printf("%d%6.1lf\n",i,cel);}}else{printf("Invalid.");}return 0;
}
51. 求奇数分之一序列前N项和
#include<stdio.h>
int main(){int n;scanf("%d",&n);double sum=0;for(int i=0;i<n;++i){sum+=1.0/(i*2+1);}printf("sum = %.6lf",sum);return 0;
}
52. 求简单交错序列前N项和
#include<stdio.h>
int main(){int n,k=1;scanf("%d",&n);double sum=0;for(int i=0;i<n;++i){sum+=1.0*k/(i*3+1);k=-k;}printf("sum = %.3lf",sum);return 0;
}
53. 生成3的乘方表
#include<stdio.h>
int main(){int n;long long t=1;scanf("%d",&n);for(int i=0;i<=n;++i){printf("pow(3,%d) = %lld\n",i,t);t*=3;}return 0;
}
54. 求阶乘序列前N项和
#include<stdio.h>
int main(){int n;long long t=1,sum=0;scanf("%d",&n);for(int i=1;i<=n;++i){t*=i;sum+=t;}printf("%lld",sum);return 0;
}
55. 查询水果价格
#include<stdio.h>
int main(){printf("[1] apple\n[2] pear\n[3] orange\n[4] grape\n[0] exit\n");char ch[4][7]={"apple","pear","orange","grape"};double a[4]={3.00,2.50,4.10,10.20};int i,t;for(i=0;i<5;++i){scanf("%d",&t);if(t==0)break;else{printf("price = %.2lf\n",a[t-1]);}}return 0;
}
56. 求给定精度的简单交错序列部分和
#include<stdio.h>
int main(){double x,sum;scanf("%lf",&x);int i=1,k=1;while(1){sum+=k*1.0/i;if(1.0/i<=x)break;i+=3;k=-k;}printf("sum = %.6lf",sum);return 0;
}
57. 求e的近似值
#include<stdio.h>int main()
{int n;scanf("%d",&n);double jc=1.0,sum=1;for(int i=1;i<=n;++i){jc/=i;sum+=jc;}printf("%.8lf",sum);return 0;
}
58. 求幂级数展开的部分和
#include<stdio.h>
int main()
{double x,t,sum=1;scanf("%lf",&x);t=x;int i=1;while(t>=0.00001||t<=-0.00001){sum+=t;++i;t*=x*1.0/i;}sum+=t;printf("%.4lf",sum);return 0;
}
59. 打印菱形图案
#include<stdio.h>
int main()
{int n;scanf("%d",&n);for(int i=0;i<(n+1)/2;++i){for(int j=n-2-i*2;j>=0;--j){printf(" ");}for(int j=0;j<2*i+1;++j){printf("* ");}printf("\n");}for(int i=0;i<n/2;++i){for(int j=0;j<i+1;++j){printf(" ");}for(int j=(n-i*2-2);j>0;--j){printf("* ");}printf("\n");}return 0;
}
60. Welcome to You!
#include<stdio.h>
int main()
{printf("Welcome to You!");return 0;
}
61. Programming in C is fun!
#include<stdio.h>
int main()
{printf("Programming in C is fun!");return 0;
}
62. 计算物体自由下落的距离
#include<stdio.h>
int main()
{printf("height = %.2lf",10.0*3*3/2);return 0;
}
63. 高空坠球
#include<stdio.h>
int main()
{int h,n,i;scanf("%d %d",&h,&n);double sum=h,t=h;for(int i=0;i<n-1;++i){sum+=t;t/=2;}if(n)printf("%.1lf %.1lf",sum,t/2);elseprintf("0.0 0.0");
}
64. 统计大写辅音字母
#include<stdio.h>
#include<string.h>int main()
{int cnt=0,i;char ch[81];scanf("%[^\n]",ch);int len=strlen(ch);for(int i=0;i<=len;++i){if(ch[i]>'A'&&ch[i]<='Z'&&ch[i]!='E'&&ch[i]!='O'&&ch[i]!='U'&&ch[i]!='I')++cnt;}printf("%d",cnt);return 0;
}
65. 字符串替换
#include<stdio.h>
#include<string.h>int main(){char ch[81];gets(ch);int n = strlen(ch);for(int i=0;i<n;++i){if(ch[i]>='A'&&ch[i]<='Z'){ch[i]='A'+(25-(ch[i]-'A'));}}printf("%s",ch);return 0;
}
66. 时间换算
#include<stdio.h>int main(){int h,m,s;scanf("%d:%d:%d",&h,&m,&s);int n;scanf("%d",&n);int p,q,r,t,u;p=(s+n)%60;q=(s+n)/60;r=(q+m)%60;t=(q+m)/60;u=(t+h)%24;printf("%02d:%02d:%02d",u,r,p);return 0;
}
67. What is a computer?
#include<stdio.h>
int main(){printf("What is a computer?");return 0;
}
68. 求N分之一序列前N项和
#include<stdio.h>int main(){int n;scanf("%d",&n);double sum=0;for(int i=0;i<n;++i){sum+=1.0/(i+1);}printf("sum = %lf",sum);return 0;
}
69. 换硬币
#include<stdio.h>int main(){int n;scanf("%d",&n);int count=0;int total,remain;int c=n/5;for(int i=0;i<c;++i){int k = c-i;remain=n-k*5;int d=remain/2;for(int j=0;j<d;++j){int p = d-j;int remain1=remain-p*2;if(!remain1)continue;printf("fen5:%d, fen2:%d, fen1:%d, total:%d\n",k,p,remain1,k+p+remain1);++count;}}printf("count = %d",count);return 0;
}
70. 输出三角形面积和周长
#include<stdio.h>
#include<math.h>
int main(){int a,b,c;scanf("%d %d %d",&a,&b,&c);if(a+b<=c||a+c<=b||b+c<=a){printf("These sides do not correspond to a valid triangle");}else{double s = (a+b+c)/2.0;double area = sqrt(s*(s-a)*(s-b)*(s-c)),cir = a+b+c;printf("area = %.2lf; perimeter = %.2lf",area,cir);}return 0;
}
71. 求平方与倒数序列的部分和
#include<stdio.h>int main(){int m,n;double sum=0;scanf("%d %d",&m,&n);for(int i=m;i<=n;++i){sum+=i*i+1.0/i;}printf("sum = %lf",sum);return 0;
}
72. 三天打鱼两天晒网
#include<stdio.h>int main(){int n;scanf("%d",&n);if(n%5<=3&&n%5){printf("Fishing in day %d",n);}else{printf("Drying in day %d",n);}
}
73. 比较大小
#include<stdio.h>
int main(){int a,b,c;scanf("%d%d%d",&a,&b,&c);if(a>b){int tmp = a;a=b;b=tmp;}if(a>c){int tmp=c;c=b;b=a;a=tmp;}if(b>c){int tmp=b;b=c;c=tmp;}printf("%d->%d->%d",a,b,c);
}
74. 三角形判断
#include<stdio.h>
#include<math.h>
int main()
{double a,b,c,x1,y1,x2,y2,x3,y3,A,p;scanf("%lf%lf%lf%lf%lf%lf",&x1,&y1,&x2,&y2,&x3,&y3);a=sqrt((x1-x2)*(x1-x2)+(y1-y2)*(y1-y2));b=sqrt((x1-x3)*(x1-x3)+(y1-y3)*(y1-y3));c=sqrt((x3-x2)*(x3-x2)+(y3-y2)*(y3-y2));if (a+b<=c || b+c<=a || a+c<=b){printf("Impossible");}else{p=(a+b+c)/2;A=sqrt(p*(p-a)*(p-b)*(p-c));printf("L = %.2f, A = %.2f",2*p,A);}return 0;
}
75. 整数152的各位数字
#include<stdio.h>int main(){printf("152 = %d + %d*10 + %d*100",152%10,152/10%10,152/100);return 0;
}
76. 计算分段函数[3]
#include<stdio.h>
int main(){double x;scanf("%lf",&x);if(x>10-1e-6&&x<10+1e-6){printf("f(%.1lf) = %.1lf",x,1.0/x);}else{printf("f(%.1lf) = %.1lf",x,x);}return 0;
}
77. 求1到100的和
#include<stdio.h>
int main(){int sum = 0;for(int i=1;i<101;++i){sum+=i;}printf("sum = %d",sum);return 0;
}
78. 计算油费
#include<stdio.h>int main(){int a,b;char c;scanf("%d %d %c",&a,&b,&c);double discount = c=='m'?0.95:0.97;double price = b==90?6.95:b==93?7.44:7.93;double sum = a * price *discount;printf("%.2lf",sum);return 0;
}
- N个数求和
- 打折
- 2018我们要赢
- 打印沙漏
- 币值转换
- 连续因子
- 温度转换
- 整数四则运算
- 计算分段函数[1]
- 计算分段函数[2]
- 阶梯电价
- 统计字符
- 输出闰年
- 特殊a串数列求和
- 水仙花数
- 计算华氏温度
- 计算火车运行时间
- 计算存款利息
- 计算个人所得税
- 两个数的简单计算器
- 打印九九口诀表
- 逆序的三位数
- 人民币兑换
- 大笨钟
- A除以B
- 新世界
- 寻找250
- 求平方根序列前N项和
- 找出最小值
- 将x的平方赋值给y
- 计算工资
- 求符合给定条件的整数集
- 求特殊方程的正整数解
- 约分最简分式
- 单词长度
- 谁先倒
- 小于m的最大的10个素数
- 计算圆周率
- 整数的分类处理
- 分队列
- 我是升旗手
- 兔子繁殖问题
- 作品评分
- 3n+1
- 空心字母金字塔
- 上三角数字三角形
- 又来一个上三角数字三角形
- 时间差
- Sum of the digits
C语言程序设计 翁恺 中M2020春C入门练习第I段——变量、表达式、分支、循环 (2021/09/25 更新:AC代码 翻新至78题)相关推荐
- 【PTA】7-21 超速判断 (10分)_中M2020春C入门练习第I段——变量、表达式、分支、循环
题目 模拟交通警察的雷达测速仪.输入汽车速度,如果速度超出60 mph,则显示"Speeding",否则显示"OK". 输入格式: 输入在一行中给出1个不超过5 ...
- C语言程序设计-翁恺(初学者日记)
初学C语言的内容,学习中代码做分享以及课堂笔记. 第二章 计算 2.1变量 //计算价格 #include<stdio.h>int main() {int price = 0;print ...
- 程序设计入门——C语言(翁恺老师)我的作业
程序设计入门--C语言(翁恺老师)我的作业 第一周 程序设计与C语言 1 输出"Hello World"(5分) 题目内容: 请输出一行,内容为 Hello World 请注意大小 ...
- MOOC程序设计入门——C语言(翁恺)第五周编程作业“念整数”
MOOC程序设计入门--C语言(翁恺)第五周编程作业"念整数" ****念整数 题目内容: 你的程序要读入一个整数,范围是[-100000,100000].然后,用汉语拼音将这个整 ...
- 『零基础学Java语言-浙江大学-翁恺』第6周 使用对象
以下为个人学习笔记和习题整理 课程:零基础学Java语言-浙江大学-翁恺 @ 中国大学MOOC https://www.icourse163.org/course/ZJU-1001541001 文章目 ...
- c语言程序设计李泽中课后,C语言程序设计李泽中课件第4章解读.ppt
C语言程序设计李泽中课件第4章解读 河南商业高等专科学校 4.4 程序综合举例 [例4.12]输入一个无符号短整数和进制代号(d-十进制.0-八进制.x-十六进制),然后将数进制代号要求输出. 程序代 ...
- 成人c语言培训,C语言程序设计在成人教育中教学.doc
C语言程序设计在成人教育中教学 C语言程序设计在成人教育中教学 摘要:随着计算机网络的迅速普及和现代教育技术的不断发展,面向成人的远程教育发展十分迅速.这就给原来没有机会接受高等教育的人创造了良好地继 ...
- c语言微课名称大全,微课在高职《C语言程序设计》课程中的初探
[内容摘要]随着网络时代.移动时代的到来,微博.微信.微电影给人们的信息传播.沟通交流带来了极大的便利.受国外翻转课堂.可汗学院等的启迪,微课作为一种新的学习形式,因其时间短,使用方便,易传播共享,为 ...
- if在c语言程序中的作用,c语言程序设计,if(flag)中,括号内只有一个flag,表示
公告: 为响应国家净网行动,部分内容已经删除,感谢读者理解. 话题:c语言程序设计,if(flag)中,括号内只有一个flag,表示什么?诸如此回答:C语言中有个很奇怪的定, 只要一个值不是0, 他就 ...
最新文章
- Cant find model en_core_web_sm
- ELK实时分析之php的laravel项目日志
- maven no Maven Dependencies view
- 028_CSS外边距
- Cisco OSPF NSSA区域配置
- 控件属性、事件持久化(转)
- break 和continue的用法 java——CSDN
- Java各个类型转化
- 抄袭、借鉴与创新,有什么区别?
- 腾讯云安装javaweb环境
- attachEvent
- Audio Ease Indoor 混响插件评测
- 世界互联网大会:马云演讲实录
- 2022年10月29日(星期六)骑行海囗林场森林公园
- 一道线性代数证明题:若AX=0的解空间为U,则U的正交补是由A的行向量组张成的
- convexHull实现
- 基金收益率计算1:资管业务、资管产品和基金
- java捕鱼增值版游戏下载_捕鱼游戏 java
- dd命令参数详解及数据操作实战
- 正则表达式语法简介说明