早教吧 育儿知识 作业答案 考试题库 百科 知识分享

关于C语言的问题描述输入三个字符,按以下规则求其平均值。(1)如果是数字0~9,那么直接参与求值;(2)如果是其他字符,则其ASCII码参与求值。输入输入数据有多组。第一行是数据的

题目详情
关于C语言的问题
描述输入三个字符,按以下规则求其平均值。
(1)如果是数字0~9,那么直接参与求值;
(2)如果是其他字符,则其ASCII码参与求值。
输入
输入数据有多组。第一行是数据的组数T,接下来由T行,每行有3个字符,没有其他任何多余字符。
输出
对于每组输入,根据规则输出平均值。保留2位小数。
样例输入
2
123
1A3
样例输出
2.00
23.00
▼优质解答
答案和解析
#include
#define N 50
float average(char *p)
{
float s=0;
while(*p!='\0')
{
char t=*p-'0';
if(t>0&&t<9)
s+=t;
else
s+=*p;
p++;
}
return s/3.0;
}
int main()
{
char a[N][4];
int n;
printf("输入:\n");
scanf("%d",&n);
getchar();
for(int i=0;i gets(a[i]);
printf("\n输出:\n");
for(i=0;i printf("%.2f\n",average(a[i]));
return 0;
}