C语言基础代码_第1页
C语言基础代码_第2页
C语言基础代码_第3页
C语言基础代码_第4页
C语言基础代码_第5页
已阅读5页,还剩36页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1061:求两个数的和与差Description输入整数 a 和b,计算并输出a、b 的和与差。Input输入只有一组a和bOutput按照下面的例子输出结果Sample Input2 -8Sample OutputThe sum is -6The difference is 10#includeint main() int a,b,sum,difference; scanf(%d%d,&a,&b); sum=a+b; difference=a-b; printf(The sum is %dn,sum);printf(The difference is %dn,difference);return 0;1062:求平方根Description输入 1 个实数x,计算并输出其平方根(保留1 位小数)Input输入一个实数xOutput输出平方根Sample Input17Sample OutputThe square root of 17.0 is 4.1#include#includeint main()double x,a;scanf(%lf,&x);a=sqrt(x);printf(The square root of %0.1lf is %0.1lfn,x,a);return 0;1063:华氏温度转换为摄氏温度Description输入华氏温度f,计算并输出相应的摄氏温度c(保留2 位小数)。c = 5/9(f-32).Input输入一个实数x表示华氏温度Output输出对应的摄氏温度Sample Input17.2Sample OutputThe temprature is -8.22#include int main() double f,c; scanf(%lf,&f);c=5.0/9.0*(f-32.0); printf(The temprature is %0.2fn,c);return 0;1064:计算旅途时间Description输入 2 个整数time1 和time2,表示火车的出发时间和到达时间,计算并输出旅途时间。有效的时间范围是 0000 到2359,不需要考虑出发时间晚于到达时间的情况。Input输入只有两个整数Output求出火车的旅途时间Sample Input712 1411Sample OutputThe train journey time is 6 hrs 59 mins.#includeint main() int time1,time2,hours,mins; scanf(%d%d,&time1,&time2); time1=time1/100*60+time1%100; time2=time2/100*60+time2%100; hours=(time2-time1)/60; mins=(time2-time1)%60; printf(The train journey time is %d hrs %d mins.n,hours,mins);return 0;1065:数字加密Description输入 1 个四位数,将其加密后输出。方法是将该数每一位上的数字加9,然后除以10 取余,做为该位上的新数字,最后将第1 位和第3 位上的数字互换,第2 位和第4 位上的数字互换,组成加密后的新数。Input输入只有一个正整数Output输出加密后的新数Sample Input1257Sample OutputThe encrypted number is 4601#includeint main() int number,digit1,digit2,digit3,digit4,newnum; scanf(%d,&number); digit1=number/1000; digit2=(number-digit1*1000)/100; digit3=(number-digit1*1000-digit2*100)/10; digit4=number-digit1*1000-digit2*100-digit3*10; digit1=(digit1+9)%10; digit2=(digit2+9)%10; digit3=(digit3+9)%10; digit4=(digit4+9)%10; newnum=digit3*1000+digit4*100+digit1*10+digit2; printf(The encrypted number is %dn,newnum);return 0;1066:大写字母转化为小写字母Description输入一个大写英文字母,输出相应的小写字母。Input输入一个大写英文字母Output输出对应的小写字母Sample InputKSample Outputk#include int main() char ch; scanf(%c,&ch); ch=ch-A+a; printf(%cn,ch);return 0;1067:显示两级成绩Description输入一个正整数 repeat (0repeat10),做repeat 次下列运算:输入一个学生的数学成绩,如果它低于 60,输出“Fail”,否则,输出“Pass”。Input见SampleOutput见SampleSample Input260 59Sample OutputPassFail#includeint main() int t,repeat; scanf(%d,&repeat); for(t=0;t=0&mark60) printf(Failn); else printf(Passn); return 0;1068:找最小值Description输入一个正整数 repeat (0repeat10),做repeat 次下列运算:输入四个整数,输出其中的最小值。Input见SampleOutput见SampleSample Input312 6 1 9010 40 30 20-1 -3 -4 -5Sample Outputmin is 1min is 10min is -5#includeint main() int t,repeat; int a,b,c,d,min; scanf(%d,&repeat); for(t=0;trepeat;t+) scanf(%d%d%d%d,&a,&b,&c,&d); min=a; if (bmin) min=b; if (cmin) min=c; if (dmin) min=d; printf(min is %dn,min); return 0;1069:求三角形的面积和周长Description输入一个正整数 repeat (0repeat10),做repeat 次下列运算:输入三角形的三条边 a, b, c,如果能构成一个三角形,输出面积area 和周长perimeter(保留2 位小数);否则,输出“These sides do not correspond to a valid triangle”。在一个三角形中,任意两边之和大于第三边。三角形的面积计算公式:aere*area = s(s-a)(s-b)(s-c)其中:s = (a+b+c)/2Input见SampleOutput见SampleSample Input45 5 31 1 44 1 11 4 1Sample Outputarea=7.15; perimeter=13.00These sides do not correspond to a valid triangleThese sides do not correspond to a valid triangleThese sides do not correspond to a valid triangle#include #include int main()int t,repeat;double a,b,c,perimeter,s,area;scanf(%d,&repeat);for(t=1;tc&b+ca&a+cb)perimeter=a+b+c;s=perimeter/2;area=sqrt(s*(s-a)*(s-b)*(s-c);printf(area=%.2lf; perimeter=%.2lfn,area,perimeter);elseprintf(These sides do not correspond to a valid trianglen);return 0;1070:判断数的符号description输入一个正整数 repeat (0repeat10),做repeat 次下列运算:输入整数 x,若x 大于0,y=1;若x 等于0,y=0;否则,y=-1,最后输出y。Input见sampleOutput见sampleSample Input32 -8 0Sample Output1-10#includeint main() int t,repeat; scanf (%d,&repeat); for (t=0;t0) y=1; else if (x=0) y=0; else y=-1;printf (%dn,y);return 0;1072:显示水果的价格Description输入一个正整数 repeat (0repeat10),做repeat 次下列运算:以下 4 种水果的单价分别是3.00 元/公斤,2.50 元/公斤,4.10 元/公斤,10.20 元/公斤。1 apples2 pears3 oranges4 grapes输入水果的编号,输出该水果的单价(保留2 位小数)。如果输入不正确的编号,显示单价为0.00。Input见sampleOutput见sampleSample Input13Sample Outputprice=4.10法一:#includeint main() int t,repeat; double x,y; scanf(%d,&repeat); for(t=0;trepeat;t+) scanf(%lf,&x); if(x=1) y=3.00; else if(x=2) y=2.50; else if(x=3) y=4.10; else if(x=4) y=10.20; else y=0.00; printf(price=%.2fn,y); return 0;法二:#includeint main() int repeat,n,i; double price1=3.00,price2=2.50,price3=4.10,price4=10.20,price; scanf(%d,&repeat); for(n=0;nrepeat;n+) scanf(%d,&i); switch(i) case 1 : price=price1;break; case 2 : price=price2;break; case 3 : price=price3;break; case 4 : price=price4;break; default : price=0.00;break; printf(price=%.2lfn,price); return 0; 1073: 字母转换题目描述输入一个正整数 repeat (0repeat10),做repeat 次下列运算:输入一个字符,如果它是大写字母,输出相应的小写字母;如果它是小写字母,输出相应的大写字母;否则,原样输出。输入见sample输出见sample样例输入3F=y样例输出f=Y#include#includeint main() int ri,repeat; scanf(%d,&repeat); for(ri=1;ri=a&c1=A&c1=Z) c2=c1+32; else c2=c1;printf(%c,c2 ); printf(n); return 0;1074: 求11/21/3.1/n题目描述输入一个正整数 repeat (0repeat10),做repeat 次下列运算:读入 1 个正整数 n(n=50),计算并输出11/21/3.1/n (保留3 位小数)。输入见sample输出见sample样例输入2210样例输出1.5002.929#includeint main() int ri,repeat; int i,n; float sum; scanf(%d,&repeat); for(ri=1;ri=repeat;ri+) scanf(%d,&n); sum=0; for(i=1;i=n;i+) sum=sum+1.0/i; printf(%.3fn,sum); return 0;1075:求n!题目描述输入一个正整数 repeat (0repeat10),做repeat 次下列运算:读入 1 个正整数 n (n=22),计算并输出 n! 。输入见sample输出见sample样例输入31105样例输includeint main() int t,repeat; scanf(%d,&repeat); for(t=1;t=repeat;t+) int i,n; double product; scanf(%d,&n); product=1; for(i=1;i=n;i+) product=product*i; printf(%.fn,product); return 0;1076:求x的n次幂题目描述输入一个正整数 repeat (0repeat10),做repeat 次下列运算:读入 1 个正实数x 和1 个正整数 n(n=10),计算并输出x 的n 次幂(保留2 位小数)。输入见sample输出见sample样例输入21.5 22.0 10样例输出2.251024.00#includeint main() int t,repeat,n,i; double x,pow; scanf(%d,&repeat); for(t=0;t=repeat;t+) scanf(%lf%d,&x,&n); pow=1; for(i=1;i=n;i+) pow=pow*x; printf(%.2lfn,pow); return 0;1077: 求11/21/31/4.题目描述输入一个正整数 repeat (0repeat10),做repeat 次下列运算:读入 1 个正整数 n(n=100),计算并输出11/21/31/4的前n 项和(保留3 位小数)。输入见sample输出见sample样例输入13样例输出0.833#includeint main() int t,n,repeat,flag,i; float sum; scanf(%d,&repeat); for(t=0;trepeat;t+) scanf(%d,&n); flag=1; sum=0; for(i=1;i=n;i+) sum+=flag*1.0/i; flag=-flag; printf(%.3fn,sum); return 0;1079: 求11/31/51/7.题目描述输入一个正整数 repeat (0repeat10),做repeat 次下列运算:读入 1 个正实数eps,计算并输出11/31/51/7,直到最后一项的绝对值小于eps(保留6 位小数,不包括最后一项)。输入见sample输出见sample样例输入11E-4样例输出0.785348法一:#include#includeint main() int ri,repeat; int temp,flag; double eps,item,sum; scanf(%d,&repeat); for(ri=1;ri=eps) sum=sum+item; temp=temp+2; flag=-flag; item=flag*1.0/temp; printf(%.6fn,sum); return 0;法二:includeint main() int repeat,i,single,j; double eps,sum; scanf(%d,&repeat); for(i=0;i=eps;j=j+2) sum=sum+1.0/j*single; single=-single; printf(%lfn,sum); return 0;1080: 摄氏温度和华氏温度转换表题目描述输入一个正整数 repeat (0repeat10),做repeat 次下列运算:输入 2 个整数begin 和end,分别代表摄氏温度的起止值,输出该范围内摄氏温度C 和华氏温度F 的转换表。F = 32 + C * 9 / 5输入见sample输出对于每组测试首先输出一行“Celsius Fahrenheit”然后每行一个摄氏温度,接着是一个华氏温度(华氏温度占10个字符的宽度)样例输入15 7样例输出Celsius Fahrenheit5 416 427 44#includeint main()int ri,r,repeat;int begin,C,F,end;scanf(%d,&repeat);for(ri=1;ri=repeat;ri+)scanf(%d%d,&begin,&end);printf(Celsius Fahrenheitn);for(r=begin;r=end;r+)C=r;F=32+C*9.0/5.0;printf(%d%10dn,C,F);return 0;1081: 求奇数和题目描述输入一个正整数 repeat (0repeat10),做repeat 次下列运算:读入一批正整数(以零或负数为结束标志),求其中的奇数和。输入见sample输出见sample样例输入21 3 90 7 08 7 4 3 70 5 6 101 -1样例输出11116#includeint main() int t,repeat; int n,sum; scanf(%d,&repeat); for(t=0;t0) if(n%2!=0) sum=sum+n; scanf(%d,&n); printf(%dn,sum); return 0;1082: 求最大值题目描述输入一个正整数 repeat (0repeat10),做repeat 次下列运算:输入一个正整数 n, 再输入n 个整数,输出最大值。输入见sample输出见sample样例输入34 2 123 -100 04 9 1 -1 83 1 3 5样例输出12395#includeint main(void)int i,n,x,max;int t,repeat;scanf(%d,&repeat);for(t=0;t=repeat;t+)scanf(%d%d,&n,&x); max=x;for(i=1;imax)max=x;printf(%dn,max);return 0;1083: 求整数的位数以及各位数之和Description输入一个正整数 repeat (0repeat10),做repeat 次下列运算:输入一个整数n(n10100),输出它的位数以及各位数之和。Input见sampleOutput见sampleSample Input312345620000-1Sample Outputnumber=6,sum=21number=5,sum=2number=1,sum=1#includeint main() int t,repeat,i; int number,sum; char n100; scanf(%d,&repeat); for(t=0;t=0&ni=9) number+; sum+=ni-0; printf(number=%d,sum=%dn,number,sum); return 0;1084: 求2/13/25/38/5题目描述输入一个正整数 repeat (0repeat10),做repeat 次下列运算:输入一个正整数 n,输出 2/1+3/2+5/3+8/5 +.的前n 项之和,保留2 位小数。(该序列从第2 项起,每一项的分子是前一项分子与分母的和,分母是前一项的分子)输入见sample输出见sample样例输入21 5样例输出2.008.39#includeint main() int t,repeat; int i,n; float sum,a,b,x; scanf(%d,&repeat); for(t=0;trepeat;t+) sum=0; a=2; b=1; scanf(%d,&n); for(i=0;in;i+) sum+=a/b; x=b; b=a; a+=x; printf(%.2fn,sum); return 0;1085: 求aaaaaaaa.a题目描述输入一个正整数 repeat (0repeat10),做repeat 次下列运算:输入 2 个正整数a (0a10)和n(0n10), 求a+aa+aaa+aaa(n 个a)之和。输入见sample输出见sample样例输入12 3样例输出246#includeint main() int t,repeat; int i,n; long int a,item,sum; scanf(%d,&repeat); for(t=0;trepeat;t+) scanf(%ld%d,&a,&n); item=a; sum=0; for(i=0;in;i+) sum+=item; item=10*item+a; printf(%ldn,sum); return 0;1086: 判断素数题目描述输入一个正整数 repeat (0repeat10),做repeat 次下列运算:输入一个正整数 m,如果它是素数,输出YES,否则,输出NO(素数就是只能被1 和自身整除的正整数,1 不是素数,2 是素数)。输入见sample输出见sample样例输入41 2 9 17样例输出NOYESNOYES#includeint main() int i,t,repeat,m; scanf(%d,&repeat); for(i=0;irepeat;i+) scanf(%d,&m); for(t=2;tm/2&m!=1) printf(YESn); else printf(NOn); return 0;1088: 求 1 + 1/2! +.+ 1/n!题目描述输入一个正整数 repeat (0repeat10),做repeat 次下列运算:输入 1 个正整数n,计算 s 的前n 项的和(保留 4 位小数)。s = 1 + 1/2! +.+ 1/n!输入见sample输出见sample样例输入12样例输出1.5000#includeint main() int t,repeat; scanf(%d,&repeat); for(t=1;t=repeat;t+) int i,n; double product,sum; scanf(%d,&n); product=1; sum=0; for(i=1;i=n;i+) product=product*i; sum=sum+1.0/product; printf(%.4lfn,sum); return 0;1090: 统计素数并求和Description输入一个正整数 repeat (0repeat10),做repeat 次下列运算:输入 2 个正整数m 和n(1=m,n=500),统计并输出m 和n 之间的素数的个数以及这些素数的和(素数就是只能被1 和自身整除的正整数,1 不是素数,2 是素数)。Input见sampleOutput见sampleSample Input11 10Sample Outputcount=4,sum=17法一:#include #include int prime(int i);int main()int t,repeat;int count,i,m,n,sum;scanf(%d,&repeat);for(t=0;trepeat;t+)scanf(%d%d,&m,&n);count=0;sum=0;for(i=m;i=n;i+)if(prime(i)count+;sum+=i;printf(count=%d,sum=%dn,count,sum);int prime(int i)int flag,j;if(i=1) flag=0;else if(i=2) flag=1;elsefor(j=2;ji;j+)if(i%j=0)flag=0;break;else flag=1;return flag;法二:#includeint main() int repeat,i,j,m,n,sum,count; int sushu(int n); scanf(%d,&repeat); for(i=0;irepeat;i+) sum=0; count=0; scanf(%d%d,&m,&n); for(j=m;j=n;j+) if(sushu(j) count+; sum+=j; printf(count=%d,sum=%dn,count,sum); return 0;int sushu(int n)int a;for(a=2;an/2&n!=1)return 1;elsereturn 0;1091: 统计单词Description输入一个正整数 repeat (0repeat10),做repeat 次下列运算:输入一行字符,统计其中单词的个数。各单词之间用空格分隔,空格数可以是多个。Input见sampleOutput见sampleSample Input3 Every night in my dreams I see you I feel you That is how I know you go onSample Output568法一:#includeint main()int t,repeat;scanf(%dn,&repeat);for(t=0;trepeat;t+) char string81; int i,num,word; char ch; gets(string); num=0; word=0; for(i=0;(ch=stringi)!=0;i+) if(ch= ) word=0; else if(word=0) word=1; num+; printf(%dn,num);return 0;法二:#includeint main() int repeat,sum,j,i,flag; char str10000; scanf(%dn,&repeat); for(i=0;irepeat;i+) flag=1; sum=0; gets(str); for(j=0;strj!=0;j+) if(strj!= &flag=1) sum+; flag=0; else if(strj= &flag=0) flag=1; printf(%dn,sum); return 0;1092: 输出一个整数的各位数字Description输入一个正整数 repeat (0repeat10),做repeat 次下列运算:输入一个整数,从高位开始逐位输出它的各位数字。Input输入的整数可能大于1030Output见sampleSample Input3123456-6008Sample Output1 2 3 4 5 66 0 08法一:#include int main() int repeat,i,t,a80,b; char s80; scanf(%d,&repeat); getchar(); for(i=1;i=repeat;i+) gets(s); if(s0=-) for(t=0;st!=0;t+) st=st+1; for(t=0;st!=0;t+) at=st-0; for(b=0;bt;b+) if(b=t-1) printf(%dn,ab); e

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论