有如下赋值语句,结果为"大家好"的表达式是______。a="你好"b="大家"
A.b+LEFT(a,1)
B.b+RIGHT(a,1)
C.b+LEFT(a,2)
D.b+RIGHT(a,2)
A.b+LEFT(a,1)
B.b+RIGHT(a,1)
C.b+LEFT(a,2)
D.b+RIGHT(a,2)
A.a=a+b=b++
B.w%(int)(a+b)
C.(c+w)%(int)a
D.w=a==b
编程设计一个简单的计算器程序,要求用户从键盘输入如下形式的表达式:
操作数1 运算符op 操作数2
然后,计算并输出表达式的值
指定的运算符为:
加()
减(-)
乘(*)
除(/)
代码如下,所给程序是否存在错误,若有,找出错误所在并改正。
A、default分支缺少break语句
B、第20行语句有错误,改成:
if (data2=0) printf("Division by zero!\n");
else printf("%f/%f = %f\n", data1, data2, data1/data2);
C、没有错误
D、第20行语句有错误,改成:
if (fabs(data2)<=eps) printf("division by zero!\n");
else printf("%f/%f = %f\n", data1, data2, data1/data2);
同时,第1行语句下方应加入
#include
#define EPS 1e-6
最简单的C程序设计
1.实验目的
①掌握C语言中使用最多的一种语句——赋值语句的使用方法。
②掌握各种类型数据的输入输出的方法,能正确使用各种格式转换符。
2.实验内容和步骤
掌握各种格式转换符的正确使用方法。
①输入程序
main()
{int a,b;
float d,e;
char c1,c2;
double f,g;
longm,n;
unsigned int p,q;
a=16;b=62;
c1='a';c2='b';
d=3.56;e=-6.87;
f=3157.890121;g=0.123456789;
m=50000:n=-60000;
p=32768;q=40000;
printf("a=%d,b=%d\nc1=%c,c2=%c\nd=%6.2f,e=%6.2f\n",a,b,c1,c2,d,e);
printf("f=%15.6f,g=%15.12f\nm=%1d,n=%ld\np=%u,q=%u\n",f,g,m,n,p,q);
}
②运行此程序并分析结果。
③在此基础上,修改程序的第8~13行。
a=b1;b=b2;
c1=a;c2=b;
f=3157.890121;g=0.123456789;
d=f; e=g;
p=a=m=50000;q=b=n=-60000;
运行程序,分析结果。
④改用scanf函数输入数据而不用赋值语句,scanf函数如下。
scanf("%d,%d,%c,%c,%f,%f,%lf,%lf,%ld,%ld,%u,%u"
&a,&b,&c1,&c2,&d,&e,&f'&g,&m,&n,&p,&q);
输入的数据如下。
61,62,a,b,3.56,-6.87,3157.890121,0.123456789,50000,-60000,37678,40000
(说明:ld格式符用于输入long型数据)分析运行结果。
⑤在上面的基础上将printf语句改为
printf("a=%d,b=%dknc1=%c,c2=%c\nd=%15.6f,e=%15.12f\n",a,b,c1,c2,d,e);
printf("f=%f,g=%f\nm=%d,n=%d,p=%d,q=%d\n",f,g,m,n,p,q);
运行程序。
⑥将p、q改用%o格式符输出。
⑦将scanf函数中的%lf和%ld改为%f和%d,运行程序并观察分析结果。
3编写程序
①有下面的程序
main()
{
int a;
float b,c;
scanf("%2d%3f%4t",&a,&b,&c);
printf("\na=%d,b=%f,c=%f\n",a,b,c);
}
若从键盘上输入9876543210并回车,则程序的输出结果是______。
②下面程序的输出结果是______。
main()
{int x=5,y=3;
printf("%d\n",y=x/y);
}
③以下程序的输出结果是______。
main()
{
int a=2,b=5;
printf("a=%%d,b=%%d\n",a,b);
}
④以下程序的输出结果是______。
#include"stdio.h"
main()
{
double x=123.123789;
printf("%8.6f,%8.3f,%14.8f\n",x,x,x);
}
⑤以下printf语句中的"-"的作用是______,该程序的输出结果是______。
#include<stdio.h>
main()
{ int x=12;
double a=3.1415926;
printf("%6d##\n",x);
printf("%-6d##\n",x);
printf("%14.10f##\n",a);
printf("%-14.10f##\n",a);
}
⑥以下程序的输出结果是______。
#include<stdio.h>
main()
{int a=325;
double x=3.1415926;
printf("a=%+0.6d x=%+e\n",a,x);
}
⑦编写程序,让用户输入两个整数,输出它们的商和余数。
⑧编程:设圆半径r=1.5,求圆周长、圆面积。用scanf输入数据,输出计算结果,输出开寸要求有文字说明,取小数点后2位数字。
⑨输入一个华氏温度,要求输出摄氏温度。公式为c=5/9(F-32)。输出要有文字说明,取2位小数。
A.Fun(int y,double m);
B.k=Fun(10,12.5);
C.k=void Fun(a,b);
D.Fun(a,b);
若有定义语句:inta=3,b=2,c=1;以下选项中错误的赋值表达式是
A.a=b=c+1;
B.a=(b=4)=3;
C.a=(b=4)+c;
D.a=1+(b=c=4);
若有如下程序段,则与其功能等价的赋值语句是( )。
int s,a,b,c;
for(b=1;b<=c;b++) s=s+1;
(A)s=a+b; (B)s=a+c; (C)s=s+c; (D)s=b+c;
A.p=&a;
B.p=data.a;
C.p=&data.a;
D.*p=data.a;
【题目描述】
下面程序的输出结果是_________。
【我提交的答案】:22
【参考答案分析】:32【解析】while(表达式)的功能是:首先计算表达式的值,若为真,则执行循环体语句,执行完毕,再计算表达式的值,若仍为真,则重复执行循环体语句,直到表达式的值为假,结束while语句的执行,继续执行while语句后面的语句;i=0时满足循环条件,也满足if的条件,执行语句得i=11,a=11,第2次循环不满足if的条件,执行i。i=10,执行i =11;a -7后,得i=21,a=32,不满足i<20,循环结束。
【我的疑问】(如下,请求专家帮助解答)