c语言编程成绩转换switch,C语言编程习题.docx

编程习题

1.交换 2 个变量的值 。

#include

int main(int argc, char *argv[])

{

int x,y,temp;

scanf("%d%d",&x,&y);

printf("x=%d,y=%d\n",x,y);

temp=x;

x=y;

y=temp;

printf("x=%d,y=%d\n",x,y);

}

2.从键盘输入 5 个学生的成绩,计算出总成绩和平均成绩。

#include

int main(int argc, char *argv[])

{

float i,j,n,m,z;

int sum=0,avg=0;

printf(" 请输入成绩 \n");

scanf("%f%f%f%f%f",&i,&j,&n,&m,&z);

sum=i+j+n+m+z;

avg=sum/5;

printf("%.1d\n%.ld\n",sum,avg );

}

3.用 if 或 switch 语句编程,将百分制成绩转换为等级分: 90 以

上 A,80-89 为 B,70-79 为 C,60-69 为 D,其他为 F.

解法一 switch:#include

int main(int argc, char *argv[])

{ int x;

scanf("%d",&x);

switch(x/10)

{case 9:printf("A\n");break;

case 8:printf("B\n");break;

case 7:printf("C\n");break;

case 6:printf("D\n");break;

default:printf("F\n");

}

}

解法二 if:#include

int main(int argc, char *argv[])

{int x;

scanf("%d",&x);

if(x/10<=10&&x/10>=9)

printf("A\n");

else if(x/10>=8&&x/10<9)

printf("B\n");

else if(x/10>=7&&x/10<8)

printf("C\n");

else if(x/10>=6&&x/10<7)

printf("D\n");

else printf("F\n");

}

4.用 if 或 switch语句编程,要求实现:从键盘输入 1、2、3、4,

分别显示 excellent、good、pass、fail,输入其他键时显示 “error”。

解法一 switch:

#include

int main(int argc, char *argv[])

{int x;

printf(" 请输入数字 \n");

scanf("%d",&x);

switch(x)

{case 1:printf("excellent\n");break;

case 2:printf("good\n");break;

case 3:printf("pass\n");break;

case 4:printf("fail\n");break;

default:printf("error\n");

}

}

解法二 if:

#include

int main(int argc, char *argv[])

{int x;

printf(" 请输入数字 \n");

scanf("%d",&x);

if(x>0&&x<=4)

{if(x==1)

printf("excellent\n",1);

if(x==2)

printf("good\n",2);

if(x==3)

printf("pass\n",3);

if(x==4)

printf("fail\n",4);

}

else

printf("error\n");

}

5.编写一个程序,计算并输出一个整数 n 的个位数字之和。比如

n=5678,各位数字之和为 5+6+7+8,n 的值由键盘输入,可以是

任意几位数。

#include

int main(int argc, char *argv[])

{int n,sum=1,i,j=0;

printf(" 输入整数 n");

scanf("%d",&n);

for(i=0;i

{

j=n-n/10*10;n=n/10;

sum=sum+j;

if(n==0)

break;

}

printf("%d\n",sum);

}

6.编写程序实现编程输出所有的水仙花数,并统计输出个数,所谓水仙花数是指一个 3 位自

然 数,其 各位数 字的 立 方和等 于 该数 本身 。 例如 153 就 是一

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值