C语言适用for结构输入某厂每月的产量并计算每月产量占全年总产量的比例使用while结构输出每月比例

Python012

C语言适用for结构输入某厂每月的产量并计算每月产量占全年总产量的比例使用while结构输出每月比例,第1张

#include <stdio.h>#define MON 12 int main(){ int ifloat mOutputs[MON]float sumfloat dTempdTemp = 0sum = 0for(i = 0i <MONi++){ printf("请输入%d月份产量:", (i + 1))scanf("%f", &dTemp)mOutputs[i] = dTempsum += dTemp} i = 0printf("总产量:%f\n", sum)while(i <MON){ printf("%d 月份产量 %f%%\n", (i + 1), ((mOutputs[i] / sum) * 100))i++} }

f 函数的作用是 传人两个int* 型的指针

并且在第一个指针s指向的元素小于第二个指针t指向的元素时,交换两个指针的指向但是不在内存中交换元素,即s指向p先前的元素,p指向s先前指向的元素,且把两者中最大的元素的指针作为返回值。

所以在Main函数中,3的指针作为第1个参数,5的指针作为第2个参数,因为3<5,所以执行交换p和q,最大值指针即为p指向5,所以r也指向5,q指向3 。即i=3,j=5,*p=5,*q=3,*r=5

scanf("%6f",&x) 表示 输入的 数是 float 型 浮点数,数字符号 占6个字符的位置。

%6.3f 用于输出格式,6个字符的位置,小数点下3位。用 scanf("%6.3f",&x) 语句可以执行。

其实 用 scanf("%f",&x) 更方便灵活,不限定 整数位小数位,不限定长度。

----

只有特殊情况才用 %6f 格式,例如:

float x,y

scanf("%6f%6f",&x,&y) // 特殊情况,输入数据 为 12.34512.345 没有空白分隔

printf("%f %f\n",x,y)