“C语言”上机题目汇总2012-2013-2
输入三角形两个边长及其夹角(角度值),求第三边边长和三角型面积。(上机指导P98 3(2))
#include
#include
float pi=3.141592;
int main()
{
float a,b,c,v,s;
scanf("%f%f%f",&a,&b,&v);
c=sqrt(a*a+b*b-2*a*b*cos(v/180*pi));
s=a*b*sin(v/180*pi)/2;
printf("c=%0.2f,s=%0.2f\n",c,s);
return 0;
}(测试通过)
输入一个字符,若是小写字母,则转换成大写字母输出;若是大写字母,则转换成小写字母输出。(上机指导P101 2(2))
#include
int main()
{
char ch;
printf("input:");
scanf("%c",&ch);
if(ch>='a'&&ch<='z')
printf("%c",ch-32);
else if(ch>='A'&&ch<='Z')
printf("%c",ch+32);
else printf("input error!");
return 0;
}(测试通过)
输入一个大写字母,输出字母表中它前面的字母和后面的字母。如果输入的字母为A或Z,则分别输出提示信息“没有前面的字母”或“没有后面的字母”。 (上机指导P101 2(3))
#include
int main()
{
char c;
printf("请输入一个大写字母:");
scanf("%c",&c);
if (c>'A'&&c
printf("前一个字母是:%c,后一个字母是:%c",c-1,c+1);
else if(c=='A')
printf("A的前面没有字母,A的后一个字母是%c",c+1);
else if(c=='Z')
printf("Z的后面没有字母,Z的前一个字母是%c",c-1);
else
printf("输入有误请重新输入");
return 0;
}(测试通过)
编写程序,输入一个整数,判断它能否被3、5、7整除,并根据情况输出下列信息:(上机指导P102 2(6))
能同时被3、5、7整除。
能同时被3、5、7中的两个数整除,并输出这两个数。
只能被3、5、7中的一个数整除,输出该数。
不能被3、5、7中的任何一个数整除。
#include
int main()
{
int m;
printf("please input:");
scanf("%d",&m);
if ((m%3==0)&&(m%5==0)&&(m%7==0))
printf("能同时被3,5,7整除");
else if( (m%3==0)&&(m%5==0)&&(m%7!=0))
printf("能被3和5整除,");
else if ((m%3==0)&&(m%7==0)&&(m%5!=0))
printf("能被3和7整除,");
else if ((m%7==0)&&(m%5==0)&&(m%3!=0))
printf("能被7和5整除,");
else if ((m%7==0)&&(m%5!=0)&&(m%3!=0))
printf("能被7整除,");
else if ((m%7!=0)&&(m%5==0)&&(m%3!=0))
printf("能被5整除,");
else if ((m%7!=0)&&(m%5!=0)&&(m%3==0))
printf("能被3整除,");
else
printf("不能被3,5,7任一个整除");
return 0;
}(测试通过)
已知正整数A>B>C且A+B+C<100,求满足共有多少组,并输出满足条件的组合。(上机指导P106 2(3))
#include
int main()
{
int a,b,c,cout=0;
for(c=1;c<100;c++)
for(b=c+1;b<100;b++)
for(a=b+1;a<100;a++)
if(a+b+c>100) break;
else if(1.0/(a*a)+1.0/(b*b)==1.0/(c*c) )
{
printf("A=%d B=%d C=%d\n", a,b,c )