float[] col1 = new float[8]
float[] col2 ={1,2,3,4}
col2.CopyTo(col1, 0)
col2.CopyTo(col1, 4)
Array.Sort(col1)//得到的是 1,1,2,2,3,3,4,4
System.Random rnd = new System.Random()
var col3 = col1.OrderBy(r =>rnd.Next())//得到的是随机排序
foreach (var f in col1)
{
Console.WriteLine(f)
}
int n = 5float[][] x = new float[n][]
float[][] y = new float[n][]
float[][] z = new float[n][]
//交错数组元素对应相加
for (int i = 0 i < n i++)
{
for (int j = 0 j < x[i].Length j++)
{
z[i][j] = z[i][j] + y[i][j]
}
}
这个不是float类型定义的问题,而是类型转换问题,你定义a数组为float类型,而输出格式%d是整形,只要你把输出格式改为 %f 就可以了,或者直接将a[1]强制转换为整形,只取整数部分进行输出:即,你的代码应该改为如下:
#include <stdio.h>
int main()
{
float a[10] = {1.1, 2.2, 3.3}
printf("%f %d\n", a[1], (int)(a[1]))/**按照浮点型输出,或者强制转换为整形取整数部分输出**/
return 0
}
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)