}
24. 若依次输入字符AB.在以下while语句执行后ch的值是______.0 while(ch=getchar()=='A');
注:因为关系运算符的优先级大于赋值运算符,第一遍:先运算getchar()=='A'?又因为输入A,显然其结果为1.再将1赋值给ch,所以ch的值应该是1; 第二遍: 先运算getchar()=='A'?又因为输入B,显然其结果为0.再将0赋值给ch,所以ch的值应该是0;第三遍: 先运算getchar()=='A'?又因为输入回车,显然其结果为0.再将0赋值给ch,所以ch的值应该是0.
程序设计题(56道)
1./*------------------------------------------------ 【程序设计】
--------------------------------------------------
功能:编写函数fun计算下列分段函数的值: x^2+x+6 x<0且x≠-3
f(x)= x^2-5x+6 0≤x<10且x≠2及x≠3 x^2-x-1 其它
------------------------------------------------*/
#include
float fun(float x)
{
/**********Begin**********/
/********** End **********/ }
main() {
float x,f;
printf(\ scanf(\ f=fun(x);
26
printf(\ bky(); }
void bky() {
FILE *IN,*OUT; int n; float i; float o;
IN=fopen(\ if(IN==NULL)
{
printf(\ }
OUT=fopen(\ if(OUT==NULL) {
printf(\ }
for(n=0;n<10;n++) {
fscanf(IN,\ o=fun(i);
fprintf(OUT,\ }
fclose(IN); fclose(OUT); }
2./*------------------------------------------------ 【程序设计】
--------------------------------------------------
功能:从键盘上输入任意实数x,求出其所对应的函数值。 z=(x-4)的二次幂(x>4) z=x的八次幂(x>-4)
z=z=4/(x*(x+1))(x>-10) z=|x|+20(其他)
------------------------------------------------*/
#include
27
#include
float y(float x) {
/**********Begin**********/
/********** End **********/ }
main()
{
float x;
scanf(\ printf(\ bky(); }
void bky() {
FILE *IN,*OUT; int n;
float i; float o;
IN=fopen(\ if(IN==NULL) {
printf(\ }
OUT=fopen(\ if(OUT==NULL) {
printf(\ }
for(n=0;n<10;n++) {
fscanf(IN,\ o=y(i);
fprintf(OUT,\
28
}
fclose(IN); fclose(OUT); }
3./*------------------------------------------------ 【程序设计】
--------------------------------------------------
功能:编写函数判断一个整数能否同时被3和5整除,若能 则返回值为1,否则为0。调用该函数求出15~300之 间能同时被3和5整除的数的个数。
------------------------------------------------*/
#include
int sum(int n)
{
/**********Begin**********/
/********** End **********/ }
main() {
int i,s=0;
for(i=15;i<=300;i++) if(sum(i)==1) s=s+1; printf(\ bky(); }
void bky() {
FILE *IN,*OUT; int n;
int i[12]; int o;
29
IN=fopen(\ if(IN==NULL) {
printf(\ }
OUT=fopen(\ if(OUT==NULL)
{
printf(\ }
for(n=0;n<5;n++) {
fscanf(IN,\ }
for(n=0;n<5;n++) {
o = sum(i[n]);
fprintf(OUT,\ }
fclose(IN); fclose(OUT);
}
4./*------------------------------------------------ 【程序设计】
--------------------------------------------------
功能:从键盘上输入任意实数,求出其所对应的函数值。 z=e的x次幂(x>10) z=log(x+3) (x>-3) z=sin(x)/((cos(x)+4)
------------------------------------------------*/
#include
double y(float x)
{
/**********Begin**********/
30