在C++中利用循环语句给数组赋值,一次输入一个数,一直全部输完。程序如下,哪里错了

2024-12-24 12:22:02
推荐回答(3个)
回答1:

c++输出格式
一:标准输入函数cin
不知道说它是个函数对还是不对,它是代表标准的输入设备--键盘。他是属于流的,他的用法和流的用法是一样的。也就是:cin>>变量;

小小的说明一下,输入多个变量可以写在一行,如:cin>>x>>y>>z;
这样写不是不允许,而是不好看,如果是不同的变量类型,那就更是没头没脑了。除了你,人家是不知道该输入什么的,所以,一般在输入语句的前面,我们一般都
要做一个提示,请输入×××,让人家心里有个底,知道这个变量是做什么的。
另外,这个函数是不用带地址符号"&"的,也不用写明变量类型,千万不要跟scanf混淆。当然他就也不检查变量输入是否合法。如:

int i;
cout<<"please input a number:"
cin>>i;
cout<<"i="<
如果你输入的是一个字符如'a'那么他也不检查,但你输出的结果不是正确的,这要是手工进行检查。当然他也跟scanf一样,如果在循环内部输入不合法的变量值,那么也将陷入死循环。如下:

/*一个输入不合法变量陷入死循环的例子*/
#include
main()
{
int i;
while(i!=-1)
{
cout<<"i="
cin>>i; /*请输入不是一个字符如'a'试试*/
cout<}
}

回答2:

{int i;
float U[10],I[10];
for(i=0;i<10;i++)
printf("输入电压:\n",U[i+1]); //这里又不是输入也不需要输出 你加个U[i+1]干嘛?而且此时里面根本没初始化都是乱码
scanf("%f",&U[i+1]);
for(i=0;i<10;i++)
printf("输入电流:\n"I[i+1]); //同上
scanf("%f",&I[i+1]);
printf("电压=%f",); //这里要输入的参数 你这%f哪找都不知道。。
printf("电流=%f",I[i+1]); //上面错了为什么这里对了 你完全没有理解么
}
另外循环也错了。数组也越界了。。汗
修改如下
{int i;
float U[10],I[10];
for(i=0;i<10;i++)

printf("输入电压:\n");
scanf("%f",&U[i]);

for(i=0;i<10;i++)

printf("输入电流:\n");
scanf("%f",&I[i]);

for(i=0;i<10;i++)

printf("电压=%f",U[i]);
printf("电流=%f",I[i]);

}

回答3:

c++ 的数组下标是从0开始的,不是从1开始。最后的一个后造成数组越界。