|
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
本帖最后由 英俊男孩建坤 于 2022-1-23 22:39 编辑
- #include <stdio.h>
- int main(int argc, char *argv[])
- {
- int num_subj;
- float in_gp, sum_gp = 0.0;
- char in_grade;
- int i;
- // argv[0] is the name of the program
- printf("This program is %s\n",argv[0]);
- num_subj = argc-1;
- printf("There are %d subjects\n",num_subj);
- for (i = 1; i <= num_subj; i++) {
- in_grade = argv[i][0]; // get the first character
- switch (in_grade) {
- case 'A': in_gp = 4.0; break;
- case 'B': in_gp = 3.0; break;
- case 'C': in_gp = 2.0; break;
- case 'D': in_gp = 1.0; break;
- case 'F': in_gp = 0.0; break;
- default: printf("Wrong grade %s\n",argv[i]);
- }
- if (argv[i][1] == '+') in_gp = in_gp + 0.3;
- if (argv[i][1] == '-') in_gp = in_gp - 0.3;
- sum_gp = sum_gp + in_gp;
- }
- printf("Your GPA for %d subjects is %5.2f\n",num_subj,sum_gp/num_subj);
- }
复制代码
这个代码存在一个很严重的bug是啥啊? 这个bug只有在输入数据的时候才会出现 |
|