C语言,∑xy ,已知y的5个数,能连续输入5个数充当x数组,并计算出x1y1+x2y2+...+x5y5=多少吗?

要具体代码例子。谢谢... 要具体代码例子。谢谢 展开
ZJQYJG
2012-10-12 · TA获得超过506个赞
知道小有建树答主
回答量:257
采纳率:0%
帮助的人:216万
展开全部
#include <stdio.h>
/*************************************************************************
Function: 从键盘用数组接收n个整型数据处理函数
Parameter:int n:接收整型数的个数;int num[]:接收所输入的整型数
Return: 0:表示接收成功;-1表示接收失败.
*************************************************************************/
int get_n_int(int n,int num[]);

int main(void)
{
int i=0;
int len;
int sum=0;
int x_num[5];
int y_num[5]={1,2,3,4,5};
len = sizeof(x_num)/sizeof(x_num[0]);
printf("请输入%d个整数",len);
while(get_n_int(len,x_num)!=0)
{
printf("你输入的字符不合法,请重新输入%d个整数\n",len);
}
sum=0;
for(i=0; i<len; i++)
{
sum += x_num[i]*y_num[i];
}
printf("sum = %d\n",sum);
return 0;
}

int get_n_int(int n,int num[])
{
char ch;
int i=0;
int *p=num;
for(i=0; i<n; i++)
{
if(scanf("%d",(p+i))==1)
{continue;}
else
{
while(getchar()!='\n');//接收完从键盘输入的字符
return -1;//表示接收n个整数失败
}
}
//接收完规定个数的数据后再判断后面数据是否合法,后面除了空字符和回车外其余都不合法,
while((ch=getchar())!='\n')
{
if(ch != ' ')
{
//进入这个里面表示后面数据不合法,接收完后就返回接收失败标志-1
while((ch=getchar())!='\n');
return -1;
}
}
return 0;//返回函数接收数据成功标志0
}
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式