C语言 ACM#include #include int main(){int i=0,c=1,d=0;char str
来源:学生作业帮 编辑:神马作文网作业帮 分类:综合作业 时间:2024/11/12 08:33:15
C语言 ACM
#include
#include
int main(){
int i=0,c=1,d=0;char strl[50];float sum=0;
while(gets(strl))
{
while(strl[i]!='\0')
{
if(strl[i]=='A'){
sum+=4; d++; i++;
}
if(strl[i]=='B'){
sum+=3; d++; i++;
}
if(strl[i]=='C'){
sum+=2; d++; i++;
}
if(strl[i]=='D'){
sum+=1; d++; i++;
}
if(strl[i]=='F'||strl[i]==' '){
sum+=0; d++; i++;
}
if(strl[i]70)
{
printf("Unknown\n");
c=0; i++; break;
}
}
if(c!=0){
printf("%.2f\n",sum/d); sum=0; d=0;
}
}
}
每门课的成绩分为A、B、C、D、F五个等级,为了计算平均绩点,规定A、B、C、D、F分别代表4分、3分、2分、1分、0分.
输入格式
有多组测试样例.每组输入数据占一行,由一个或多个大写字母组成,字母之间由空格分隔.
输出
每组输出结果占一行.如果输入的大写字母都在集合{A,B,C,D,F}中,则输出对应的平均绩点,结果保留两位小数.否则,输出“Unknown”.
样例输入
A B C D F
B F F C C A
D C E F
样例输出
2.00
1.83
Unknown
请问我的程序哪里出错
#include
#include
int main(){
int i=0,c=1,d=0;char strl[50];float sum=0;
while(gets(strl))
{
while(strl[i]!='\0')
{
if(strl[i]=='A'){
sum+=4; d++; i++;
}
if(strl[i]=='B'){
sum+=3; d++; i++;
}
if(strl[i]=='C'){
sum+=2; d++; i++;
}
if(strl[i]=='D'){
sum+=1; d++; i++;
}
if(strl[i]=='F'||strl[i]==' '){
sum+=0; d++; i++;
}
if(strl[i]70)
{
printf("Unknown\n");
c=0; i++; break;
}
}
if(c!=0){
printf("%.2f\n",sum/d); sum=0; d=0;
}
}
}
每门课的成绩分为A、B、C、D、F五个等级,为了计算平均绩点,规定A、B、C、D、F分别代表4分、3分、2分、1分、0分.
输入格式
有多组测试样例.每组输入数据占一行,由一个或多个大写字母组成,字母之间由空格分隔.
输出
每组输出结果占一行.如果输入的大写字母都在集合{A,B,C,D,F}中,则输出对应的平均绩点,结果保留两位小数.否则,输出“Unknown”.
样例输入
A B C D F
B F F C C A
D C E F
样例输出
2.00
1.83
Unknown
请问我的程序哪里出错
/*A B C D F2.00B F F C C A1.83D C E FUnknown^ZPress any key to continue*/#include <stdio.h>
int main(){
int i,flag,d;
char str[50];
float sum;
while(gets(str) != NULL) {
i = 0;
d = 0;
sum = 0;
flag = 0;
while(str[i] != '\0') {
switch(str[i]) {
case 'A' : sum += 4; break;
case 'B' : sum += 3; break;
case 'C' : sum += 2; break;
case 'D' : sum += 1; break;
case 'F' : break;
case ' ' : --d; break;
default : flag = 1; printf("Unknown\n"); break;
}
if(flag == 1) break;
d++; i++;
}
if(flag == 0) {
if(d != 0) printf("%.2f\n",sum/d);
else printf("0.00\n");
}
}
return 0;
}
int main(){
int i,flag,d;
char str[50];
float sum;
while(gets(str) != NULL) {
i = 0;
d = 0;
sum = 0;
flag = 0;
while(str[i] != '\0') {
switch(str[i]) {
case 'A' : sum += 4; break;
case 'B' : sum += 3; break;
case 'C' : sum += 2; break;
case 'D' : sum += 1; break;
case 'F' : break;
case ' ' : --d; break;
default : flag = 1; printf("Unknown\n"); break;
}
if(flag == 1) break;
d++; i++;
}
if(flag == 0) {
if(d != 0) printf("%.2f\n",sum/d);
else printf("0.00\n");
}
}
return 0;
}
C语言 ACM#include #include int main(){int i=0,c=1,d=0;char str
c 语言一道小问题#include int main(){char str[ ]= "Hello";char *p=st
一道C语言题目#include#define N 80main(){char str[N],ch;int i;print
#include void main() { char k='c',h='d'; int i=1,j=2; k+=i++
#include int main(){int a,b,c; int i = 0; for( c = 1; c = 33
#include main() {char c; int v0=1,v1=0,v2=0; do{switch(c=get
C语言从1加到100#include main(){int i,sum;i=1,sum=0;while(i++
各步骤的含义#include #define N 20int fun ( char *str ){int i=0,j=0
填写注释语句#include main() { char string[81]; int i,num=0,word=0;
求pi问题c语言#include#includevoid main(){ int a, b ; double pi=0;
#include main(){char s[]="012xyz\08s34f4w2"; int i,n=0; for(
在C语言中.#include int main() {inta=17 ; intb=5; printf("%d% % %