5.4
源代码:
#in clude
void mai n()
{
//a,b,c用来输入带比较的数据
//a,b,c用来输入带比较的数据
//max用来保存最大的数据
\n ”);
//使用条件表达式来求最大值,简便清晰
int temp ,max;
printf(”请输入三个整数,以空格分开: scan f("%d %d %d",&a,&b,&c);
temp=(a>b)? a:b;
max=(te mp> c)?te mp:c;
//输出3个数中最大的数
//输出3个数中最大的数
运行结果:
5.5源代码:
5.5
源代码:
#include
void main()
{
float x,y;
printf("请?输o?入?- ?x 的 i 值| i :"); scanf( "%f",&x);
if (x<1)
y=x;
else if (x<10)
y=2*x-1;
else y=3*x-11;
printf( "y 的 i 值| l为a: e o%6.2fn" ,y);
}
运行结果:
5.6
源代码:
#in clude void mai n()
{
float mark;
char grade;
in t c;
printf("请输入成绩");
sca nf("%f",&mark);
while(mark>100||mark<0)
{
printf("\n成绩输入有误,请重新输入\n");
scan f("%f",&mark);
}
c=mark/10;
//第一次写程序时无意间在这里多打了一个分号;程序不
//第一次写程序时无意间在这里多打了一个分号;
程序不
能正常运行
{
case 10 :
case
9 : grade='A';break;
case
8 : grade='B';break;
case
7 : grade=C;break;
case
6 : grade='D';break;
case 5:
int gw,sw,bw,qw,ww;
int gw,sw,bw,qw,ww;//求N的个十百千万位
case 4:
case 3:
case 2:
case 1:
case 0:grade='E';
}
printf("该同学的成绩为%4.1f相应的成绩等级为%c\n",mark,grade);
}
运行结果:
运行结果:
变量,所以有的变量在后面用到的时候才开始定义,用
变量,所以有的变量在后面用到的时候才开始定义,
用Visual Syudio 编译的时候,
5.7
(VS源代码粘贴到 Word时,如果保留源格式,则汉字不能全部正常显示) 源代码:
#in clude void mai n() {
int N;
因为一开始编写程序时没有考虑到所有/*在此处变量的定义过程中遇到了一个小问题,
因为一开始编写程序时没有考虑到所有
现不能正常编译,系统认为我在后面的变量都未定义,所以把变量定义到最前面才行*/
int i=0;
gw,sw,bw,qw,ww/* 这是以类在全国计算机等级三级考试中常考的数位分解类型,定义 来记录 各位的数字,表达简便,便于记忆,定义 N 来记录整数的位数,通过对整数连续除以10 ,
gw,sw,bw,qw,ww
直到
最后结果为 0,可求得整数的位数, 最后用 switch 函数根据整数的位数来确定不同的输出格 式
*/
int fact(int n);
printf(" 请输入一个正整数 "); scanf("%d",&N);
ww=N/10000;
qw=(N-ww*10000)/1000;
bw=(N-ww*10000-qw*1000)/100; sw=(N-ww*10000-qw*1000-bw*100)/10; gw=N%10;
// 求 N 的位数
for(N=N;N>0;N=N/10)
{
i++;
}
printf("N 是一个 %d 位数 \n",i); printf(" 每位数字为: ");
// 输出
// 输出 N 的各位数字和反序数
{
case 5:printf("%d,%d,%d,%d,%d",ww,qw,bw,sw,gw); printf("\n 反序数字为: "); printf("%d%d%d%d%d\n",gw,sw,bw,qw,ww); break;
case 4:printf("%d,%d,%d,%d",qw,bw,sw,gw); printf("\n 反序数字为: "); printf("%d%d%d%d\n",gw,sw,bw,qw); break;
case 3:printf("%d,%d,%d",bw,sw,gw); p