目录
5-1
5-2
5-3
5-4
5-5
5-6
计算分段函数,测试数据分别是-2、3、7。
#include
#include
int main( ){
float x,f;
int i;
for(i=0;i<3;i++){
scanf("%f",&x);
if(x<0) f=fabs(x+1);
else if(x<=5) f=2*x+1;
else f=sin(x)+5;
printf("x=%.2f,y=%.2f\n",x,f);
}
return 0;
}
以下程序统计输入的一行字符中字母、数字、空格、其它字符的个数(行末以换行符结束,最后的换行符不统计在内)。例如,输入的一行字符为aB 3*
则字母有2个,数字有1个,空格有1个,其它字符有1个。
#include
int main(){
int letters,digits,spaces,others;
letters=0,digits=0,spaces=0,others=0;
char ch;
while(ch=getchar(),ch!='\n'){
if((ch>='A'&&ch<='Z')||(ch>='a'&&ch<='z'))
letters++;
else if(ch>='0'&&ch<='9')
digits++;
else if(ch==' ')
spaces++;
else
others++;
}
printf("字母、数字、空格、其它字符分别有:%d %d %d %d 个\n",letters,digits,spaces,others);
}
要是我的话,我定义和初始化会一起进行,还有肯定有 return 0;
为鼓励居民节约用水,自来水公司采取按用水量阶梯式计价的办法,居民应交水费y(元)与月用水量x(吨)相关:当x不超过15吨时,y=4x/3;超过后,y=2.5x−10.5。请编写程序实现水费的计算,要求定义和调用函数f(x)计算水费,其中x的类型是double,函数类型是double。
#include
double f(double x);
int main(){
double x, y;
scanf ("%lf",&x);
y=f(x);
printf ("f(%.2f) = %.2f\n",x,y);
return 0;
}
double f(double x){
double result;
if (x<=15){
result=4*x/3;
}else{
result=2.5*x-10.5;
}
return result;
}
输入字符'y'或'Y',则在屏幕上输出字符串"Yes.";输入其它字符,则在屏幕上输出字符串"No."。要求定义和调用函数YesNo(ch),当ch为'y'或'Y'时输出"Yes.",当ch为其它字符时输出"No."。
#include
void YesNo(char ch);
int main(void){
char ch;
ch=getchar();
YesNo(ch);
return 0;
}
void YesNo(char ch){
switch(ch){
case 'y':
case 'Y':printf("Yes.");return;
default:printf("No.");return;
}
}
请完善程序,实现以下程序功能:回文数是指正读和反读都一样的数。例如:12321、55455、35553等都是回文。请编写一个程序,从键盘上读取一个5位正整数,并判断它是否是回文数。 先输出该整数,再输出是否是回文,若是回文输出“Yes”,否则输出“No",中间用一个空格分隔。
#include
int main(void){
int i;for(i=1;i<=2;i++){ //该循环用于自动阅卷,请考生忽略
int n,g,s,q,w;
//n表示输入的5位正整数,g表示个位数字
//s表示十位数字,q表示千位数字
//w表示万位数字
scanf("%d",&n);
g=n%10;
s=n/10%10;
q=n/1000%10;
w=n/10000;
if(g==w&&s==q)
printf("%d Yes\n",n);
else
printf("%d No\n",n);
} //该循环用于自动阅卷,请考生忽略
return 0;
}
请完善程序,实现以下程序功能:首先输入两个非0双精度实数,再输入一个运算符(+、-、、/),然后进行相应计算并输出结果(保留两位小数,最后换行),如果输入的运算符不是这四种,则输出“运算符输入有误!”的信息
#include
int main(void){
int k;for(k=1;k<=5;k++){ //该循环用于自动阅卷,请考生忽略
double a,b,c; //变量c用来存放运算结果
char ysf;
scanf("%lf%lf",&a,&b);
ysf=getchar( );//输入运算符
if(ysf=='+'){ //输入的运算符是+
c=a+b;
printf("%.2lf+%.2lf=%.2lf\n",a,b,c);
}
if(ysf=='-'){ //输入的运算符是-
c=a-b;
printf("%.2lf-%.2lf=%.2lf\n",a,b,c);
}
if(ysf=='*'){ //输入的运算符是*
c=a*b;
printf("%.2lf*%.2lf=%.2lf\n",a,b,c);
}
if(ysf=='/'){ //输入的运算符是/
c=a/b;
printf("%.2lf/%.2lf=%.2lf\n",a,b,c);
}
if(ysf!='+'&&ysf!='-'&&ysf!='*'&&ysf!='/')
printf("运算符输入有误!\n");
} //该循环用于自动阅卷,请考生忽略
return 0;
}