1. printf函数中用到格式符%5s,其中数字5表示输出的字符串占用5列。如果字符串长度大于5,则输出时( B )。
A.从左起输出该字符串,右补空格
B.按原字符长从左向右全部输出
C.右对齐输出该字符串,左补空格
D.输出错误信息
2.已有定义“int a=-2; ”和输出语句“printf(“%8x”,a);”,以下正确的叙述是( D )。
A.整形变量的输出格式符只有%d一种
B.%x是格式符的一种,它可以适用于任何一种类型的数据
C.%x是格式符的一种,其变量的值按十六进制输出,但%8x是错误的
D.%8x不是错误的格式符,其中数字8规定了输出字段的宽度
注意:为进一步理解题目用意,请执行以下程序,并分析结果:
#include
void main()
{
int a=22;
printf("%8x\n",a);
}
3.已有如下定义和输出语句。
int a1,a2;
char c1,c2;
scanf(“%d%c%d%c”,&a1,&c1,&a2,&c2);
若要求a1、a2、c1、c2的值分别为10、20、A、B,当从第一列开始输入数据时,正确的数据输入方式是( A )。
A.10A20B B.10 A 20 B
C.10 A20 D.10A20 B
4.已有定义“int x; float y;”且执行“scanf(“%3d%f”,&x,&y);”语句,若从第一列开始输入数据12345678,则x的值为( B )。
A.12345 B.123 C.45 D.345
1
#include<stdio.h>
void main()
{
putchar(getchar()-32);
}
若运行时从键盘输入小写字母a,写出输出结果。
运行结果为A
2.
#include<stdio.h>
void main()
{
int i=-2;
float x=457.898;
printf("i=%5d,%o,%3x,%u,%c\n",i,i,i,i,i+'E');
printf("x=%10f,%10.2f,%-10.4f,%.2f,%f\n",x,x,x,x,x);
}
说明:在VisualC++6.0的开发环境中,int型数据默认为32位二进制数
运行结果为:
i=-2,37777777776,fffffffe,4294967294,C
x=457.898010,457.90,457.8980,457.90,457.898010
1. 输入一个3位整数,将它反向输出。例如,输出“127”,输出应为“721”。
#include<stdio.h>
int main()
{
int a,b;
printf("输入一个3位数");
scanf("%d", &a );
b=(a%10)*100+(a/10%10)*10+ a/100 ;
printf("反序为:%d\n",b);
}
2. 下面的程序是求y= 的值,按四舍五入保留6位小数输出
#include<stdio.h>
#include<math.h>
void main()
{
doublex,y;
printf(“输入x=”);
scanf(“%lf”,&x);
y= sqrt (log( ));
printf(“y=% 0.6lf \n”,y);
}
1. 从键盘输入一个小写字母,输出其对应的大写字母。例如,输入“a”,输出字母“A”
#include<stdio.h>
void main()
{
char c;
scanf(“%c”,&c);
c=c-32;
printf(“%c\n”,c);
}
2. 已知三角形的三条边,求该三角形的面积。例如,三角形的边长为a、b、c,则面积
,其中
#include<stdio.h>
#include<math.h>
int main()
{
float a,b,c,s,l;
printf("输入三角形的三条边a,b,c:");
scanf("%f,%f,%f",&a,&b,&c);
l=(a+b+c)/2;
s= sqrt(l*(l-a)*(l-b)*(l-c));
printf("三角形的面积=%f\n",s);
}