c - 最小化代码并获得相同的输出
问题描述
有没有办法缩短这段代码?我的意思是不要写这么多行;我可以写几行并获得相同的输出吗?
#include<stdio.h>
int main()
{
int input;
printf("Enter Input \n");
scanf("%d",&input);
switch(input)
{
case 1:
printf("a");
break;
case 2:
printf("b");
break;
case 3:
printf("c");
break;
case 4:
printf("d");
break;
case 5:
printf("e");
break;
case 6:
printf("f");
break;
case 7:
printf("g");
break;
case 8:
printf("h");
break;
case 9:
printf("i");
break;
case 10:
printf("j");
break;
default:
printf("Invalid Input");
}
return 0;
}
解决方案
好吧,如果您正在寻找替代方案,则可以使用数组。就像是
char arr [ ] = "abcdefghij";
然后,你可以做类似的事情
if ( input >= 1 && input <= 10)
printf("%c", arr[input -1]);
else
puts ("Invalid");
推荐阅读
- javascript - 如何将 javascript 添加到 elementor 小部件或编辑现有的 elementor 小部件?
- php - 日期操作 PHP 和 SQL,如果我减去月份,则过去一年
- ios - Flutter IOS FCM推送通知未进入通知栏
- c# - 为什么在 ASP.NET Core 中使用 .Result 不会产生死锁?
- keras - 数据增强给我带来了更糟糕的结果
- c# - 消息在 ActiveMQ 中入队和出队时如何编写自定义日志
- plugins - 使用 jython 的 imageJ 插件:如何在脚本中调用它?
- javascript - 如何将新的计算数组对象添加到现有数组
- c# - 如何为实体框架编写共享方法
- vue.js - vuetify 网格样式在构建后消失