两数之商输出-- 注意,除数不可为零的检测与提示。)
//参考程序
#include
void main()
{ float op1,op2; int sign;
printf("请输入两个操作数: a b\n");
scanf("%f%f",&op1,&op2);
printf("请选择进行的运算(1,2,3,4): \n");
printf("1: +\n");
printf("2: -\n");
printf("3: *\n");
printf("4: /\n");
printf("您选择: ");
scanf("%d",&sign);
switch(sign)
{ case 1: printf("\n%f+%f=%f\n",op1,op2,op1+op2); break;
case 2: printf("\n%f-%f=%f\n",op1,op2,op1-op2); break;
case 3: printf("\n%f*%f=%f\n",op1,op2,op1*op2); break;
case 4: if(op2) {printf("\n%f/%f=%f\n",op1,op2,op1/op2); break; }
else { printf("\n除数不能为0\n"); break;}
default: printf("\n您选择的运算不对\n");
}
}
习题五
5.1填空题
5.1.1 至少执行一次循环体的循环语句是do while 。
5.1.2 下面程序段是从键盘输入的字符中统计数字字符的个数,用换行符结束循环。请填
填空。
int n=0,c;
c=getchar();
while( c!=?\n?)
{ if( c>=?0?&&c<=?9?) n++;
c=getchar(); }
5.1.3 在执行以下程序时,如果键盘上输入:ABCdef,则输出为abcDEF 。
#include
{ char ch;
while((ch=getchar())!=?\n?)
{ if(ch>=?A?&&ch<=?Z?) ch=ch+32;
else if(ch>=?a?&&ch<=?z?) ch=ch-32;
printf(“\n”); }
5.1.4 下面程序的功能是用辗转相除法求两个正整数的最大公约数,请填空。
#include
void main()
{ int r,m,n;
scanf(“%d,%d”,&m,&n);
if(mr=m%n;
while(r) { m=n; n=r; r= m%n ;}
printf(“%d\n”,n);
}
5.1.5 当运行以下程序时,从键盘输入“right? ”,则下面程序的运行结果是sjhiu 。