#include<stdio.h>
#include<string.h>
int main(){
char *str,*p,grade; //因为使用了char型指针,HDU提交是总是Runtime Error(ACCESS_VIOLATION),
int sum,num,flag; //后来改用char型数组就好用了,神奇!
flag=0;
while(gets(str)!=NULL){
sum=0;
num=0;
p=str;
while(p<str+strlen(str)){
grade=*p;
switch(grade){
case 'A':sum+=4;num++;break;
case 'B':sum+=3;num++;break;
case 'C':sum+=2;num++;break;
case 'D':sum+=1;num++;break;
case 'F':num++;break;
case ' ':break;
default:flag=1;
}
if(flag==1)
break;
else
p++;
}
if(flag==1){
printf("Unknown letter grade in input\n");
flag=0;
}
else if(strlen(str)>0){
printf("%.2f\n",sum/(num*1.0));
}
str=(char *)malloc(20*sizeof(char));
}
}
下面这个是正确的代码
#include<stdio.h>
#include<string.h>
int main(){
char str[30];
int sum,num,flag,i;
flag=0;
while(gets(str)!=NULL){
sum=0;
i=0;
num=0;
while(i<strlen(str)){
switch(str[i]){
case 'A':sum+=4;num++;break;
case 'B':sum+=3;num++;break;
case 'C':sum+=2;num++;break;
case 'D':sum+=1;num++;break;
case 'F':num++;break;
case ' ':break;
default:flag=1;
}
if(flag==1)
break;
else
i++;
}
if(flag==1){
printf("Unknown letter grade in input\n");
flag=0;
}
else if(strlen(str)>0){
printf("%.2f\n",sum/(num*1.0));
}
}
}
相关推荐
压缩包内的文件名“朝花夕拾——hdu”可能表示这是一系列关于HDU题目的代码记录,"朝花夕拾"是一个成语,意味着回忆过去的事情,这里可能是暗示这些代码是作者在过去解决HDU题目时留下的,现在整理出来分享或复习。...
【标题】"HDU_2010.rar"是一个压缩包文件,其中包含了与"HDU 2010"相关的资源,特别是针对"HDU ACM20"比赛的编程题目。"hdu 2010"和"hdu 20"可能是该比赛的不同简称或分类,而"hdu acm20"可能指的是该赛事的第20届...
【标题】"HDU题目java实现"所涉及的知识点主要集中在使用Java编程语言解决杭州电子科技大学(HDU)在线评测系统中的算法问题。HDU是一个知名的在线编程竞赛平台,它提供了大量的算法题目供参赛者练习和提交解决方案...
### hdu1250高精度加法 #### 背景介绍 在计算机科学与编程竞赛中,处理大整数运算(特别是加法、减法、乘法等)是常见的需求之一。当数字的位数超过了标准数据类型(如`int`、`long`等)所能表示的最大值时,就需要...
ACM HDU 题目分类 ACM HDU 题目分类是指对 HDU 在线判题系统中题目的分类,总结了大约十来个分类。这些分类将有助于编程选手更好地理解和解决问题。 DP 问题 DP(Dynamic Programming,动态规划)是一种非常重要...
本题是HDU4802题,名为"GPA",是一道关于计算学生GPA的编程题目。题目要求根据学生所修课程的学分(ci)和成绩(si)来计算学生的GPA。成绩用A、B、C、D、F以及特殊的P、N表示,其中P代表通过,N代表不通过。对于...
总的来说,"HDU DP动态规划"是一个关于使用动态规划解决HDU平台上某一题目的主题,它要求掌握动态规划的基本概念、方法,并能灵活应用到实际问题中,同时可能涉及到文件交互和调试,以完成问题的求解。
【标题】"hdu.rar_HDU 1089.cpp_OJ题求和_hdu_horsekw5_杭电obj" 提供的信息是关于一个压缩文件,其中包含了一个名为 "HDU 1089.cpp" 的源代码文件,这个文件是为了解决杭州电子科技大学(Hangzhou Dianzi ...
HDU1059的代码
hdu1001解题报告
hdu 1574 passed sorce
【标题】:杭电ACMhdu1163 【描述】:这是一道源自杭州电子科技大学(Hangzhou Dianzi University,简称HDU)的ACM编程竞赛题目,编号为1163。这类问题通常需要参赛者利用计算机编程解决数学、逻辑或算法上的挑战,...
hdu2101AC代码
【标签】"ACM题解 HDU"意味着这是一个关于如何解答HDU ACM题目的资源,可能包含了解题思路、算法解析、代码实现等方面的内容。这样的资料对于准备ACM比赛的选手或者希望提升算法能力的程序员来说非常有价值。 在...
本例中的代码使用了递归的方式。 #### 三、代码分析 ##### 1. 数据结构定义 ```c #include #define N 101 char graph[N][N]; ``` - **`#include<stdio.h>`**:引入标准输入输出头文件。 - **`#define N 101`**:...
hdu 5007 Post Robot 字符串枚举。 暴力一下就可以了。
HDU是杭州电子科技大学(Hangzhou Dianzi University)举办的一个在线编程竞赛平台,全称为HDU Online Judge。ACM是国际大学生程序设计竞赛(International Collegiate Programming Contest)的缩写,是一个全球性的...
【标题】"hdu_acm_1084.rar_ACM_HDU10_acm10_hdu_hdu 1084" 提供的是一个关于杭电(HDU)ACM竞赛第1084题的解决方案。该题目可能是在编程竞赛中常见的算法问题,而ACM(国际大学生程序设计竞赛)是全球知名的编程...
HDU(Hangzhou Dianzi University)是国内外知名的在线编程竞赛平台,主要服务于ACM/ICPC(国际大学生程序设计竞赛)以及相关的算法训练。"HDU最全ac代码"这个压缩包很可能是包含了在HDU平台上解题通过的完整源代码...
hdu 1166线段树代码