目录
一、成绩转化
二、产品信息格式化
三、输入一个字符,判断该字符是否为小写英文字母,如果是输出其小写英文字母循环排序后的第6个小写字母。
四、用switch语句实现输入一个百分制的成绩转换
五、给一个不多余5位的正整数,要求如下:①求出它是几位数②分别输出每一位数字③按逆序输出各位数字。
六、用switch语句编写一个简单的实数四则运算程序
七、总结
一、成绩转化
为啥要写这个呢?关于我实验卡这个的问题,给自己一个提醒,else后面没有括号。
代码如下:
#include
int main(void)
{
/*********Begin*********/
float x;
scanf("%f",&x);
if((x>=90.0)&&(x<=100.0)){
printf("A");
}
else if((x>=80.0)&&(x<=89.0)){
printf("B");
}
else if((x>=70.0)&&(x<=79.0)){
printf("C");
}
else if((x>=60.0)&&(x<=69.0)){
printf("D");
}
else if((x<=60.0)&&(x>=0.0)){
printf("E");
}
else
{
printf("Score is error!");
}
/*********End**********/
return 0;
}
二、产品信息格式化
这个题其实学习到了输出方式,其实老师讲过,但是只有自己实践过了,才会真的会用。所以小小记录一下吧!
代码如下:
#include
int main(void)
{
/*********Begin*********/
int n;
float p;
int m,d,y;
scanf("%d",&n);
scanf("%f",&p);
scanf("%d/%d/%d",&m,&d,&y);
printf("Enter item number:\n");
printf("Enter unit price:\n");
printf("Enter purchase date (mm/dd/yy):\n");
printf("Item Unit Purchase\n");
printf("%-9d$ %-9.2f%02d%02d%02d\n",n,p,m,d,y);
/*********End**********/
return 0;
}
三、输入一个字符,判断该字符是否为小写英文字母,如果是输出其小写英文字母循环排序后的第6个小写字母。
这个有俩方法,怕我记不了,在这浅记录一下吧。
所谓循环排序,是指a,b,c,……,x,y,z
排成一个圆圈,即z
后面是a
。
方法一:
如果是小写英文字母,将 26 个英文字母分成两部分,前面的字母变换ch+t
,最后t
个字母变换ch+t-26
。
方法二:
如果是小写英文字母,统一用公式 (ch-'a'+6)%26+'a'
处理。
代码就不展示了。相信算法是程序的灵魂,有了方法,代码很容易哒!
四、用switch语句实现输入一个百分制的成绩转换主要想试一下switch语句,关键用的少,只是我用的少,老师讲之前我都没听过这个,我鄙薄的见识,哈哈哈哈。
代码如下:
#include
int main()
{
int score;
scanf("%d",&score);
/********** Begin **********/
switch(score/10)
{
case 9:printf("A\n");break;
case 8:switch(score%10){
case 9: ;
case 8: ;
case 7: ;
case 6: ;
case 5:printf("A");break;
default:printf("B");
}break;
case 7:printf("C\n");break;
case 6:printf("D\n");break;
default:printf("E\n");
}
/********** End **********/
return 0;
}
五、给一个不多余5位的正整数,要求如下:①求出它是几位数②分别输出每一位数字③按逆序输出各位数字。
这个题比较有意思,其实就是先判断位数,再逆序输出每一位,我感觉涉及到了两个东西,所以写了一下。
代码如下:
#include
#include
int main()
{
int num,y,x1,x2,x3,x4,x5,place;
scanf("%d",&num);
place=log10((double)num)+1;//
/********** Begin **********/
y=num;
x1=y%10;
y=y/10;
x2=y%10;
y=y/10;
x3=y%10;
y=y/10;
x4=y%10;
y=y/10;
x5=y%10;
printf("%d为%d位数\n",num,place);
switch(place){
case 1:printf("顺序输出为:%d\n",x1);printf("逆序输出为:%d\n",x1);break;
case 2:printf("顺序输出为:%d,%d\n",x2,x1);printf("逆序输出为:%d,%d\n",x1,x2);break;
case 3:printf("顺序输出为:%d,%d,%d\n",x3,x2,x1);printf("逆序输出为:%d,%d,%d\n",x1,x2,x3);break;
case 4:printf("顺序输出为:%d,%d,%d,%d\n",x4,x3,x2,x1);printf("逆序输出为:%d,%d,%d,%d\n",x1,x2,x3,x4);break;
case 5:printf("顺序输出为:%d,%d,%d,%d,%d\n",x5,x4,x3,x2,x1);printf("逆序输出为:%d,%d,%d,%d,%d\n",x1,x2,x3,x4,x5);break;}
/********** End **********/
return 0;
}
六、用switch语句编写一个简单的实数四则运算程序
这个题算是彻底让我长记性了,永远分不清单引号和双引号的我,终于会用了。还有就是除法运算要考虑分母不为0.
代码不写了,我承认,不小心删除了之前的代码。
七、总结这次主要练的选择结构,感觉有点收获。希望下次进步吧,好了,开始享受我愉快的周末啦!要不然,大学和高中又有什么区别呢!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)