|
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
本帖最后由 xiaoyu12311 于 2020-2-27 09:55 编辑
自己写了一个很简单的代码,功能是按回车就求输入的全部数字平均数,但是运行以后总是忽略第一个输入的数,是哪里要加什么吗?
- #include <stdio.h>
- int main ()
- {
- int a[100],j=0,i;
- printf("输入数 ! \n");
- for (i=0;getchar() != '\n';i++)
- {
- scanf("%d",&a[i]);
- j=j+a[i];
- }
- printf("%d %f \n",i,(float)j);
- if (i==0)
- {
- printf ("0 个数的平均数是 0 !");
- }
- if (i!=0)
- {
- printf ("%d 个数的平均数是 %.2f !",i,(float)(j/i));
- }
-
- return 0;
- }
复制代码
scanf 不能和 getchar 混用
- #include <stdio.h>
- int main()
- {
- int a[100], i;
- float j = 0;
- char c = 'a';
- printf("输入数 ! \n");
- for (i = 0;;)
- {
- c = getchar();
- if (c == ' ')
- continue;
- if (c == '\n')
- break;
- a[i] = c - '0';
- j = j + a[i];
- i++;
- }
- printf("%d %f \n", i, j);
- if (i == 0)
- {
- printf("0 个数的平均数是 0 !");
- }
- if (i != 0)
- {
- printf("%d 个数的平均数是 %.2f !", i, (j / i));
- }
- return 0;
- }
复制代码
|
|