C语言上机题库

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
for(i=num1;i<=num2;i+=2)
sum+=i;
printf("%d",sum);
}
5.12输入10个分数(浮点型),去掉最高分和最低分后求平均分,保留一位小数。
输入格式:
0 1 2 3 4 5 6 7 8 9
输出格式:
4.5
#include <stdio.h>
void main()
{ int i;
输入格式:
35
输出格式:
Yes
#include <stdio.h>
void main()
{
int n;
scanf("%d",&n);
if(n%5 == 0 && n%7 == 0)
printf("yes\n");
else
printf("no\n");
}
4.3商场为促销实行打折销售商品,假定商品价格为p元,编程计算某顾客购买x件商品的应付金额,保留一位小数。先输入价格p,再输入购买的件数x。计算公式sum = p * x * (1 - d)其中,sum为应付金额,d为折扣(x<5时:d=0;5<=x<10时:d=1%;10<=x<21时:d=2%;21<=x<30时:d=4%;30<=x时:d=6%;)。
输入格式:
1 100
输出格式:
2500
#include<stdio.h>
int main(void)
{
int num1,num2,t,i,sum=0;
scanf("%d%d",&num1,&num2);
if(num1>num2)
{t=num1;num1=num2;num2=t;}
if(num1%2==0)num1++;
a=num/1000;
b=(num-a*1000)/100;
c=(num-a*1000-b*100)/10;
d=num-a*1000-b*100-c*10;
total=a+b+c+d;
printf("%d\n",total);
return 0;
}
3.15输入一大写字母,输出对应的小写字母。
输入格式:
if(a>c) {t=a;a=c;c=t;}
if(b>c) {t=b;b=c;c=t;}
printf("%d %d %d\n",a,b,c);
return 0;
}
4.7输入两个实数和一个算术运算符(+,-,*,/),根据运算符执行相应的运算并输出运算结果,保留一位小数。(提示:运算符先输入,两个实数后输入)
输入格式:
5.0
输出格式:
31.42 78.54
#include <stdio.h>
void main()
{ double r,l,s;
scanf("%lf",&r);
l=2*3.14159*r;
s=3.14159*r*r;
printf("%.2f %.2f\n",l,s);
}
4.1输入整数a和b,如果a^2 + b^2大于100,则输出a + b的值;否则,输出a - b的值。
d=0.04;
else d=0.06;
sum=p*x*(1-d);
printf("%.1f",sum);
}
4.4输入'0'~'9'或'a'~'f'或'A'~'F'中的一个字符,代表一个十六进制数,将其转换为十进制数,求该数与15的和并输出。
输入格式:
6
输出格式:
21
#include<stdio.h>
else if(op=='*') printf("%.1f\n",a*b);
else printf("%.1f\n",a/b);
return 0;
}
4.8输入3个整数,要求按从大到小的顺序输出。
输入格式:
1 3 5
输出格式:
5 3 1
#include<stdio.h>
int main(void)
{
int a,b,c,t;
A
输出格式:
a
#include<stdio.h>
int main(void)
{
char c1,c2;
scanf("%c",&c1);
c2=c1+32;
printf("%c",c2);
}
3.16输入两个整数分别赋值给变量a和b,将a和b的值互换,输出a、b的值。
输入格式:
3 5
输出格式:
5 3
#include <stdio.h>
Please input your choice:
根据输入的序号显示相应的问候信息:输入1时,输出Good morning;输入2时,输出Good afternoon;输入3时,输出Good night;对于其他的输入,则输出error。
输入格式:
2
输出格式:
Good afternoon
#include<stdio.h>
default:printf("error\n");
}
}
4.6输入3个整数,要求按从小到大的顺序输出。
输入格式:
5 3 1
输出格式:
1 3 5
#include<stdio.h>
int main(void)
{
int a,b,c,t;
scanf("%d%d%d",&a,&b,&c);
if(a>b) {t=a;a=b;b=t;}
return 0;
}
3.14输入一个四位正整数,求其各位数字之和。例如,1357的各位数字之和为1 + 3 + 5 + 7 = 16。
输入格式:
1357
输出格式:
16
#include<stdio.h>
int main(void)
{
int num;
int a,b,c,d,total;
scanf("%d",&num);
输入格式:
9.9 15
输出格式:
145.5
#include<stdio.h>
void main()
{
int x;
float p,sum,d;
scanf ("%f%d",&p,&x);
if(x<5)
d=0;
else if(x<10)
d=0.01;
else if(x<21)
d=0.02;
else if(x<30)
输出格式:
16.0
#include<stdio.h>
int main(void)
{
int a,b,h;
float S;
scanf("%d%d%d",&a,&b,&h);
S=h*(a+b)/2.0;
printf("%.1f",S);
return 0;
}
3.26输入圆的半径,求圆的周长和面积,结果精确到小数点后两位。已知圆周率为3.14159。
{
char c1,c2;
c1=getchar();
c2=getchar();
c1=c1-48;
c2=c2-48;
printf("%d\n",c1+c2);
return 0;
}
3.25输入梯形的上下底边长度和高,计算梯形的面积,保留一位小数。计算梯形面积的公式如下:
S=h*(a+b)/2
输入格式:
3 5 4
return 0;
}
3.12输入三个整数,求其平均值。
输入格式:
3 5 7
输出格式:
5
#include <stdio.h>
int main(void)
{
int a,b,c,aver;
scanf("%d %d %d",&a,&b,&c);
aver=(a+b+c)/3;
printf("%d\n",aver);
int main(void)
{
int a,b,temp;
scanf("%d%d",&a,&b);
temp=a;
a=b;
b=wk.baidu.comemp;
printf("%d %d",a,b);
return 0;
}
3.21输入一小写字母,输出对应的大写字母。
输入格式:
b
输出格式:
B
#include<stdio.h>
int main(void)
C
3.11输入'A'~'F'中的一个字母,代表一个十六进制数,将其转换为十进制数,求该数与15的和并输出。
输入格式:
B
输出格式:
26
#include<stdio.h>
int main(void)
{
char ch;
int sum;
ch=getchar();
sum=ch-'A'+10+15;
printf("%d\n",sum);
输入格式:
3 5
输出格式:
1.88 8.00
#include <stdio.h>
int main(void)
{
double r1, r2, pr, rs;
scanf("%lf%lf", &r1, &r2);
pr =(r1 * r2)/ (r1 + r2) ;
rs = r1 + r2;
printf("%.2f %.2f\n", pr, rs);
double sum=0,a,max,min;
scanf("%lf",&a);
sum=max=min=a;
for(i=1;i<=9;i++)
{ scanf("%lf",&a);
if(max<a) max=a;
if(min>a) min=a;
sum=sum+a;
}
sum=sum-max-min;
return 0;
}
3.24使用getchar函数分别输入两个字符变量c1和c2,要求c1、c2均是字符'0'到'9'中的一个字符。将c1、c2中的值转换成相应的数字,如将字符'1'转换为数字1,并输出这两个数相加的结果。
输入格式:
26
输出格式:
8
#include<stdio.h>
int main(void)
scanf("%d%d%d",&a,&b,&c);
if(a<b) {t=a;a=b;b=t;}
if(a<c) {t=a;a=c;c=t;}
if(b<c) {t=b;b=c;c=t;}
printf("%d %d %d\n",a,b,c);
return 0;
}
5.11编写程序,接收两个整数num1和num2,找出这两个数之间所有奇数的和。
{
char ch;
ch=getchar();
putchar(ch-32);
putchar('\n');
}
3.22输入任意四位整数,以反序的方式输出该整数。例如:输入1234,输出4321
输入格式:
1357
输出格式:
7531
#include<stdio.h>
int main(void)
{
char c1,c2,c3,c4;
void main()
{
char ch;
ch=getchar();
if(ch>='0'&&ch<='9')
printf("%d\n",ch-'0'+15);
else if(ch>='A'&&ch<='F')
printf("%d\n",ch-'A'+10+15);
else if(ch>='a'&&ch<='f')
int main(void)
{
int choice;
scanf("%d",&choice);
switch(choice)
{
case 1:printf("Good morning\n");break;
case 2:printf("Good afternoon\n");break;
case 3:printf("Good night\n");break;
scanf("%c%c%c%c",&c1,&c2,&c3,&c4);
printf("%c%c%c%c\n",c4,c3,c2,c1);
}
3.23输入两个电阻值,求它们并联和串联的电阻值,结果保留两位小数。并联和串联的电阻值的计算公式为:
并联电阻:PR=(R1*R2)/(R1+R2)串联电阻:RS=R1+R2
return 0;
}
3.13根据c=5/9*(f-32)公式,输入华氏温度f,求摄氏温度c,结果精确到小数点后两位。
输入格式:
80.0
输出格式:
26.67
#include<stdio.h>
int main(void)
{
float f,c;
scanf("%f",&f);
c=5.0/9*(f-32);
printf("%.2f\n",c);
输入格式:
3 5
输出格式:
-2
#include<stdio.h>
void main()
{
int a,b;
scanf("%d%d",&a,&b);
if (a*a+b*b>100)
printf("%d\n",a+b);
else
printf("%d\n",a-b);
}
4.2输入整数n,如果n既是5的整倍数又是7的整倍数,则输出yes;否则输出no。
输入格式:
+ 1.5 2.1
输出格式:
3.6
#include<stdio.h>
int main(void)
{
double a,b;
char op;
scanf("%c %lf%lf",&op,&a,&b);
if (op=='+') printf("%.1f\n",a+b);
else if(op=='-') printf("%.1f\n",a-b);
printf("%d\n",ch-'a'+10+15);
else
printf("Iaput Error!!\n");
}
4.5已知一张如下所示的时间表:
***************Time***************
1 morning
2 afternoon
3 night
**********************************
相关文档
最新文档