您好,欢迎访问三七文档
1停车场收费问题一个停车场的标准收费是3小时之内收5元,超过3小时,每增加1小时加收2元;如果时间不是整数,按比例收取,例如:如果输入为3.6小时,则费用为5+(3.6-3)*2=6.2元。最高收费为40元。假设任何车辆的停车时间都不超过24小时。编写程序,计算每辆车的停车费。(注意输出结果小数点后保留两位)输入#includestdio.hintmain(){doublem,x;printf(输入停车时间x:);scanf(%lf,&x);if(x=24){if(x3.0){m=5.0;printf(%lf\n,m);}elseif(x3.0){m=5.0+2.0*(x-3.0);if(m=40)printf(%lf\n,m);}}elseprintf(输出停车费用40元\n);return0;2.#includestdio.hintmain(){doublex,m;printf(输入停车时间(x):);scanf(%lf,&x);if(x=24){if(x=3.0)printf(停车费用5元\n);if(x3)m=5.0+2.0*(x-3.0);if(m=40)printf(%6.2f\n,m);}elseprintf(停车费用40元\n);}}2计算细菌数量一种细菌的繁殖速度是每天成倍增长。例如:第一天有10个,第二天就变成20个,第三天变成40个,第四天变成80个,……。现在给出第一天的日期和细菌数目,要你写程序求出到某一天的时候,细菌的数目。3计算邮资计算邮资:用户输入:邮件的重量,以及是否加快计算规则:重量在1克以内(包括1克),基本费0.8元。超过1克的部分,按照0.5元/克的比例加收超重费。如果用户选择加快,多收2元。#includeiostreamusingnamespacestd;intmain(){doublex,sum;charexp;while(cinxexp){if(x=1&&exp=='n')sum=0.8;if(x=1&&exp=='y')sum=2.8;if(x1&&exp=='n')sum=0.8+(x-1)*0.5;if(x1&&exp=='y')sum=0.8+(x-1)*0.5+2;coutsumendl;}return0;}#includeiostreamusingnamespacestd;intmain(){intx,y;//变量定义,此处假设需要定义两个变量,均定义为整型while(cinxy){你对一组输入的一次处理过程代码}return0;}C:#includeiostreamusingnamespacestd;intmain(){intx,y;//变量定义,此处假设需要定义两个变量,均定义为整型while(scanf(%x%y,&x,&y)!=EOF){你对一组输入的一次处理过程代码}return0;}注意:考虑以下几点,然后直接套用模版就行了:i)变量定义。ii)有几个变量需要输入,在while中cin相应的变量。iii)开始考虑主程序代码,在“{}”中写一次处理过程的代码即可。4学分绩点计算北京大学对本科生的成绩施行平均学分绩点制(GPA)。既将学生的实际考分根据不同的学科的不同学分按一定的公式进行计算。公式如下:实际成绩绩点90——1004.085——893.782——843.378——813.075——772.772——742.368——712.064——671.560——631.060以下01.一门课程的学分绩点=该课绩点*该课学分2.总评绩点=所有学科绩点之和/所有课程学分之和现要求你编写程序求出某人A的总评绩点(GPA)。#includestdio.hintmain(){intstr1[10],str2[10],n,i;//定义两个数组分别表示每门课的学分,所得绩点doubleh,GPA,sum=0,s=0;//定义双精度变量h表示学分,GPA总评绩点,sum表示所有学科绩点之和,s表示所有课程学分之和。scanf(%d,&n);for(i=0;in;i++){scanf(%d,&str1[i]);s=s+str1[i];}for(i=0;in;i++){scanf(%d,&str2[i]);if(str2[i]=100&&str2[i]=90)h=4.0;elseif(str2[i]=89&&str2[i]=85)h=3.7;elseif(str2[i]=84&&str2[i]=82)h=3.3;elseif(str2[i]=81&&str2[i]=78)h=3.0;elseif(str2[i]=77&&str2[i]=75)h=2.7;elseif(str2[i]=74&&str2[i]=72)h=2.3;elseif(str2[i]=71&&str2[i]=68)h=2.0;elseif(str2[i]=67&&str2[i]=64)h=1.5;elseif(str2[i]=63&&str2[i]=60)h=1.0;elseh=0;sum=sum+h*str1[i];GPA=sum/s;}printf(%.2f\n,GPA);return0;}5一个笼子里面关了鸡和兔子(鸡有2只脚,兔子有4只脚,没有例外)。已经知道了笼子里面脚的总数a,问笼子里面至少有多少只动物,至多有多少只动物#includestdio.hintmain(){inta,min,max,s;scanf(%d,&s);while(s=1){scanf(%d,&a);if(a%2==1){min=0;max=0;}elseif(a%4==0){min=a/4;max=a/2;}else{min=(a-2)/4+1;max=a/2;}printf(%d%d\n,min,max);s--;}return0;}5通过指针变量访问整型变量#includestdio.hintmain(){inta=100,b=10;//定义整型变量a,b并初始化int*pointer_1,*pointer_2;//定义指向整型数据的指针变量pointer_1,pointer_2;pointer_1=&a;//把变量a的地址赋给指针变量pointer_1pointer_2=&b;//把变量b的地址赋给指针变量pointer_2printf(a=%d,b=%d\n,a,b);//输出变量a和b的值printf(*pointer_1=%d,*pointer_2=%d\n,*pointer_1,*pointer_2);//输出变量a和b的值return0;}6输入a和b两个整数,按先大后小的顺序输出a和b#includestdio.hintmain(){int*pointer_1,*pointer_2,*pointer_3,a,b;//*pointer_1,*pointer_2的类型是指向整型的指针变量printf(pleaseentertwointegernumbers:);scanf(%d,%d,&a,&b);//输入两个整数pointer_1=&a;//使p1指向变量apointer_2=&b;//使p2指向变量bif(ab)//如果ab{pointer_3=pointer_1;//将p1,p2的值互换pointer_1=pointer_2;pointer_2=pointer_3;}printf(a=%d,b=%d\n,a,b);//输出a,bprintf(max=%d,min=%d\n,*pointer_1,*pointer_2);//输出p1,p2所指向变量的值return0;}7,函数嵌套调用输入3个整数,要求由大到小输出,用函数调用。#includestdio.hintmain(){voidexchange(int*q1,int*q2,int*q3);inta,b,c,*p1,*p2,*p3;printf(pleaseenterthreenumbers:);scanf(%d,%d,%d,&a,&b,&c);p1=&a;p2=&b;p3=&c;exchange(p1,p2,p3);printf(theolderis\n:);return0;}voidexchange(int*q1,int*q2,int*q3){voidswap(int*pt1,int*pt2);if(*q1*q2)swap(q1,q2);if(*q1*q3)swap(q1,q3);if(*q2*q3)swap(q2,q3);}voidswap(int*pt1,int*pt2){inttemp;temp=*pt1;*pt1=*pt2;*pt2=temp;}8,改写大小写,要求从键盘输入大写字母,从显示器上输出小写字母#includestdio.hintmain(){charc1,c2;c1=getchar();c2=c1+32;putchar(c2);putchar('\n');return0;}9输入三个数,a,b,c要求按由小到大顺序输出。#includestdio.hintmain(){floata,b,c,t;printf(pleaseenterthreenumbers:);scanf(%f,%f,%f,&a,&b,&c);if(ab){t=a;按由小到大必须是‘ab’形式交换位置使小的在前,若按由大到小则是‘ab’形式a=b;b=t;}if(ac){t=a;a=c;c=t;}if(bc){t=b;b=c;c=t;}printf(%5.2f,%5.2f,%5.2f,a,b,c);return10给定一个正整数k(1k10),求1到k的立方和m。即m=1+2*2*2+…+k*k*k。输入13#includestdio.hintmain(){intk,m=0,i=1;scanf(%d,&k);if(1k&&k10)//这里进行修改,注意你的写法在c语言里是不成立的{while(i=k){m=m+i*i*i;i+=1;}printf(%d,m);}elseprintf(error);return0;}用一个字符串表示一段基因,例如:“CTATGGGTTT”。两段基因的相似度定义为它们所包含的最大公共子串的长度。例如:“CCTTGG”和“TGGGC”的最大公共子串为“TGG”,它的长度为3,则我们称“CCTTGG”和“TGGGC”的相似度为3。现给定两段基因,要求计算它们的相似度。111晶晶的朋友贝贝约晶晶下周一起去看展览,但晶晶每周的1、3、5有课必须上课,请帮晶晶判断她能否接受贝贝的邀请,如果能输出OK;如果不能则输出NO#includestdio.h#includestdlib.hvoidmain(){intw,c,y,m,d;//c世纪y年w星期d日m月;scanf(%d%d%d,&y,&m,&d);c=y/100;y=y-c*100;//分离世纪与年;if(m==1){m=13;if(y==00){y=99;c--;}y--;}if(m==2){m=14;if(y==0){y=99;c--;}y--;}w=y+y/4+c/4-2*c+26*(m+1)/10+d-1;//蔡勒公式switch(w%7){case1:case3:case5:printf(NO\n);break;case2:case4:case6:case0:printf(YES\n);break;}}12求一个长度不大于100的字符串的长度,要求不使用strlen方法,并且使用到字符指针。原文地址:1023--求字符串长度作者:小礼子地盘求一个长度不大于100的字符串的长度,要求不使用strlen方法,通过自定义的#includestdio.hintmain(){intlength(char*p);intlen;charstr[100];gets(str);len=lengt
三七文档所有资源均是用户自行上传分享,仅供网友学习交流,未经上传用户书面授权,请勿作他用。
本文标题:c语言练习题最新
链接地址:https://www.777doc.com/doc-7028565 .html